多智能体“三剑客”:Task
Laiyong Wang Lv6

Task 设计:从“定人”到“派活”

人设工程完成了“定人”的步骤,有了优秀的数字员工,接下来就需要给他们派发明确的工作了。


一、认知原点——一切 AI 应用皆为“Task”

upload successful

无论是传统的 Chatbot、智能客服,还是复杂的数据分析 Agent,其底层逻辑都包含以下三个核心环节:

输入(Input)

用户的原始诉求或系统的定时触发事件。

执行过程

Agent 思考、调用工具、交互协作的中间环节。

输出(Output / 交付物)

经过执行后,必须产出一个明确的结果。这个结果可能是:

  • 一段对话回复
  • 一份结构化的 Markdown 报告
  • 一个 PPT 文件
  • 或是在业务系统中提交的一系列操作

未来我们在做 AI 应用评测时,最核心的依据也就是对比这“输入”和“产出”是否匹配预期的标准。


二、拆解心法——火车轨道 vs 里程碑

在定义任务时,开发者最容易陷入传统编程的惯性思维,这就引出了核心心法:

任务定义终点,而非路径。

upload successful

火车轨道(传统工作流)

像铺设铁轨一样,事无巨细地规定 Agent:

  • 第一步必须做什么
  • 第二步必须怎么做

在面对充满不确定性的复杂场景时,一旦中途出现意外状况,“火车”就会彻底脱轨崩溃。

里程碑(最佳实践)

我们应该像设定里程碑一样去定义 Task:

  • 明确当前阶段需要交付什么成果
  • 中间过程(搜索、策略调整)交由模型自主决策

结构化的交付标准,就是最好的“里程碑”。


三、交付标准——结构是混乱世界中的确定性

既然任务是契约驱动的,我们就必须提供清晰的“验收标准”。

upload successful

工程实践:Pydantic 定义输出结构

在工程代码中,我们强烈推荐使用 Pydantic 定义任务的目标输出结构。

这不仅仅是为了让代码好看,它在底层发挥着极大的作用:

1)提示词注入(Schema Injection)

当你用 Pydantic 定义好数据结构和字段 description 后:

  • 框架会自动转换为 JSON Schema
  • 并注入到 System Prompt 中

2)结果提取与校验(Validation)

模型会倾向于按 Schema 输出:

  • 框架通过 JSON 提取结果
  • 使用 Pydantic 进行结构校验

最终实现:

将不确定的自然语言 → 转化为确定性的工程数据


四、代码实战

执行结果(代码我就不贴了)

upload successful