Compound AI Systems
复合 AI 系统通过多个相互作用的组件(例如模型、检索器、工具和规则)来完成任务,而不是只调用一个模型。
复合 AI 系统是一种由多个相互作用的组件共同完成任务的应用,例如多次模型调用、检索器、外部工具、规则和人工审核,而不是只调用一个模型。Matei Zaharia 与来自 Berkeley、Stanford、Databricks 等机构的合作者于 2024 年 2 月在一篇 Berkeley AI Research 博文中为这一趋势命名,并指出,最先进的成果越来越多地来自系统,而非单体模型。他们举例说明了 AlphaCode 2:它使用大语言模型(LLM)生成多达一百万个候选程序,再对其筛选和评分;AlphaGeometry:它将 LLM 与符号推理演绎引擎结合以解决奥林匹克几何题;以及 ChatGPT:它的模型会决定何时浏览网页、运行 Python 或生成图像。同一篇博文还引用 Databricks 的数据,指出 60% 的 LLM 应用使用某种形式的检索增强生成(RAG),30% 使用多步链。
为什么要构建系统,而不是更大的模型#
- 以更低成本提升质量:采样、投票和验证可以比训练更大的模型更便宜地提高准确率。Google 报告称,Gemini Ultra 在 MMLU 基准测试中使用 CoT@32 达到 90.04%;CoT@32 会采样 32 个思维链答案,并在足够多答案一致时返回多数答案。相比之下,GPT-4 使用五样本提示时得分为 86.4%。
- 最新数据:模型的知识止于其训练截止时间,而检索器或向量数据库可以在查询时提供最新、私有或受访问控制的信息。
- 控制与可信度:过滤器、AI 护栏、引用和验证步骤,比只提示一个模型并寄希望于它遵从指令更容易约束其行为。
- 成本目标:模型路由会将简单请求发送给小模型,将复杂请求发送给大模型,因此每个应用都能自行权衡质量、延迟和价格。
单个请求路径可以结合这四种思路:
计算机视觉中的复合系统#
生产级视觉应用通常天然就是复合系统:检测器找到物体,跟踪器将物体跨帧关联起来,几何规则根据位置生成事件,存储和告警系统再对事件作出响应。Ultralytics Solutions围绕 YOLO26 模型封装了多个此类系统:目标计数结合检测、多目标跟踪以及线条或区域判断,在每个跟踪 ID 进入或离开时只计数一次;安全警报系统则会在视野内的检测数量达到设定阈值时发送包含一帧图像的电子邮件。更小型的流水线也遵循同一模式:由模型生成结构化观测结果,再交由独立逻辑处理:
from ultralytics import YOLO
# 感知组件:检测器将像素转换为结构化观测结果
model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg")
detections = results[0].summary()
# 策略组件:确定性规则接受置信度高的检测结果,并标记不确定的结果
accepted = [d["name"] for d in detections if d["confidence"] >= 0.5]
uncertain = [d["name"] for d in detections if d["confidence"] < 0.5]
# 路由组件:将不确定的结果交给人工处理,而不是送入下游自动化流程
action = "human review" if uncertain else "auto-approve"
print({"accepted": accepted, "uncertain": uncertain, "action": action})打印出的决策来自审查人员可以阅读并修改、而无需重新训练模型的规则;在主动学习循环中,为它路由给人工处理的不确定图像添加标签,就能为下一个模型补充训练数据。
构建和运维复合系统#
各组件的错误会逐步累积:三个阶段如果各自有 90% 的正确率,端到端结果的正确率也只有约 73%。因此,团队会在固定任务套件上衡量整个系统,而不只测量各个部分。搜索引擎和规则等无法通过梯度训练的组件需要使用其他优化方法;DSPy 等框架会针对一个端到端指标调优流水线中的每条提示。在生产环境中,可观测性跟踪会记录每个请求经过的所有模型调用和工具;版本管理和模型监控等机器学习运维(MLOps)实践也适用于每个组件,因为其中一个组件的更新可能会悄无声息地改变下一个组件的输入。
复合 AI 与相关术语的比较#
- 模型集成:将多个模型针对同一输入的预测组合成一个输出,因此模型集成是复合系统可以包含的一种模式。
- 智能体工作流:模型会在运行时决定控制流程,选择工具和步骤的复合系统。许多复合系统使用固定流水线,不包含此类决策。
- 专家混合模型(MoE):在单个模型内部将词元路由到专家子网络,各部分共同训练。复合系统则在独立构建和部署的组件之间路由请求。










