name: "PlanCollab_Flow" 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: plan: "plan" output_keys: - "plan" subflows_config: - _target_: martinjosifoski.CC_flows.CF_Plan.instantiate_from_default_config overrides: name: "PlanGenerator" human_message_prompt_template: _target_: langchain.PromptTemplate template: |2- # Feedback on the last proposed conceptual solution {{plan_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 conceptual solution in the following format: # Conceptual solution {{plan_placeholder}} otherwise, reply: "Final answer." input_variables: - plan_feedback partial_variables: plan_placeholder: "{{conceptual_solution}}" template_format: jinja2 default_human_input_keys: - "plan_feedback" 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.CF_PlanCritic.instantiate_from_default_config overrides: name: PlanCritic output_data_transformations: - _target_: flows.data_transformations.KeyRename old_key2new_key: api_output: "plan_feedback"