WAIC 2023 | 百度吴华:大模型时代的 AI 原生研发模式

简介: WAIC 2023 | 百度吴华:大模型时代的 AI 原生研发模式


机器之心编辑部

在机器之心主办的 WAIC 2023 AI 开发者论坛上,百度技术委员会主席吴华为大家带来了精彩的演讲。在活动中,她回顾了 AI 范式的变迁,并重点介绍了大模型时代的 AI 原生研发模式,探讨了新范式带来的机会和挑战。



以下为演讲的详细内容,机器之心进行了不改变原意的编辑、整理。

大家好,很高兴来到开发者论坛,今天我的主题是《大模型时代的 AI 原生研发模式》。

AI 研发模式的变迁

最早的时候,不管是生成式模型还是判别式模型,AI 模型都需要针对每个任务训练一个模型,以此满足应用的需求,而且模型之间的能力不能共享。

随着大模型以及预训练技术的发展,现在存在 AI 研发模式的一种变迁,比如像 BERT 出现以后就有了两阶段的研发模式:

  1. 阶段 1:用通用数据,可以是文本数据,也可以是多模态数据训练数据,通过自监督学习,训练一个具备基本理解与生成能力的大模型。
  2. 阶段 2:在这个基础上,针对不同的应用做有监督的精调,大多数情况下这个模型把所有的参数都精调了,在应用当中去用。


精调研发模式的特点是模型之间可以共享一些基本的能力,比如基本的文本理解和生成能力、多模态能力。但是用户反馈很难直接反馈到底座大模型上。

随着这两年通用大模型的发展,大家觉得可以看到通用人工智能的曙光。我们可以训练一个通用大模型,特点是为大多数任务提供通用支持,比如基本的文本理解、创作能力、推理能力等;通过外部接口很容易拓展能力,比如对于不同的应用可以在通用模型基础上,通过插件或者其他的方式,甚至不需要微调就可以满足应用的需求;基于大模型底座,整个生态体系都在里面完成的话,用户反馈就可以直接优化通用模型。

这是一个非常大的变化。

大模型为什么越来越通用?

先看下人类的学习方式。人出生的时候是通过基因设置形成神经元连接模式和学习机制,虽然基因不能完全定义神经元连接的强度、密度,但是神经元的连接模式是通过基因设定的。有些动物是一出生就具有了一生所有的能力,但人不是,人有一个漫长的童年期,通过童年期建立神经元的连接强度。

还有一个人区别于其他动物的主要因素,是人的祖先留下来的各种经验、知识可以通过文字或者其他模式传承的,不需要从头积累经验,祖祖辈辈留下来的知识可以通过各种媒介存储、传承,所以人变得越来越聪明。

通过这样的方式,尤其是人学语言的时候有一个语言相关的大脑皮层,加工语言的时候不只是语言皮层,其他的皮层也参与相互作用,使得人类学语言的时候更加高效。同时在后天的学习过程当中,人与环境不断交互,学会了阅读、写作、推理等等各种能力。

大模型的学习方式和人类学习方式很相似。首先要构建 “先天” 的学习机制,比如我们有大模型神经网络并行算法,这里面有很多网络的并行框架以及深度学习的框架。在此基础上构建 “语言大脑皮层” 的机制,比如说基于文本自监督的预训练,百度有 ERNIE,OpenAI 有 GPT 等模型。在这个过程中,我们可以把网络上或者每个企业存在的公开通用知识、专有行业知识都学习到模型中,类似于人类学的各种知识的传承。

这个基础上再通过 “后天学习”,在环境中不断获得反馈,构建理解、生成、推理等能力,比如说翻译、阅读理解、创作、对话和解题等,甚至还能做一定的规划。

其实这种新的大模型学习方式和人类学习的方式类似:首先有一个机制,在这个机制的基础上可以构建一个底层的通用能力,比如基本的理解、规划、推理、写作能力。在这个基础能力的上,通过跟环境不断交互获得反馈,不断提升自己做任务的能力。这就是为什么大模型现在越来越通用的一个基本底层因素。

有了这样的通用大模型以后可以看到雨后春笋般的大模型应用,比如文本理解、文本生成甚至代码生成…… 即使通用大模型是一个文本模型,也可以很容易通过通用大模型调用多模态能力,大语言模型也是可以扩展到多模态的模型。

这个基础上,以前大家觉得大模型是一个直觉思维模型,很难做推理、推断。但是通过对大模型不断持续训练,发现它可以做数学题,可以做各种的推理,甚至做决策。

AI 原生研发模式    大模型具备基本通用能力后,我们开发了新的研发模式,就是 AI 原生的研发模式。

简单介绍一下现在基于大模型的几种研发模式:    

  1. 在大模型基础上精调,对应每个任务有一个不同的模型,好处是针对不同的应用可以做比较特定的精调,但是反馈很难到底座大模型里面。
  2. 大模型参数不变,针对不同的应用加一些参数,或者说特定应用的一些参数,在这个基础上满足应用的需求。
  3. 在通用大模型的基础上直接满足任务应用的需求。

  今天重点讲的是第三种,叫做 AI 原生的研发模式。    如何充分利用大模型的能力?大模型是不是不能直接满足我的需求?有一些专业数据如何被充分利用?如果有一个大模型可能没有那么厉害的能力,比如计算能力,我怎么补充大模型的计算能力?如果有补充大模型能力的工具,如何和大模型结合?    大模型时代的 AI 原生研发模式,有点类似于操作系统。不管是 PC 时代还是移动时代,操作系统底座有几个比较大的功能,比如文件管理、存储管理等,这些基本能力是操作系统提供的。在这个基础上比如要完成 PPT、Word、Excel 都有不同的软件满足特定的需求,但它们共享了操作系统里最基本的能力。    大模型也可以这么理解,有了大模型以后,这个大模型可以提供一些基本功能,比如大模型原生的一些能力,也可以有阅读理解能力、分析能力、写作能力、推理能力等等。除了原生能力,也可以提供一些基本工具的能力,比如文档解析、向量索引建库等。

怎么用现有大模型的这些能力构建工具,或者已有的一些工具怎么来跟大模型结合满足需求呢?

有这个基础以后,是可以利用基础工具建设新的能力,或者利用已有的工具来增强大模型。比如说文档检索,利用现在大模型的能力是完全可以重构的。    现在大模型大家普遍理解就是必须得非常大,其实每个人心中的 “大” 是不一样的。除了利用基础工具建设新能力以外,还可以利用以前的数据库,也可以利用以前的工具满足需求。    举个例子,比如在 “文心一言” 里面,有一个插件叫 ChatFile,它是支持 PDF 和 Word 文档的问答和摘要的长文档能力。大家都说长文档建模非常重要,我们 ChatFile 其实就是支持长文档的阅读能力和摘要能力。这里需要的是通用模型原生的能力。在做 ChatFile 插件的时候,既调用了大模型的摘要能力、阅读理解能力,有时候还需要一些传统工具的帮助,比如文档解析。相当于是把文档解析传统的工具和大模型的原生能力结合在一起,这就变成了现在新的 AI 原生的研发模式。    我们还可以看一个具体的例子,比如用户上传了一个汽车说明书,针对这个说明书可以问问题。比如汽车的尾门怎么打开,汽车怎么快速连接手机,基于上传的文档,大模型就可以回答用户的上述问题。以前做这类问答准确率蛮低,但是因为大模型有这样的原生能力,所以支持这样的文档阅读和问答。    用户如果下载一个英文的论文,文心一言也是可以用中文来提问,回答也可以是中文的,这种多语言的能力也是大模型原生的能力。    总结来说,就是 ChatFile 这样一个插件,利用了传统工具和 AI 原生能力,就可以满足长文档的问答和摘要需求。

再举两个例子。一个是有声小说的应用:根据用户的需求即时生成小说,并用语音合成朗读。生成小说是 AI 通用模型写小说的能力,比如从头写或者续写,写完以后配音,配音是有角色,要有角色不同的语调,角色分析都可以通过原生能力来满足,在这个基础上配上语音合成 TTS 的工具。    这里面通过插件可以调用多模态的能力,以后底座模型本身就具有多模态的能力。通过这两种的结合,可以很好满足用户的需求。    另一个例子是智能问答,智能问答和 ChatFile 是一种,但是不同领域,比如说能源、工业制造等领域有很多的专业文档,很多时候要基于这样的内容做信息检索来问答。这个时候现在文本检索和建库,也可以利用大模型做端到端的建库。以前都是通过倒排索引等方式,现在完全可以通过大模型,比如说千亿大模型建库可能几十亿的参数就 OK 了,就可以建立端到端的检索库,作为一个外部的插件,就利用通用大模型的理解分发能力去整体结合。同时在通用模型里面,还可以利用通用模型其他更多的能力,实时回答用户问题,所以专业数据也很容易充分被利用。

AI 原生的研发模式带来哪些机会?

刚才我们举了很多例子,总结一下,无非用到了大模型原生能力,我们经常容易叫做函数调用或者接口,这种能力是可以通过接口的形式开放出来的。比如来了一个需求,不同的需求需要不同的能力,一种是大模型已经具备的 AI 原生能力,通过函数调用的方式就可以轻易获取。同时满足一个需求的时候,以前就已经有一些工具了,比如文档解析的能力,完全可以结合通用模型一起使用。    调用方式可以是固定模式,比如 ChatFile 长文档的问答和摘要能力,就可以把整个流程用一个固定调用的方式写成一个 script 放在描述前面,就可以满足用户的需求。    另外一种方式,对于复杂的模型可以充分利用大模型规划的能力,现在大模型有一定的规划能力,不需要写一个脚本,只需要告诉它 “我要干什么”,大模型内部就会生成一个完成复杂任务的 script。这样的话一个任务,模型自己就会通过 agent 生成不同函数调用的流程,以此满足需求。    对于开发者来说不需要想流程是什么样的,只要告诉模型需要什么样的功能,功能之间的关系到底是什么,可能就不需要去想他们之间的先后顺序、逻辑关系等等。这就是 AI 原生研发的 “自适应模式”。

从整个流程来看,有了大模型,既提升了传统应用的研发效率,也提升了满足这种应用需求的可能性。以前满足相关需求的话,准确率可能也就 60% 到 70%,但是通过功能的组合、大模型的基础能力,可能可以到达 90% 以上。把以前不能干的事情,现在变成可能了。所以 AI 原生研发模式蕴含了很多机会。

AI 原生研发模型也带来很多挑战

首先是思维模式的改变,大家都想拥抱大模型,也有一些担心,其实很难固定是一个大模型还是小模型或者怎样的模型满足需求,但是最重要的是要充分发挥大模型的优势,提升生产效率,这是最本质的。AI 原生的研发模式带来根本性的变化,传统功能并不是没有用,而是怎么跟 AI 原生能力有机结合才是需要去关心的一个问题。    支持大模型基础设施的建设也是一个挑战。比如算力、大模型系统本身要提供的原生能力的建设,以及围绕这些能力建设的工具链。最重要的大家会忽略的一点是反馈闭环,反馈闭环还是非常重要的。你有一个大模型,把能力都输入在里面,使它通过环境交互不断提升,这一点非常重要。为什么 OpenAI 可以进步很快,因为它有很多的应用在这上面。    最后是模型的安全性和可解释性,这也是应用中非常需要的能力。    今天就讲到这里,谢谢大家!

相关文章
|
3天前
|
人工智能 搜索推荐 决策智能
【AI Agent系列】【阿里AgentScope框架】1. 深入源码:详细解读AgentScope中的智能体定义以及模型配置的流程
【AI Agent系列】【阿里AgentScope框架】1. 深入源码:详细解读AgentScope中的智能体定义以及模型配置的流程
35 0
|
4天前
|
数据采集 存储 人工智能
【AI大模型应用开发】【LangChain系列】实战案例4:再战RAG问答,提取在线网页数据,并返回生成答案的来源
【AI大模型应用开发】【LangChain系列】实战案例4:再战RAG问答,提取在线网页数据,并返回生成答案的来源
28 0
|
4天前
|
数据采集 存储 人工智能
【AI大模型应用开发】【LangChain系列】实战案例2:通过URL加载网页内容 - LangChain对爬虫功能的封装
【AI大模型应用开发】【LangChain系列】实战案例2:通过URL加载网页内容 - LangChain对爬虫功能的封装
14 0
|
4天前
|
人工智能 Python
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
9 0
|
4天前
|
人工智能 监控 数据处理
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】1. 快速上手数据集与测试评估过程
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】1. 快速上手数据集与测试评估过程
18 0
|
4天前
|
人工智能 监控 数据可视化
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】0. 一文全览Tracing功能,让你的程序运行过程一目了然
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】0. 一文全览Tracing功能,让你的程序运行过程一目了然
8 0
|
4天前
|
人工智能 API 开发者
【AI大模型应用开发】0.2 智谱AI API接入详细步骤和简单应用
【AI大模型应用开发】0.2 智谱AI API接入详细步骤和简单应用
16 0
|
4天前
|
数据采集 人工智能 数据可视化
【AI大模型应用开发】【LangChain系列】4. 从Chain到LCEL:探索和实战LangChain的巧妙设计
【AI大模型应用开发】【LangChain系列】4. 从Chain到LCEL:探索和实战LangChain的巧妙设计
17 0
|
4天前
|
存储 人工智能 JSON
【AI大模型应用开发】【LangChain系列】3. 一文了解LangChain的记忆模块(理论实战+细节)
本文介绍了LangChain库中用于处理对话会话记忆的组件。Memory功能用于存储和检索先前的交互信息,以便在对话中提供上下文。目前,LangChain的Memory大多处于测试阶段,其中较为成熟的是`ChatMessageHistory`。Memory类型包括:`ConversationBufferMemory`(保存对话历史数组)、`ConversationBufferWindowMemory`(限制为最近的K条对话)和`ConversationTokenBufferMemory`(根据Token数限制上下文长度)。
12 0
|
4天前
|
JSON 人工智能 数据库
【AI大模型应用开发】【LangChain系列】1. 全面学习LangChain输入输出I/O模块:理论介绍+实战示例+细节注释
【AI大模型应用开发】【LangChain系列】1. 全面学习LangChain输入输出I/O模块:理论介绍+实战示例+细节注释
33 0
【AI大模型应用开发】【LangChain系列】1. 全面学习LangChain输入输出I/O模块:理论介绍+实战示例+细节注释