| name: "PlanReflect_Flow" | |
| description: "ToDO: add description" | |
| max_rounds: 2 # ToDo: 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: | |
| plan: "plan" | |
| output_keys: | |
| - "plan" | |
| subflows_config: | |
| - _target_: martinjosifoski.CC_flows.CF_Plan.instantiate_from_default_config | |
| overrides: | |
| name: "PlanGenerator_Flow" | |
| model_name: "gpt-4" | |
| input_data_transformations: | |
| - _target_: flows.data_transformations.KeyRename | |
| old_key2new_key: | |
| plan_reflect_message: "query" | |
| output_data_transformations: | |
| - _target_: flows.data_transformations.RegexFirstOccurrenceExtractor | |
| regex: '(?<=Conceptual solution)([\s\S]*?)(?=\n\n# [A-Z]|\Z)' | |
| regex_fallback: | |
| - '(?<=Conceptual solution:)([\s\S]*?)(?=\n\n# [A-Z]|\Z)' | |
| input_key: "api_output" | |
| output_key: "plan" | |
| 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: | |
| - "plan" | |
| - "end_of_interaction" | |
| - _target_: martinjosifoski.CC_flows.FixedReply_PlanReflect.instantiate_from_default_config | |
| reset_every_round: | |
| PlanGenerator_Flow: False # this is the name of the subflow, may be different for each config, needs to check ! | |
| PlanReflectCritic: True |