From 3f86b2a33d289ec8f530402303802ffb415354a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emil=20Ahlb=C3=A4ck?= Date: Sun, 18 Jun 2023 16:26:03 +0200 Subject: [PATCH] fix_code --- gpt_engineer/steps.py | 15 ++++++++++++++- identity/fix_code | 2 ++ 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 identity/fix_code diff --git a/gpt_engineer/steps.py b/gpt_engineer/steps.py index 7e64443..fa7de4f 100644 --- a/gpt_engineer/steps.py +++ b/gpt_engineer/steps.py @@ -193,10 +193,23 @@ def use_feedback(ai: AI, dbs: DBs): return messages +def fix_code(ai: AI, dbs: DBs): + codemem = json.loads(dbs.logs[gen_code.__name__])[-1]["content"] + messages = [ + ai.fsystem(setup_sys_prompt(dbs)), + ai.fuser(f"Instructions: {dbs.input['main_prompt']}"), + ai.fuser(codemem), + ai.fsystem(dbs.identity["fixer"]), + ] + messages = ai.next(messages, "Please fix any errors in the code above.") + to_files(messages[-1]["content"], dbs.workspace) + return messages + + # Different configs of what steps to run STEPS = { "default": [gen_spec, gen_unit_tests, gen_code, gen_entrypoint, execute_entrypoint], - "benchmark": [gen_spec, gen_unit_tests, gen_code, gen_entrypoint], + "benchmark": [gen_spec, gen_unit_tests, gen_code, fix_code, gen_entrypoint], "simple": [simple_gen, gen_entrypoint, execute_entrypoint], "clarify": [clarify, gen_clarified_code, gen_entrypoint, execute_entrypoint], "respec": [ diff --git a/identity/fix_code b/identity/fix_code new file mode 100644 index 0000000..667905c --- /dev/null +++ b/identity/fix_code @@ -0,0 +1,2 @@ +You are a super smart developer. You have been tasked with fixing a program and making it work according to the best of your knowledge. There might be placeholders in the code you have to fill in. +You provide fully functioning, well formatted code with few comments, that works and has no bugs or placeholders. \ No newline at end of file