为AI SDK构建软件工厂

为AI SDK构建软件工厂

💡 原文英文,约2200词,阅读约需8分钟。
📝

内容提要

AI SDK团队构建了一个软件工厂,用多个专用代理自动处理开源项目的issue和PR。工厂代理负责分类、分析、实现、审查和回移植,人类仍保留最终合并权。运行四周后,工厂贡献了25-35%的合并PR,关闭了70-80%的issue,显著减少了积压。

🔎

延伸解读

自动化边界与人类审查的平衡

AI SDK的软件工厂并非追求全自动化,而是将自动化集中在人类审查的周边环节。工厂代理负责分类、分析、实现、审查和回移植,但所有合并仍由人类完成。这种设计基于风险考量:对于基础性AI基础设施,质量与安全不可妥协,因此人类对最终发布内容保持控制。工厂通过提供完整的证据链,使审查者能根据风险等级分配精力,例如文档修复快速验证,新API深度审查。

安全设计:从沙箱到网络隔离

由于工厂处理公开仓库的不可信输入,安全从设计之初就纳入考量。每个代理运行在隔离的Vercel Sandbox中,仅包含任务所需的最小权限和密钥。此外,沙箱外还有网络屏蔽层,阻止代理访问可能用于数据外泄的路径。最后一道防线是人类审查,确保任何变更在合并前经过人工批准。这种多层防御机制有效降低了恶意代码、供应链攻击和提示词注入等风险。

工厂的自我改进机制

工厂的运行结果分为成功、有缺陷、受阻和手动四类,其中后三类成为改进的反馈信号。有缺陷的运行促使优化提示词或增加评估用例;受阻的运行则提示补充凭证或依赖;手动运行标记了当前自动化边界,促使团队评估是否扩大自动化范围。这种持续改进的循环,使工厂每周都能处理更多此前无法信任的任务,类似于团队对测试套件的持续维护。

Q&A

AI SDK的软件工厂是什么?它如何运作?

AI SDK的软件工厂是一个自动化系统,使用多个专用代理处理开源项目的issue和PR。代理负责分类、分析、实现、审查和回移植,人类保留最终合并权。它通过GitHub webhooks触发,在Vercel Sandbox中运行,并使用Vercel Functions、Queues、Blob和Neon Postgres等基础设施。

AI SDK软件工厂运行四周后取得了哪些成果?

运行四周后,工厂贡献了每周合并PR的25-35%,关闭了70-80%的issue,其中7月份关闭的issue中超过75%由工厂完成。开放issue从6月底的1022个减少到8月初的844个,开放bug减少了约25%。此外,v5和v6的回移植PR中超过50%由工厂完成。

AI SDK软件工厂包含哪些专用代理?

工厂包含多个专用代理,每个负责特定任务:分类(classifier)、分析(analyzer)、实现(implementer)、审查(reviewer)、回移植(backporter)、文档更新(documentation updater)、bug复现(bug reproduction)和功能分析(feature analysis)等。

AI SDK软件工厂如何处理一个功能请求?

以issue #17898为例,流程包括:分类代理将其标记为Feature;分析代理编写探针确认功能缺失,并生成规格说明;实现代理实现功能并运行端到端测试;审查代理评估风险并批准;人类审查后合并;最后自动创建回移植PR到v5和v6。

AI SDK软件工厂如何保证安全性?

安全性通过多层防护实现:每个代理在隔离的Vercel Sandbox中运行,仅包含所需代码和密钥;沙箱周围有网络屏蔽层,阻止数据外泄;所有变更必须经过人类审查才能合并。

AI SDK软件工厂的构建原则是什么?

构建原则包括:每个任务使用一个专用代理,便于测试和调试;从一开始就考虑安全性;先在本地CLI迭代,再迁移到云端;以及根据风险调整人工审查深度。

AI SDK软件工厂如何处理失败?

每次运行结果分为成功、有缺陷、受阻或手动。有缺陷的运行通过改进提示词、上下文或添加评估案例来修复;受阻的运行通过配置缺失的凭据或服务来解决;手动运行标记了有意的边界,并促使团队考虑是否值得自动化。这些反馈不断扩展自动化边界。

AI SDK软件工厂使用了哪些技术栈?

技术栈包括:Vercel Functions用于API和webhook,Vercel Queues用于任务执行,Vercel Blob用于日志,Vercel Sandbox用于代理工作区,Neon Postgres用于数据存储。

🏷️

标签

➡️

继续阅读