graph: id: general_problem_solving_team description: 通用问题解决专家小组,包括需求理解与拆解部门、逻辑推理与分析部门、创意与方案生成部门、语言表达部门、技术实现部门、信息搜集部门、审核部门。 log_level: DEBUG is_majority_voting: false nodes: - id: Summary Department type: agent config: name: ${MODEL_NAME} provider: openai role: |- 你是一个通用问题解决小组的一员。你的职务是“总结输出负责人”。 你将接收到来自所有上级专家智能体的指令。你将负责整合他们的信息并综合输出。 你是【最终总结专家】,是用户看到的唯一出口: 整合所有部门结果,整理成通顺、完整、友好的回答 结构清晰:重点前置、分点、易懂 不添加新信息,不篡改内容 输出:给用户的最终回答。 base_url: ${BASE_URL} api_key: ${API_KEY} params: {} tooling: - type: function config: tools: - name: file:All - name: user:All - name: video:All - name: weather:All - name: web:All - name: code_executor:All timeout: null prefix: '' thinking: null memories: [] retry: null description: '' context_window: -1 log_output: true - id: Technician type: agent config: name: ${MODEL_NAME} provider: openai role: |- 你是一个通用问题解决小组的一员。你的职务是“技术实现专家。 你将接收到来自上级智能体的指令。寻找指令中关于“技术实现”的部分,只执行这部分指令,并完全忽略其它不属于你的指令。 你是【技术实现专家】,负责所有可落地的技术任务: 写代码、写脚本、写命令 设计步骤、流程、工具调用 保证代码可运行、思路清晰 只输出技术方案 + 可执行内容,不闲聊。 base_url: ${BASE_URL} api_key: ${API_KEY} params: {} tooling: - type: function config: tools: - name: code_executor:All - name: file:All - name: utils:All - name: uv_related:All timeout: null prefix: '' thinking: null memories: [] retry: null description: '' context_window: -1 log_output: true - id: Scheme Generater type: agent config: name: ${MODEL_NAME} provider: openai role: | 你是一个通用问题解决小组的一员。你的职务是“方案生成专家”。 你将接收到来自上级智能体的指令。寻找指令中关于“方案生成”的部分,只执行这部分指令,并完全忽略其它不属于你的指令。 你是【方案生成专家】: 当问题没有唯一答案时,生成多套可行方案 给出建议、策划、思路、表达优化 兼顾实用性与可读性 输出:清晰、可选择、可直接使用的方案。 base_url: ${BASE_URL} api_key: ${API_KEY} params: {} tooling: [] thinking: null memories: [] retry: null description: '' context_window: -1 log_output: true - id: Reasoner type: agent config: name: ${MODEL_NAME} provider: openai role: |- 你是一个通用问题解决小组的一员。你的职务是“逻辑推理专家”。 你将收到3条指令: 你将接收到来自“Demand Analyzer”指令。寻找指令中关于“逻辑推理”的部分,只执行这部分指令,并完全忽略其它不属于你的指令。 你将收到来自“Information Searcher”的分析。这是一位信息搜取专家。 你将收到来自“Technician”的结果。这是你们团队的技术人员。 你是【逻辑推理与分析专家】: 基于已有信息做推导、对比、判断、计算 找出漏洞、矛盾、不合理之处 给出结论、原因、优先级 不做创意,不写代码,不搜新信息,只做理性分析。 base_url: ${BASE_URL} api_key: ${API_KEY} params: {} tooling: [] thinking: type: reflection config: reflection_prompt: Thinking {type = true} memories: [] retry: null description: '' context_window: -1 log_output: true - id: Information Searcher type: agent config: name: ${MODEL_NAME} provider: openai role: |- 你是一个通用问题解决小组的一员。你的职务是“信息搜集专家”。 你将接收到来自上级智能体的指令。寻找指令中关于“信息搜集”的部分,只执行这部分指令,并完全忽略其它不属于你的指令。 你是【信息搜集专家】,只做事实类信息获取: 搜索最新、权威、准确的资料 只保留与任务相关的关键信息 不编造、不扩展、不推理 输出:结构化要点,来源可靠,简洁客观。 base_url: ${BASE_URL} api_key: ${API_KEY} params: {} tooling: - type: function config: tools: - name: web:All - name: weather:All timeout: null prefix: '' thinking: null memories: [] retry: null description: '' context_window: -1 log_output: true - id: Demand Analyze type: agent config: name: ${MODEL_NAME} provider: openai role: |- 你是一个通用问题解决小组的一员。其中: 你是【需求拆解专家】,只做一件事: 把用户模糊、简短的一句话,精准理解真实意图,并拆成可执行的小任务。 输出要求: 用户真正想解决什么问题 必须拆成 ≤5 个明确子任务 标注每个任务交给哪个部门:信息搜集 / 逻辑推理 / 技术实现 / 方案生成 / 总结输出 给每个部门的任务必须符合他们的职能,不同部门之间的任务不可以重叠 如果你认为该问题用不到5个部门,则可以明确指出不需要它们工作 禁止回答问题,只输出拆解结果。 base_url: ${BASE_URL} api_key: ${API_KEY} params: {} tooling: - type: function config: tools: - name: user:All timeout: null prefix: '' thinking: null memories: [] retry: enabled: true max_attempts: 2 min_wait_seconds: 1 max_wait_seconds: 6 retry_on_status_codes: [] retry_on_exception_types: [] non_retry_exception_types: [] retry_on_error_substrings: [] description: '' context_window: 0 log_output: true edges: - from: Information Searcher to: Summary Department trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null - from: Reasoner to: Summary Department trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null - from: Technician to: Summary Department trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null - from: Scheme Generater to: Summary Department trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null - from: Demand Analyze to: Information Searcher trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null - from: Demand Analyze to: Reasoner trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null - from: Demand Analyze to: Technician trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null - from: Demand Analyze to: Scheme Generater trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null - from: Information Searcher to: Reasoner trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null - from: Technician to: Reasoner trigger: true condition: type: function config: name: 'true' carry_data: true keep_message: false clear_context: false clear_kept_context: false process: null dynamic: null memory: [] initial_instruction: 请输入您想解决的问题。 start: - Demand Analyze end: []