name: "CodeReflect_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: | |
- _target_: flows.data_transformations.KeyRename | |
old_key2new_key: | |
code: "code" | |
output_keys: | |
- "code" | |
subflows_config: | |
- _target_: martinjosifoski.CC_flows.CF_Code.instantiate_from_default_config | |
overrides: | |
name: "CodeGenerator" | |
model_name: "gpt-4" | |
input_data_transformations: | |
- _target_: flows.data_transformations.KeyRename | |
old_key2new_key: | |
code_reflect_message: "query" | |
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.FixedReply_CodeReflect.instantiate_from_default_config | |
reset_every_round: | |
CodeGenerator: False # this is the name of the subflow, may be different for each config, needs to check ! | |
CodeReflectCritic: True | |