CC_flows / CF_CodeCollab.yaml
martinjosifoski's picture
Fix bugs, clean code, bring everything up-to-date and standardize a bit more.
f748a3e
raw
history blame
2.37 kB
name: "CodeCollab_Flow"
verbose: True
description: "ToDO: add description"
reset_generator_every_round: False
reset_critic_every_round: True
max_rounds: 2 # ToDO: To increase to 4
early_exit_key: "end_of_interaction"
input_data_transformations: []
input_keys:
- "problem_description"
- "input_description"
- "output_description"
- "io_examples_and_explanation"
output_data_transformations:
- _target_: flows.data_transformations.KeyRename
old_key2new_key:
raw_response.code: "code"
output_keys:
- "code"
subflows_config:
- _target_: flows.flow_verse.instantiate_flow
repository_id: ${oc.env:CC_FLOWS}
class_name: CF_Code
overrides:
name: "CodeGenerator"
model_name: "gpt-4"
human_message_prompt_template:
_target_: langchain.PromptTemplate
template: |2-
# Feedback on the last proposed solution
{{code_feedback}}
Consider the original problem statement, the last proposed solution and the provided feedback. Does the solution need to be updated? If so, provide the corrected version of the code in the following format:
```python
{{code_placeholder}}
```
otherwise, reply:
"Final answer."
input_variables:
- code_feedback
partial_variables:
code_placeholder: "{{python_code}}"
template_format: jinja2
default_human_input_key: "code_feedback"
output_data_transformations:
- _target_: flows.data_transformations.RegexFirstOccurrenceExtractor
regex: '(?<=```python)([\s\S]*?)(?=```)'
regex_fallback: '(?<=```)([\s\S]*?)(?=```)'
input_key: "raw_response"
output_key: "code"
strip: True
assert_unique: True
verbose: True
- _target_: flows.data_transformations.EndOfInteraction
end_of_interaction_string: "Final answer"
output_key: "end_of_interaction"
verbose: True
output_keys:
- "code"
- "end_of_interaction"
- _target_: flows.flow_verse.instantiate_flow
repository_id: ${oc.env:CC_FLOWS}
class_name: CF_CodeCritic
overrides:
name: CodeCritic
output_data_transformations:
- _target_: flows.data_transformations.KeyRename
old_key2new_key:
raw_response: "code_feedback"