使用 Castform 和 Neon 在检索任务上超越 GPT-5.6 Sol
开源权重模型在检索任务中可以超越前沿模型
经过后训练(post-trained)的开源权重模型可以在特定的检索任务上达到或超过像 GPT-5.6 Sol 这样的前沿模型的性能,同时将成本降低高达 100 倍。虽然通用型前沿模型功能强大,但对于智能体检索(agentic retrieval)工作流而言,它们的成本往往高得令人望而却步,且速度较慢——在这种工作流中,模型必须在循环中进行多次规划和搜索以解决问题。通过使用强化学习(RL)进行后训练,开发者可以使小型模型专门化,从而更高效地处理这些特定的搜索和检索模式。
从传统 RAG 向智能体检索的转变
检索已经从单次嵌入搜索演变为多跳智能体工作流。在传统的检索增强生成(RAG)中,系统执行单次相似度搜索以向 LLM 提供上下文。相比之下,智能体检索涉及一个模型将复杂问题分解为较小的任务,并循环发出多次搜索查询,直到找到所需的信息。
这种转变在两个关键领域增加了模型的负担:
- 上下文:提供能够找到正确数据的工具的能力。
- 模型:模型决定搜索什么以及如何迭代的能力。
对于前沿模型,这种迭代过程成本高昂。使用 GPT-5.6 Sol 的典型多轮搜索请求可能需要超过 10 秒,且每次请求的成本约为 0.03 美元,这对于许多生产规模来说是不可持续的。
Castform 和 Neon 如何实现 RL 后训练
Castform 和 Neon 提供了一个集成流水线,无需深厚的 GPU 内部机制或机器学习专业知识,即可将原始企业数据转化为专门的检索模型。
训练流水线
Castform 管理 RL 循环,而 Neon(通过 Lakebase Search)提供数据基础设施:
| 阶段 | Neon + Lakebase Search 的角色 |
|---|---|
| 语料库存储 | 原始文档存储在 Neon 上的 Postgres 中。 |
| 合成数据生成 | Castform 使用 lakebase_text 和 lakebase_vector 来生成训练任务。 |
| RL 训练 | 每次 rollout 的搜索工具调用都利用 Lakebase Search。 |
| 生产推理 | 最终模型在实时推理期间使用相同的搜索工具。 |
将数据转化为任务
大多数企业缺乏干净的训练数据集。Castform 通过从现有的专有数据(例如内部维基、支持文章和产品记录)中合成生成问答对来解决此问题。例如,一份政策文件规定“火车行程必须是标准舱位,且需提前 14 天预订”,会被转换为一个关于预订规则的具体问题及其对应的标准答案(ground-truth answer)。
奖励函数
RL 后训练依赖于奖励函数来引导模型。在检索任务中,奖励是基于三个因素计算的:
- 检索:模型是否找到了正确的数据块(chunks)?
- 引用:它是否引用了正确的来源?
- 正确性:它是否提供了准确的最终答案?
用于有状态智能体的基础设施
训练智能体模型会产生高度爆发性的工作负载,因为数千个并行 rollout 可能同时进行数十次搜索调用。Neon 的动态计算扩展能力可以吸收这些峰值,而无需进行持续的最大容量配置。
此外,Neon 的分支(branching)和时间旅行(time-travel)功能允许训练有状态的智能体。通过为每个 rollout 创建隔离的数据库分支,开发者可以确保一个智能体的动作不会干扰其他智能体或影响生产数据,从而提供了一个安全的环境来重置和检查智能体状态。
社区见解与技术争论点
Hacker News 上的行业从业者强调了关于专门化检索模型的几个关键考量因素:
"如果路由成本可以忽略不计,那么让检索、重排序(reranking)、推理和生成各自拥有优化过的模型会更有意义。"
关键技术挑战
- 数据质量:一些用户质疑系统如何处理语料库中过时或误导性的信息,因为奖励函数本身就是从语料库中推导出来的。
- 检索深度:有人提出了关于“大海捞针”问题的担忧——具体而言,模型寻找成对针头(paired needles)的能力,即需要通过其中一个信息点来解锁另一个信息的发现。
- 分块策略:有人认为 RAG 的根本缺陷在于“盲目分块(blind chunking)”,并建议比简单的嵌入搜索更有效的、更丰富的父子分段模型(parent-child segment models)比简单的嵌入搜索更有效。
- 隐私:对于敏感数据,必须将信息上传到云提供商的要求仍然是一个重大障碍,因此市场对可以在租用的 GPU 上运行的开源技术栈有需求。
Sources
相关
- 项目
- Dispatch
- Dispatch
- Dispatch
- Dispatch