受访嘉宾 | OPPO 数智工程事业部总裁 刘海锋
作者 | 罗燕珊
在蓬勃发展的 AI 浪潮中,各行各业似乎都在积极投入大模型。由此我们更想探讨,企业之所以追逐大模型,是基于真实的业务需求,还只是跟风效仿?
我们试图着眼于大模型风起云涌的智能手机领域,从一位探索者的实践里找寻答案。
在 2023 年之前,刘海锋在 OPPO 所带领的团队除了承担 OPPO 云、大数据、推荐搜索、互联网安全的技术工作,还专注于打造小布助手这款个人 AI 产品,并不断迭代升级技术栈。
从最初使用垂域数据和 FAQ 进行检索,到引入神经网络提升长尾问题应答能力,实际上过去这些年,对话系统也逐渐形成了一套标准的架构范式,包括语音识别、意图理解、槽位填充、对话管理和生成等等。这种架构成为全行业的标准范式,在包括 Apple、Google 在内的大公司里已经稳定运行多年。
然而,自从 Transformer 模型问世后,许多公司开始尝试预训练方法,以便更准确地理解和回答一些长尾问题。
2020 年,OPPO 内部的认知计算部门已启动预训练语言模型的探索与实践。据 InfoQ 近日与刘海锋交谈了解,当时做预训练模型的初衷是应对那些无法通过常规方法回答的长尾问题,或者处理一些比较自由的、多轮的闲聊对话。
“那时候预训练模型并非承担主力任务的角色,大约有 5%~10% 的问题可能会被引导到它这儿,它更多是做一个补充,做深层次的问答。”
然而,这样的技术栈也带来了现实的问题,整个系统变得相对复杂,包含多路问答的解决方案,却没有完美地解决所谓的对话问题,且距离认知智能还很遥远。
在这个背景下,OpenAI 蹚出了一条新的路线,通过 ChatGPT 这样的产品,展示了用更简单的架构、利用大模型来生成所有问题答案的可行性。
因此,时至今日,对手机及智能终端厂商而言,大模型已经不是选择题,而是一道必答题,大家纷纷探索如何通过大模型让设备里的“智能助手”变得更智能,因为这很有可能成为未来终端厂商的核心竞争力之一。
11 月 16 日,在 OPPO 2023 开发者大会上,刘海锋宣布 OPPO 正式推出自主训练的安第斯大模型 (AndesGPT)。
实际上,在今年春节后,刘海锋便组织团队迅速推进 AndesGPT 项目,目前已迭代了多个版本。OPPO 主要训练了三大类规格的模型——AndesGPT-Tiny、AndesGPT-Turbo 和 AndesGPT-Titan,涵盖十亿至千亿以上多种不同参数规模的模型规格,灵活满足不同应用场景的需求。
刘海锋强调,无论是做 AI 大模型,还是任何系统和产品,其核心特性和功能通常是由公司对用户的主张、过去产品的经验积累等方面所决定,而不是凭空定义。
而对于 OPPO 而言,AndesGPT 更多源自智能语音助手“小布”的积累,其应用载体也主要是小布助手这一 C 端产品。据悉,近 5 年来,在构建月活过亿的 C 端产品小布助手的过程中,OPPO 已经完成了大规模高质量语料数据的积累。
基于此,OPPO AndesGPT 的三个核心技术特性分别为:对话增强、个性专属和端云协同。
核心能力方面,AndesGPT 聚焦在四个方向:知识、记忆、工具、创作。
“虽然大模型和产品在现阶段仍有不足,也经常会遇到 bug,但团队致力于不断迭代和改进。”刘海锋表示,目前在大模型的实际应用上,更多的还只是“迈出了第一步”。
事实上,OPPO 团队在两年前就开始对预训练语言模型进行探索和落地应用,自研了一亿、三亿和十亿参数量的大模型 OBERT。
目前业内模型训练中主要面临的挑战有两个:效率和成本。效率方面涉及如何在有限的资源内高效进行模型训练,而成本方面则关注如何最大程度地发挥每颗 GPU 的价值并降低训练的总成本。
刘海锋表示,受益于团队此前在“智能推荐”、“小布助手”场景里积累的经验,以及在大规模系统架构、云计算以及分布式系统方面的积累,使得 AndesGPT 项目的 Infra 优化有经验可循,再借助混合云架构,灵活解决算力资源瓶颈问题。
训练大模型只是整个过程的第一步,关键在于将其应用到实际产品中,解决性能和效果方面的问题,形成一个持续迭代的闭环。
那么,AndesGPT 如何进行创新和演进,如何变得更好?刘海锋以“记忆”能力为例展开说明,比如安第斯大模型“一定要提供 stateful API”,要提供无限的上下文能力。
但实践过程中,团队发现面临这样一个问题,即当上下文越来越长时首次推理的延迟很高。为解决长时记忆带来首字推理延迟的技术挑战,他们把一些先进的方法应用上,比如 FlashAttention 和后来的 PagedAttention(由加州大学伯克利分校提出)。如此一来,模型的应用性能是有得到提升,效果也有改善。
但这样还不够。刘海锋告诉 InfoQ,他觉得这里面还有更多的发掘空间,他当时跟团队说:“这里面一定有金子。”
在 PagedAttention 的基础上,OPPO 做了技术的演进和扩展,自主研发了长时记忆机制并命名为 SwappedAttention。长时记忆主要包括用户交互过程中产生的交互历史、个人数据,以及从中提取的结构化信息等。
具体而言,SwappedAttention 是通过将内存空间与计算交换、缓存历史的键值对(KV 值)的思路,来大幅减少首字计算量。
同时,SwappedAttention 采用了多层级缓存机制,涵盖了 GPU 显存、主机内存以及通过 GDS(GPU Direct Storage)连接外部存储设备。根据缓存时长、对话频率等策略进行分级存储与交换,以最优化资源利用。
实现场景方面,以处理多轮对话场景为例,随着聊天轮数累积,SwappedAttention 能有效减少对话时首字推理时间,用户可获得更快的系统响应。
而 FileChat 文档对话场景中,可以避免长文本的 KV 值进行重复计算,大量减少计算开销,缩短首字推理时间,并且可提升首字计算的并发度。在非首字的推理过程中,SwappedAttention 可以动态压缩 KV 值,进一步降低显存占用,提升整体吞吐量。
刘海锋表示,上述创新思路其实还是从经典的计算机科学里获得的启发。
“既然 GPU 里可以使用以 page 为单位的 cache,那么一定可以做以会话 /session 为粒度的 cache。既然这个 cache 可以存放在 GPU 内,那也可以将其交换到外部,交换到服务器的内存以及后台分布式系统的内存中。”他进一步解释,这个思路类似于计算机科学中存储层次的原理,有小 cache 就有大 cache,有 L1 cache 就有 L2 cache、L3 cache,它们不矛盾,可以叠加使用。
通过更大的缓存,结合 PagedAttention 算法一起使用,SwappedAttention 最终能够带来 50% 的首字延迟降低,以及 30% 的推理吞吐提升。
毋庸置疑,于大模型研究者而言,优化推理性能是一个需长期解决的问题。刘海锋表示,尽管有了 FlashAttention、PagedAttention 以及 SwappedAttention 等方法,实际上后续还会涌现一系列具有弹性的算法优化机制,以进一步降低推理延迟。
目前,基于 AndesGPT 全新升级的小布助手,已进一步强化端云协同能力,在终端和云端分别部署 Tiny 和 Turbo 模型,根据使用场景和网络状态做智能分流。
刘海锋指出,端云协同,实际上是大模型促使原来智能助理的应用架构发生了改变。具体实现上,是在手机侧部署小模型(AndesGPT-Tiny)、云端部署大模型,然后由智能助理应用程序根据实际情况调用不同的模型。
最初 OPPO 在生产环境使用的模型参数规模大约在十几 B 左右,后来团队发现模型在涌现性方面相对逊色。进行了几次升级之后,目前云上使用的是 70B 的模型(AndesGPT-Turbo),运行效果良好。与此同时,内部还在推进千亿级别参数规模的模型优化(AndesGPT-Titan),目前还没有推向线上。
“我们必须承认所谓大的语言模型,它的核心特性叫做智能涌现。你要想让模型获得涌现能力,参数规模必须要足够大。”刘海锋强调道,今天行业内的一个基本共识是,要达到智能涌现的特性,模型的参数规模可能需要达到 50~70B 才行。因此,如果一些问题是需要智能涌现能力才能解决,那就必须使用云端部署的大模型。
对于模型调用的流量分配,刘海锋表示主要是根据用户场景做判断,比如某个应用总是执行固定的任务,或者处于断网的情况下,一般就会调用设备侧的小模型。再比如某个降级访问的问题,或者是有限场景下的使用,那么在终端侧部署的小模型也是可以解决的。
关于大模型在实际应用中的权衡和选择,刘海锋表示还涉及到功耗、内存等多方面的问题考虑,也是目前业内同行都在积极探索的热点。
整体来看,如今融入 AI 大模型的新一代智能助理产品给基础设施带来了不少新的挑战。
刘海锋指出,与之前大规模的 Web 应用架构相比,大模型的技术堆栈变得更为复杂。过去的架构比较“规整”,可以分为存储、离线数据处理、在线缓存和数据库等等层次,规模大了后也可以采用分布式系统架构,以“scale out”方式横向拓展。
但是对于今天的大模型和智能体应用来说,GPU 的需求变得极高,GPU 取代了 CPU 成为核心计算单元,这使得许多软件问题都需要围绕 GPU 来看。
其次,大模型应用的赋能也分不同的阶段来看。首先是训练阶段,对 GPU 的选择、网络基础设施和整体容错能力都有很高的要求。例如,在训练过程中需要定期有 checkpoint,将参数写入底层存储。这对存储系统提出了新的挑战,需要定制一套系统来处理从 GPU 加载数据到分布式内存存储的问题。
第三,一旦模型训练完成并推送到线上,就需要优化推理性能,以实现更有效的 GPU 利用。如前文所述,推理优化也是一项长期工作。
第四,在推理之外,模型的外围系统比如检索增强也需要格外重视和持续构建。刘海锋进一步表示,向量数据库是目前比较熟悉的一种解决方案,但随着模型上下文窗口的增大和模型能力的提升,他认为对于向量数据库的依赖可能会降低,也许会催生出新的系统架构,更易于使用或功能更强大,以弥补大模型本身的不足。
最后,他认为前端应用也会有较大变化,因为前端应用可能需要接多个模型,需要考虑多个模型的分流,这涉及到整体的判断逻辑。
总的来说,刘海锋认为大模型时代使得软件架构以 CPU 为中心变成以 GPU 为中心,从训练到推理,再到增强和前端应用,不同环节的技术架构都与移动互联网时代有着显著的不同之处。伴随这波浪潮而来的是,许多技术挑战都将变得更加硬核。
随着 AndesGPT 项目的启动,刘海锋对团队的人力投入和资源配置进行了调整。目前,内部的大模型团队主要由以下团队构成:
值得一提的是,今年春季后,刘海锋迅速成立了“安第斯 AI 安全实验室”,专注于为大模型和人工智能提供安全保障。其指出,大模型的安全性与保障应用程序安全的工作有很大的不同。
传统的应用安全工作主要关注 App 是否恶意,是否存在滥用行为等问题。然而,大模型和 AI 的安全性问题涉及到另一个维度,比如生成的内容是否包含敏感信息以及是否符合价值观等方面的考量。
同时,大模型安全需要处理的数据量也更大了。原来的“移动互联网安全”主要处理用户输入的数据,例如上架的应用、搜索查询等。然而,对于生成式 AI 的安全性而言,不仅需要处理输入,还需要关注输出。而输出的数据量通常比输入大一到两个数量级,对返回的内容都需要进行额外的处理工作。
因此,AI 安全,尤其是生成式 AI 的安全性,也是接下来技术工作者需要重点解决的一个难题。
除了安全挑战之外,随着大模型项目的推进,刘海锋对于人才能力挑战的问题深有体会。他认为,首先,新一波 AI 浪潮对产品经理能力提出了更高的要求。现代 AI 产品往往是技术驱动的,因此 AI 产品经理需要更“懂技术”才能进行高质量的决策和判断。
其次,对于研发同学,单纯懂算法是不够的,还需要对算法和架构有深入的理解。AndesGPT 团队成员要么是既熟悉算法又懂工程和架构,要么是双方能够很好地协同工作。
由于大模型存在许多不确定性,其可解释性还是个开放的问题。因此一个新的模型上线后,不能用单一指标来对整体效果做评判和反馈,且评测周期长,维度也比较复杂。刘海锋认为,大模型测试领域可能会出现新的技能和岗位需求。
为了适应新兴技术和需求,OPPO 会在实践的过程中灵活调整团队,比如尝试让技术研发同学担任产品负责人的角色等。“我觉得在新的时代,研发同学的组织方式也会有一些变革,它会跟原来不太一样。”
据悉,为了更好地促进大模型及智能体生态发展,AndesGPT 后续将开源智能体框架,便于开发者打造自己的智能体。
此外,AndesGPT 团队也在开发一款个人知识管理智能体(简称 PKA)。用户可以把日常工作生活中阅读的文章、文档、文件和笔记上传存储分析, 结合大模型的理解和记忆能力,PKA 就能成为用户的个人知识管家——快速回答问题,这些问题可以是对某个知识点的询问、某篇文章的总结,甚至全局问答。
刘海锋进一步表示,智能体不需要额外安装,而是嵌入到小布助手当中,并分为不同的频道,每个频道涵盖不同的话题或服务,这有点类似于互联网门户时代的频道划分。OPPO 希望开发者和终端用户都能够创作或定义智能体,并互相分享有趣和实用的智能体,推动生态的创新和互动。
今天,互联网大厂和行业巨头纷纷布局自己的大模型,有些还提供公用的服务。但与此同时,许多追求业务领先的企业也会训练自己的模型,在刘海锋看来,这是一个互补的关系,如同混合云架构,它们并不是互相取代的关系。
“如果你用云计算的视角,你可以把大模型看成是一朵 AI 的云,我们还是把高质量的知识编码到这朵云里,然后它去做高性能的推理。所以,从这个角度上看,我觉得很多东西在技术上可能属于不同的话题,但基本的原理实际上是高度一致的。”
未来,刘海锋认为生成式大模型会成为终端厂商的核心产品和技术竞争力,与“拍照”、“自有 OS”并驾齐驱成为三条核心技术赛道。进一步地,智能手机会成为真正的人工智能手机,而 AI 则会无处不在,作为“一个智慧的外脑”嵌入到每一个软件和硬件里。
可见,大模型的进化将会是一次“深入智慧之地”的旅程。而它,才刚刚开始。
领取专属 10元无门槛券
私享最新 技术干货