# Worker-Critic模式：AI智能体协作工作流的工程实践

> 一个展示Worker-Critic代理工作流架构的示例项目，通过基线、同模型评审和外部评审三种条件的对比实验，探索多Agent协作生成高质量技术图表的最佳实践。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-07T13:16:48.000Z
- 最近活动: 2026-04-07T13:23:20.477Z
- 热度: 159.9
- 关键词: Worker-Critic模式, AI Agent, 多Agent协作, Prompt工程, Codex, Claude, 质量评审, 实验框架
- 页面链接: https://www.zingnex.cn/forum/thread/worker-critic-ai
- Canonical: https://www.zingnex.cn/forum/thread/worker-critic-ai
- Markdown 来源: ingested_event

---

# Worker-Critic模式：AI智能体协作工作流的工程实践\n\n在AI Agent系统设计中，如何确保生成内容的质量和一致性是一个核心挑战。PredictiveScienceLab开源的worker-critic-example项目，通过一个具体的图表生成任务，展示了Worker-Critic（工作者-评审者）代理工作流模式的工程实现。这个项目不仅是一个概念验证，更是一套可复用的实验框架，为研究多Agent协作机制提供了实用的参考实现。\n\n## 项目背景与核心问题\n\n随着大型语言模型能力的提升，越来越多的应用开始采用Agent架构来完成复杂任务。然而，单个Agent在长时间运行中容易出现"漂移"现象——即随着上下文窗口的累积，模型的行为可能逐渐偏离初始目标。Worker-Critic模式借鉴了软件工程中的代码审查机制，引入一个独立的Critic（评审者）Agent来持续监控和反馈Worker（工作者）Agent的输出质量。\n\n这个项目的独特之处在于，它并非停留在理论层面，而是通过一个具体的图表生成任务，构建了三种实验条件的对比框架，从而能够量化评估Worker-Critic模式带来的实际收益。\n\n## 实验设计与三种条件\n\n项目设计了三种实验条件来对比不同协作模式的效果：\n\n### 条件A：基线（Base）\n\n这是最简单的设置，单个Agent接收任务描述和基础Prompt，独立完成图表生成。这代表了当前大多数AI应用的基本模式，也是评估改进效果的基准线。\n\n### 条件B：同模型评审（Critic）\n\n这个条件引入了一个关键的架构变化：在保持单个Worker会话持续运行的同时，增加了一个同模型的Critic会话。Critic会审查当前生成的SVG图表，并提供反馈。重要的是，这个Critic会话是持续存在的，而不是每次评审都重新创建，这模拟了真实团队中固定评审者的角色。\n\n### 条件C：外部评审（External Review）\n\n这个条件进一步扩展了评审机制：保持Worker会话持续运行，但每次评审都调用外部的GPT模型（gpt-5.4-pro）进行独立审查。外部评审者接收当前SVG和之前的评审历史，提供客观的第三方视角。这种模式代表了将专业评审能力外包给更强模型的架构思路。\n\n## 技术实现细节\n\n项目的工程实现展现了高水平的代码组织和架构设计能力：\n\n### Prompt工程体系\n\n项目采用模块化的Prompt设计，将基础Prompt与各种附加指令分离。基础Prompt定义了图表生成的核心任务，而针对不同条件的附加指令（如Figma集成、评审要求等）则作为独立的Markdown文件存在。这种设计通过脚本动态组合生成最终Prompt，既保证了核心逻辑的一致性，又支持灵活的条件定制。\n\nPrompt文件包括：基础图表生成Prompt、Figma集成附加指令、评审附加指令、外部评审附加指令等。通过`scripts/build_prompts.py`脚本可以重新生成组合后的Prompt文件。\n\n### 多平台Agent支持\n\n项目同时支持OpenAI Codex和Anthropic Claude两种主流AI编程助手，展现了良好的平台兼容性。每种平台都有对应的启动脚本和运行器实现：\n\n- **Codex运行器**：通过`scripts/launch_codex_exec.py`启动，支持在隔离的临时工作区中运行，使用tmux会话管理，支持Figma MCP集成\n- **Claude运行器**：通过`scripts/launch_claude_exec.py`启动，同样使用临时工作区和tmux，支持Azure Foundry端点\n\n这种多平台支持不仅增加了项目的实用性，也为跨平台比较研究提供了可能。\n\n### 隔离的运行环境\n\n项目的一个重要设计决策是每个运行都在独立的临时目录中执行（默认位于`/tmp/worker-critic-example-runs/<run-id>/`）。这种隔离带来了多个好处：\n\n- 每个运行有独立的git仓库，不污染源代码仓库\n- 可以并行运行多个实验而不互相干扰\n- 实验产物和日志被完整保存，便于事后分析\n- 支持通过tmux attach实时观察运行状态\n\n### Figma集成\n\n对于涉及UI设计的任务，项目提供了可选的Figma集成。通过MCP（Model Context Protocol）服务器，Agent可以直接读取和修改Figma文件。启动器会在运行前执行预检脚本检查Figma访问权限，如果因计划限制、速率限制或权限问题导致访问失败，会立即中止而不是静默降级。\n\n## 评审机制的实现\n\n评审是Worker-Critic模式的核心，项目对评审机制的实现值得深入分析：\n\n### 外部评审脚本\n\n`scripts/external_review.py`实现了独立的外部评审功能。它接收项目描述、当前SVG文件和可选的历史评审目录，调用OpenAI Responses API获取评审意见，并同时输出Markdown格式的详细评审和JSON格式的结构化摘要。这种双格式输出既满足了人类阅读的需求，也便于程序化处理。\n\n### 历史记录管理\n\n评审历史被保存在每个运行的`runs/<run-id>/reviews/`目录中。在后续评审中，可以选择性地包含之前的评审记录，这使得评审过程具有上下文连续性，模拟了真实迭代改进的过程。\n\n### Claude Code评审\n\n对于Claude平台，项目提供了`scripts/anthropic_review.py`脚本，支持调用Azure Foundry上的Claude模型进行评审。脚本支持多种模型选择，并记录了当前部署的兼容性信息（如claude-opus-4-6可用而某些Sonnet模型名称不被接受）。\n\n## 结果收集与对比分析\n\n项目提供了完整的实验后分析工具。`scripts/build_comparison_artifacts.py`脚本可以收集三个条件的最终图表，生成对比可视化：\n\n- 并排的最终图表对比（PNG格式）\n- 各条件的迭代过程动画（GIF格式）\n- 包含运行根目录、帧数和产物路径的摘要报告\n\n这种自动化的对比分析能力，使得研究者可以直观地观察不同条件的效果差异，而无需手动整理大量输出文件。\n\n## 工程最佳实践\n\n从这个项目中可以提炼出多个Agent系统开发的工程最佳实践：\n\n**Prompt版本控制**：通过分离基础Prompt和条件特定附加指令，并使用脚本生成最终Prompt，实现了Prompt的版本控制和可追溯性。\n\n**环境隔离**：每个实验运行在独立的临时目录中，避免了状态污染和并行冲突，这是可重复实验的基础。\n\n**多平台抽象**：通过统一的运行器接口支持不同AI平台，增加了代码的复用性和项目的适应性。\n\n**完整的日志记录**：每个运行保存了Prompt副本、启动记录、tmux日志、Codex/Claude的JSONL事件流、标准错误输出等，为事后调试和分析提供了丰富信息。\n\n**可观察性设计**：通过tmux会话管理，研究者可以实时attach到运行中的会话观察Agent的行为，这对于理解Agent决策过程非常有价值。\n\n## 研究价值与应用场景\n\n这个项目不仅是一个技术演示，更是一个可扩展的研究平台。其设计允许研究者：\n\n- 测试不同的Prompt策略对生成质量的影响\n- 比较同模型评审与外部模型评审的效果差异\n- 研究Critic反馈的粒度、频率对Worker改进效果的影响\n- 探索不同领域任务（不仅是图表生成）的Worker-Critic适用性\n\n对于工业界，这个项目的架构思路可以直接应用于需要高质量生成的场景，如文档编写、代码生成、设计稿创建等。Worker-Critic模式特别适合那些质量要求高、错误成本大、需要多轮迭代的任务。\n\n## 局限性与未来方向\n\n项目文档也坦诚地记录了当前的一些限制，如特定模型名称的兼容性问题。这种透明的态度有助于其他开发者避免踩坑。未来的扩展方向可能包括：支持更多的AI平台、引入更复杂的Critic协作模式（如多个Critic投票）、探索Critic自身的漂移问题等。\n\n## 结语\n\nworker-critic-example项目代表了AI Agent系统工程化实践的一个重要里程碑。它展示了如何将学术研究中的Worker-Critic概念转化为可运行、可测量、可比较的实验系统。项目的代码质量、文档完整性和工程严谨性都达到了很高的水准，为AI Agent领域的研究者和实践者提供了宝贵的参考。对于那些希望在自己的应用中引入多Agent协作机制的开发者来说，这是一个值得深入研究的优秀范例。
