| name: "AutoGPTFlow" |
| description: "An example implementation of AutoGPT with Flows." |
| max_rounds: 30 |
| early_exit_key: "EARLY_EXIT" |
|
|
| |
| input_interface: |
| - "goal" |
| output_interface: |
| - "answer" |
| - "status" |
|
|
| |
| subflows_config: |
| Controller: |
| _target_: flow_modules.aiflows.ControllerExecutorFlowModule.ControllerAtomicFlow.instantiate_from_default_config |
| finish: |
| description: "Signal that the objective has been satisfied, and returns the answer to the user." |
| input_args: ["answer"] |
| |
| |
| |
| |
| |
| |
| |
| |
| human_message_prompt_template: |
| template: |2 |
| Potentially relevant information retrieved from your memory: |
| {{memory}} |
| ================= |
| Here is the response to your last action: |
| {{observation}} |
| Here is the feedback from the user: |
| {{human_feedback}} |
| input_variables: |
| - "observation" |
| - "human_feedback" |
| - "memory" |
| input_interface_initialized: |
| - "observation" |
| - "human_feedback" |
| - "memory" |
|
|
| Executor: |
| _target_: aiflows.base_flows.BranchingFlow.instantiate_from_default_config |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| HumanFeedback: |
| _target_: flow_modules.aiflows.HumanStandardInputFlowModule.HumanStandardInputFlow.instantiate_from_default_config |
| request_multi_line_input_flag: False |
| query_message_prompt_template: |
| template: |2- |
| Please provide feedback on the last step. To quit type: "q". |
| |
| Relevant information: |
| == Goal == |
| {{goal}} |
| |
| == Last Command == |
| {{command}} |
| |
| == Args |
| {{command_args}} |
| |
| == Result |
| {{observation}} |
| input_variables: |
| - "goal" |
| - "command" |
| - "command_args" |
| - "observation" |
| input_interface_initialized: |
| - "goal" |
| - "command" |
| - "command_args" |
| - "observation" |
|
|
| Memory: |
| _target_: flow_modules.aiflows.VectorStoreFlowModule.ChromaDBFlow.instantiate_from_default_config |
| n_results: 2 |
|
|
| topology: |
| - goal: "Retrieve relevant information from memory." |
| input_interface: |
| _target_: AutoGPTFlow.prepare_memory_read_input |
| flow: Memory |
| output_interface: |
| _target_: AutoGPTFlow.prepare_memory_read_output |
| reset: false |
|
|
| - goal: "Select the next action and prepare the input for the executor." |
| input_interface: |
| _target_: aiflows.interfaces.KeyInterface |
| additional_transformations: |
| - _target_: aiflows.data_transformations.KeyMatchInput |
| flow: Controller |
| output_interface: |
| _target_: AutoGPTFlow.detect_finish_or_continue |
| reset: false |
|
|
| - goal: "Execute the action specified by the Controller." |
| input_interface: |
| _target_: aiflows.interfaces.KeyInterface |
| keys_to_rename: |
| command: branch |
| command_args: branch_input_data |
| keys_to_select: ["branch", "branch_input_data"] |
| flow: Executor |
| output_interface: |
| _target_: aiflows.interfaces.KeyInterface |
| keys_to_rename: |
| branch_output_data: observation |
| keys_to_select: ["observation"] |
| reset: false |
|
|
| - goal: "Ask the user for feedback." |
| input_interface: |
| _target_: aiflows.interfaces.KeyInterface |
| flow: HumanFeedback |
| output_interface: |
| _target_: AutoGPTFlow.detect_finish_in_human_input |
| reset: false |
|
|
| - goal: "Write relevant information to memory" |
| input_interface: |
| _target_: AutoGPTFlow.prepare_memory_write_input |
| flow: Memory |
| reset: false |
|
|