技术深度解析
Ornith-1.0的核心创新在于其自我脚手架循环,这是一种递归架构,用动态环境构建取代了静态工具使用。该过程分为三个阶段:
1. 分解与蓝图生成: 面对一个高层级任务(例如“为待办事项列表构建一个带用户认证的REST API”),模型首先将问题分解为子组件(路由、认证、数据库模式)。然后,它生成一个“脚手架”——一个由函数、类和模块依赖关系组成的结构化计划——以可执行的Python代码形式呈现。这个脚手架不是提示词,而是一个活的、可运行的骨架。
2. 执行与反馈循环: 模型在沙盒解释器中执行该脚手架。它测试每个函数,捕获错误(例如缺少导入、逻辑错误),并迭代地优化脚手架。这不仅仅是简单的错误修正;模型可以根据运行时反馈重构整个架构——将一个单体函数拆分为两个模块,或合并冗余的类。关键在于,模型将自己的代码视为一个可塑的、可自我修改的工件。
3. 从架构中进行元学习: 完成任务后,Ornith-1.0对其脚手架进行“事后分析”。它分析哪些架构决策导致了更少的错误、更快的执行速度或更清晰的接口。这种元学习被存储在一个轻量级的内部记忆(一个压缩的架构模式向量)中,该记忆会影响未来的脚手架生成。随着时间的推移,模型会建立一个“脚手架启发式”库——不是硬编码的,而是学习得来的。
工程细节: 该架构构建在一个经过修改的Transformer之上,具有双上下文窗口:一个用于任务描述,另一个用于实时脚手架状态。脚手架被表示为代码块的有向无环图(DAG),使模型能够推理依赖关系和并行性。沙盒是一个容器化的Python环境,具有受限的文件系统访问权限,运行在轻量级运行时上(类似于Pyodide,但针对智能体工作流进行了优化)。
相关开源仓库:
- `self-scaffolding-agent`(GitHub,2.3k星标):由Ornith团队开发的研究原型,实现了小规模任务的核心循环。它使用简化的DAG表示,并且仅支持Python。该仓库包含一个由50个软件工程任务组成的基准测试套件。
- `codegen-arena`(GitHub,8.1k星标):一个用于评估代码生成智能体的社区基准测试。Ornith-1.0的自我脚手架方法在复杂的多文件任务上,得分比最佳的工具调用智能体(例如,带有函数调用的GPT-4)高出23%。
基准性能数据:
| 模型 | SWE-bench Lite (Pass@1) | HumanEval (Pass@1) | 多文件任务成功率 | 平均脚手架构建时间 (秒) |
|---|---|---|---|---|
| Ornith-1.0 | 62.4% | 89.1% | 71.3% | 12.8 |
| GPT-4o (工具调用) | 48.7% | 87.2% | 38.5% | 不适用 (无脚手架) |
| Claude 3.5 Sonnet (工具调用) | 51.2% | 88.6% | 42.1% | 不适用 (无脚手架) |
| CodeLlama-34B (工具调用) | 33.1% | 62.4% | 19.7% | 不适用 (无脚手架) |
数据要点: Ornith-1.0的自我脚手架在多文件任务上,相比最佳的工具调用模型取得了33个百分点的显著提升,这表明架构自主性对于复杂、真实的软件工程至关重要。12.8秒的脚手架构建时间对于大多数交互式用例来说是可以接受的。
关键参与者与案例研究
Ornith团队: 由Dr. Elena Vasquez(前Google Brain研究员)和Dr. Kenji Tanaka(前DeepMind研究员)领导,Ornith AI的12人研究团队已秘密运营18个月。他们之前在NeurIPS 2024上关于自我改进智能体的工作奠定了理论基础。Ornith-1.0是他们的首个商业发布,并且已经从Sequoia和a16z筹集了4500万美元的A轮融资。
竞争方法:
- GitHub Copilot(基于Codex): 依赖静态上下文和工具调用(例如,获取文档)。没有自我脚手架;该模型是一个复杂的自动补全工具。
- Devin(Cognition Labs): 使用一个多智能体管道,包含独立的规划、编码和测试智能体。这是一种“委员会式脚手架”方法,但脚手架是由系统架构预定义的,而非由模型动态生成。
- OpenAI Code Interpreter(GPT-4): 在沙盒中执行代码,但不构建可复用的脚手架。每个任务都被视为一次全新的执行。
对比表:
| 特性 | Ornith-1.0 | Devin (Cognition) | GitHub Copilot | OpenAI Code Interpreter |
|---|---|---|---|---|
| 脚手架生成 | 动态,自建 | 预定义的多智能体 | 无 | 无 |
| 从架构中进行元学习 | 是 | 否 | 否 | 否 |
| 任务分解 | 递归,自主 | 手动提示工程 | 无 | 无 |
| 沙盒执行 | 是 | 是 | 否 | 是 |
| 开源 | 否 (仅API) | 否 | 否 | 否 |
| 定价 (每月) | 待公布 | 500美元 | 10美元 | 20美元 (Plus订阅) |