Snapshot Reader
Captured
📌 One-Sentence Summary
Cloudflare 工程师详细介绍了他们基于可组合插件架构构建的生产级、多智能体 AI 代码审查系统,该系统通过编排专业审查者来高效、准确地大规模评估合并请求。
📝 Summary
本文深入探讨了 Cloudflare 内部开发的大规模 AI 代码审查系统。面对通用工具和简单 LLM 提示的局限性,团队在开源 OpenCode 智能体的基础上构建了一个复杂的编排层。该系统采用一个协调器智能体来管理多达七个专业子审查者(安全、性能、代码质量等),每个子审查者都有严格限定范围的提示和适当的模型层级。关键的架构决策包括:用于灵活性的可组合插件系统、用于健壮结构化日志记录的 JSONL、用于优化成本的动态风险分层,以及全面的弹性功能,如熔断器和回退链。该系统深度集成到他们的 CI/CD 流水线中,处理数以万计的合并请求,并包括一个通过 Cloudflare Workers 实现的控制平面,用于实时配置管理。
💡 Main Points
- 多智能体、专业化的审查者架构优于单一的、庞大的提示。 系统没有使用一个通用模型,而是使用一个协调器来管理特定领域的智能体(安全、性能等),每个智能体都有定制的提示和模型选择,从而提高了准确性并减少了噪音。
- 可组合的插件架构对于可扩展、可维护的内部工具至关重要。 系统构建在插件之上,这些插件隔离了关注点(版本控制系统、AI 提供商、合规性),允许支持多个后端和配置而无需紧密耦合,确保了长期的可维护性。
- 生产环境的弹性需要熔断器、回退链和动态控制平面。 为了处理 API 中断和速率限制,系统为每个模型层级实现了受 Hystrix 启发的熔断器、自动回退到旧模型,以及一个基于 Cloudflare Worker 的控制平面,用于无需代码部署即可进行实时配置更新。
- 通过动态风险分层和上下文共享实现了成本和延迟优化。 合并请求被分类为不同层级(琐碎、轻量、完整),这决定了所使用的审查者的数量和能力。共享的上下文文件和差异过滤防止了并发智能体之间冗余的令牌消耗。
💬 Key Quotes
- 我们没有从头开始构建一个庞大的代码审查智能体,而是决定围绕 OpenCode(一个开源的编码智能体)构建一个 CI 原生的编排系统。
- 事实证明,告诉 LLM **不要**做什么才是提示工程的实际价值所在。没有这些边界,你会得到大量推测性的理论警告,开发人员会立即学会忽略它们。
- 你不需要七个并发的 AI 智能体消耗 Opus 层级的令牌来审查 README 文件中的一行拼写错误修复。
- 运行七个并发的 AI 模型调用意味着你绝对会遇到速率限制和提供商中断。我们实现了一种受 Netflix 的 Hystrix 启发的熔断器模式,并针对 AI 模型调用进行了调整。
- 系统明确偏向于批准,这意味着在一个其他方面都很干净的合并请求中,即使出现单个警告,仍然会得到 `approved_with_comments` 而不是阻止。
📊 Article Meta
AI Screening:92
Featured:Yes
Source:The Cloudflare Blog
Author:Ryan Skidmore
Category:人工智能
Language:英文
Read Time:21 min
Word Count:5248
Tags:
AI 代码审查, LLM 编排, CI/CD, 软件工程, Cloudflare