创建专业化 AI Agent
一个庞大的 AI Agent 听起来很简单。你只需给它一个提示词,让它编写代码、运行测试、审查安全并更新文档。
这在演示中可行,但在实际工程中会失败。
单个 Agent 往往会表现乏力,因为软件开发工作需要不同的思维方式。编写代码与测试代码不同;审查代码与编写文档也不同。
真实的工程团队会将这些任务分离。你的 AI 架构也应该如此。
专业化 Agent 效果更好,因为它们的工作职责很明确。明确的工作职责很容易定义:
- 它们能读取什么
- 它们能编辑什么
- 它们能运行哪些命令
- 它们何时必须停止
以下是构建专业化团队的方法:
• 开发 Agent (Developer Agent) 它的工作是进行细微、安全的代码更改。它遵循严格的验收标准,且仅触碰允许的文件。
• 测试 Agent (Tester Agent) 它的工作是“找茬”(break things)。它不试图让代码看起来很漂亮,而是证明行为是正确的。一个优秀的测试 Agent 会报告它无法验证的内容。
• 评审 Agent (Reviewer Agent) 它的工作是“制造摩擦”(create friction)。它检查命名是否清晰、逻辑是否重复,或者更改是否过大。
• 安全 Agent (Security Agent) 它的工作是保持怀疑。它寻找授权漏洞、SQL 注入或敏感数据泄露。它应该是只读权限,以防止发生无声且未经核实的更改。
• 文档 Agent (Documentation Agent) 它的工作是将代码更改转化为人类指南。它更新 README 文件、API 示例和变更日志。这通常是人类最容易忘记的事情。
• 编排 Agent (Orchestrator Agent) 它的工作是管理工作流。它拆分任务、分配 Agent、传递上下文并检查审批。它不直接干活,而是指挥工作。
当 Agent 之间传递任务时,请使用结构化数据而非长段落。使用 JSON 或类型化产物 (typed artifacts)。这使得下一个 Agent 更容易执行任务,也方便你检查工作成果。
与一个庞大的模型相比,规模小、目标明确的 Agent 更容易控制。由专家组成的团队在生产环境中更加稳健。
Source: https://dev.to/nazar_boyko/creating-specialized-ai-agents-developer-tester-reviewer-documenter-4ac2
Optional learning community: https://t.me/GyaanSetuAi
