| # Abstract class, should provide more config in subclasses | |
| _target_: Tachi67.ContentWriterFlowModule.ContentWriterFlow.instantiate_from_default_config | |
| name: "ContentWriter" | |
| description: "Generated content, writes content to file and update content with user interaction" | |
| max_rounds: 30 | |
| input_interface: | |
| - "goal" | |
| output_interface: | |
| - "answer" | |
| - "status" | |
| ### Subflows specification | |
| subflows_config: | |
| Controller: | |
| _target_: Tachi67.ControllerAtomicFlowModule.ControllerAtomicFlow.instantiate_from_default_config | |
| backend: | |
| api_infos: ??? | |
| model_name: | |
| openai: gpt-4 | |
| azure: azure/gpt-4 | |
| # In subclasses, should provide specific command and command args. | |
| # E.g., | |
| # commands: | |
| # wiki_search: | |
| # description: "Performs a search on Wikipedia." | |
| # input_args: ["search_term"] | |
| Executor: | |
| _target_: aiflows.base_flows.BranchingFlow.instantiate_from_default_config | |
| # In subclasses, should provide what are the branches of executors | |
| # E.g., | |
| # subflows_config: | |
| # wiki_search: | |
| # _target_: .WikiSearchAtomicFlow.instantiate_from_default_config | |
| early_exit_key: "EARLY_EXIT" | |
| topology: | |
| - 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: | |
| # In subclasses, should provide name of function name of output processor | |
| #_target_: ControllerExecutorFlow.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 | |
| # in subclasses, should provide corresponding output name of the branching subflows | |
| keys_to_rename: | |
| branch_output_data.code: code | |
| branch_output_data.feedback: feedback | |
| branch_output_data.temp_code_file_location: temp_code_file_location | |
| keys_to_delete: ["branch_output_data"] | |
| reset: false | |