CC_flows / CF_PlanCollab.yaml
martinjosifoski's picture
partially propagate changes (#7)
ca366eb
raw
history blame contribute delete
No virus
2.34 kB
name: "PlanCollab_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:
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
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"
reset_every_round:
PlanGenerator: false
PlanCritic: true