name: "CodeCollab_Flow" description: "ToDO: add description" 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: [] output_keys: - "code" subflows_config: - _target_: martinjosifoski.CC_flows.CF_Code.instantiate_from_default_config 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 input_keys: - "code_feedback" output_data_transformations: - _target_: flows.data_transformations.RegexFirstOccurrenceExtractor regex: '(?<=```python)([\s\S]*?)(?=```)' regex_fallback: '(?<=```)([\s\S]*?)(?=```)' input_key: "api_output" output_key: "code" strip: True assert_unique: True - _target_: flows.data_transformations.EndOfInteraction end_of_interaction_string: "Final answer" input_key: "api_output" output_key: "end_of_interaction" output_keys: - "code" - "end_of_interaction" - _target_: martinjosifoski.CC_flows.CF_CodeCritic.instantiate_from_default_config overrides: name: CodeCritic output_data_transformations: - _target_: flows.data_transformations.KeyRename old_key2new_key: api_output: "code_feedback" reset_every_round: CodeGenerator: False # this is the name of the subflow, may be different for each config, needs to check ! CodeCritic: True