复合AI系统

今年2月中旬,加州大学伯克利分校的人工智能研究实验室(BAIR Lab,UC Berkeley) 的网站刊登了博客文章《从模型向复合人工智能系统的转变》。文章认为,AI技术发展不再是仅仅依靠机器学习模型,而是由多种技术交织在一起的复合(Compound)系统获得。我们且称这样的系统为CAIS (Compound AI System)。

886c80c543ede6fba382447c67791fd7.png

截图:2024年2月18日,《从模型到复合人工智能系统的转变》

CAIS的实际案例

文章列举了多个CAIS的实际案例,举证说明通过大模型推理和其他技术相配合,获得最佳的结果。

【案例】谷歌的 AlphaCode 2

用LLM生成高达一百万种可能的解决方案,通过精心设计的搜索和重新排名的筛选机制,达到最佳编程结果。

【案例】AlphaGeometry

该系统利用大语言模型快速预测潜在有用的构造,并使用符号推理引擎进行更加深入的决策,用以解决奥林匹克数学竞赛级的问题。

【案例】Databricks 在企业中应用 LLM

Databricks 在60% 的应用采用了检索增强生成(RAG),30% 使用多步骤链条 (Multi-step Chains)。

【案例】微软的链式策略

从单一LLM调用的结果报告转向使用越来越复杂的推理策略,在医学考试中的准确性超过 GPT-4 的准确性9%。

【案例】谷歌的 Gemini 与 CoT@32 推理策略

通过一个32次调用推理模型来进行 MMLU 评估,超过了 GPT-4单次推理所能获得的结果。(MMLU是一个评估大语言模型理解能力的标准化测试)。

CAIS成为趋势的底层逻辑

文章分析了我们为什么会需要复合AI系统。

系统设计需要灵活性

有些任务通过系统设计更容易改进。例如,如果当前最好的LLM在编程竞赛问题中的解决率为30%,而将训练预算增加三倍只能将成功率提高到35%,这显然不足以稳定赢得比赛。相比之下,一个设计良好的迭代系统,比如通过多次样本测试来提高性能的AlphaCode,可以提高效果到80%。

系统需要动态调整

机器学习模型受到其训练的静态数据集的限制,知识固定不变。系统开发者则可以将模型与搜索、检索等组件结合,以整合时效数据。此外,系统设计可以根据需要实现访问控制,如仅回答用户有权访问的文件中的问题。

提高对大模型控制和对系统的信任度

单独的神经网络模型难以控制,无法保证模型完全避免某些行为。复合AI系统可以更紧密地控制行为,例如通过过滤的方式来控制模型输出。同时,复合系统通过结合检索和验证事实来增加用户信任,减少错误信息(幻觉)的生成。

性能目标差异化需求

每个AI模型都有相应的质量水平和成本,但应用程序经常需要调整这些参数。在某些应用中,如代码行建议,最好的AI模型(如GPT-4)可能过于昂贵了,因此,应用(如Github Copilot)使用调优的较小模型和各种搜索启发文章认为,生成AI领域向复合系统的转变趋势与其他AI领域(如自动驾驶汽车)中的行业趋势是一致的。大多数先进的系统实现都是多个专业组件的系统。因此,即便未来模型的性能将继续提升,复合AI系统仍将是一个先进的范式。

CAIS范式

文章认为,如何进行CAIS设计,特别在复合技术的选型、系统的优化和运维等方面,都是很有挑战性的问题。文章最后给出了开发CAIS系统的新兴范式和相应的技术框架和工具。包括:

  • 组合框架和策略

    • 语言模型编程框架:允许开发人员通过多次调用AI模型和其他组件来构建应用程序。如LangChain, LlamaIndex。

    • 代理(Agent)框架:让LLM驱动应用程序的框架。AutoGPT, BabyAGI。

    • LM输出控制:用于控制LM输出的工具,如 Guardrails, Outlines, LMQL和SGLang。

    • 推理策略控制:研究人员开发的推理策略,用于生成更好的模型输出。如CoT,RAG,Self-Consistency和WikiChat。

  • 优化流程:如DSPy流水线质量优化工具,用于优化由LLM调用和其他工具组成的系统,自动调整流水线以最大化目标指标。

  • 优化成本:AI 网关,或如Frugal GPT,自动将输入路由到不同的AI模型级联,以优化成本和性能;或如 Databricks AI Gateway, OpenRouter,优化AI应用程序每个组件的性能的软件。

  • 运维监控和评估

    • LLMOps, DataOps:监控模型输出和数据管道,以确保AI应用程序的可靠运行。如LangSmith, Phoenix Traces, Databricks Inference Tables。

    • 基于AI的质量评估:研究领域内寻求利用监控检查的反馈来改进输出的方法,以及旨在实现质量监控自动化的技术。如:MT-Bench, FAVA, ARES。

文章最后说,随着开发人员的目标是最大限度地提高AI 应用的质量并落地,他们越来越多地转向复合 AI 系统作为控制和增强 LLM 功能的自然方式。虽然目前还没有开发复合 AI 系统的最佳实践,但已经有很多方法可以帮助开发者端到端地进行CAIS的设计、优化和运维。

文章的作者

文章的第一作者Matei Zaharia非等闲之辈。2009年,在加大伯克利分校读博期间,他创造了Apache Spark开源集群计算框架。2013年,他和其他人在Spark的基础上创建了Databricks公司。近年来,他还是麻省理工学院(MIT),斯坦佛大学和加大伯克利大学的教授。

81b05c0901545ac326e5da88a9f8701d.jpeg

图:Matei Zaharia教授

文章的其他作者,有两位是 Zaharia教授的博士生,还有他在Databricks的同事以及斯坦福大学,UC伯克利,MIT和CMU的教授。

08e148fc2980ae53a3391b05efece3ae.png

几点看法

Matei等这篇CAIS文章鲜明地表达了在大模型之外,其他的计算机技术还是有很大发展的空间。这对于相关的中小型公司、研究者、从业者和创业者而言,很有启示意义。

作者从设计和开发到优化和运维,给出了一个端到端的、“可编程的”CAIS框架,使大模型更加可控,并列举了很多优秀的工具。让我们看到未来AIOS的影子。

但是,似乎是因为较强DataBricks的背景,文章给出的方案都透出浓浓的云计算为中心的味道。对于边缘AI计算的发展,文章并没有特别关心。

Compound vs.Composite

虽然文章描述的”Compound AI System”表达了模型和其他技术应该在一起发挥作用,但还没有能够看到如何从架构上来分析模型和其他技术的解偶。因此,我们还必须继续寻求如何发力,分工协作,通过组合(Composite)的方式共建CAIS的可靠方法。

676d3432956fa9a804e136e4abc818df.png

图:Compound和Composite两个词彼此十分相似,但可以通过类比“烘焙蛋糕”和“用乐高积木搭房子”来做区分

Compound: 烘焙蛋糕时,需要混合多种原料(如面粉、糖、鸡蛋等)。一旦蛋糕烘焙完成,你无法将面粉、鸡蛋或糖分离出来。这是一个“化合”(Compound)的紧耦合过程。

Composite: 使用乐高搭房子时,你会组装不同的乐高积木块。房子搭建完成时,你还可以拆解结构来回收单独积木块。这是一个组合(Composite)的松耦合过程。

从边缘AI、AIOS、AIPC和发展平民AI的角度来看,我们更加希望CAIS是Composite AI System,是可组合的AI系统。这样,人们才能更加专注于自己擅长的模块;也能够降低门槛,让更多的人能够有效地参与进来,更加可持续地建构和发展人工智能。

  • 19
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值