Merge pull request #49 from shivenmian/u/shivenmian/teachfix

fix: don't add code to skill if wrong + only add Python code
pull/50/head
killian 11 months ago committed by GitHub
commit 87d9ec8e1f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -22,7 +22,7 @@ PIPER_VOICE_NAME="en_US-lessac-medium.onnx"
# If SERVER_START, this is where we'll serve the server.
# If CLIENT_START, this is where the client expects the server to be.
SERVER_URL=ws://localhost:8000/
SERVER_URL=ws://0.0.0.0:8000/
SERVER_START=True
CLIENT_START=True

@ -82,16 +82,20 @@ def teach():
elif step.strip() == "":
continue
logger.info(f"Performing step: {step}")
root.update()
chunk_code = ""
interpreter.computer.languages = [l for l in interpreter.computer.languages if l.name.lower() == "python"]
interpreter.force_task_completion = True
for chunk in interpreter.chat(step, stream=True, display=False):
if "format" in chunk and chunk["format"] == "execution":
content = chunk["content"]
language = content["format"]
code = content["content"]
chunk_code += code
# interpreter.computer.run(code, language)
if chunk["role"] == "computer" and "start" not in chunk and "end" not in chunk:
chunk_type = chunk["type"]
chunk_content = chunk["content"]
chunk_format = chunk["format"]
if chunk_type == "confirmation" and chunk_format == "execution" and chunk_content["type"] == "code" and chunk_content["format"] == "python":
chunk_code += chunk_content["content"]
elif chunk_type == "console" and chunk_format == "output" and ("Traceback" in chunk_content or "Error" in chunk_content or "Exception" in chunk_content):
# this was an error so we disregard chunk_code
chunk_code = ""
time.sleep(0.05)
accumulator.accumulate(chunk)

Loading…
Cancel
Save