开源和闭源之争,在大模型时代依然延续着。前不久,百度创始人李彦宏在内部讲话中发出“开源模型会越来越落后”的言论,再次将这一话题引爆。
不仅有许多业内人公开提出不同看法,似乎还接连迎来市场层面的“回应”:Meta 时隔两日发布性能直追 GPT 4 的开源大模型 Llama 3.苹果、微软又各自开源了针对手机等移动设备的语言模型 OpenELM 和 Phi-3 Mini。
然而,尽管开源模型在今天的崛起有目共睹,其背后的问题依然不可回避。由于本身的黑盒属性,开源的“众人拾柴火焰高”优势并不能完全显现在大模型上,甚至成本和效率更受影响。那么对于各个行业的厂商来说,身处如今的大模型市场,该做出怎样的选择?
带着这一问题,InfoQ《极客有约》特别邀请了零一万物开源负责人林旅强担任主持人,与 Data Strato 副总裁史少锋、华为 AI 科学家张敏、LLMFarm创始人 & CEO 宜博, 在 AICon 全球人工智能与机器学习技术大会即将召开之际,一同探讨开源与闭源模型的现状、差异及未来发展。部分亮点如下:
整体开源落后于闭源,以 GPT 为代表大概是一年时间的差距;
模型能力的差异不在于开或闭,而是背后的人与团队;
自建模型还是购买第三方服务,企业要根据各自的商业场景选择成本和合规需求最适合的部署方式;
企业使用大模型可能不止一套,会像今天使用云一样是混合架构;
正确认识大模型的能与不能才是避坑最好的条件。
在访谈的第一部分,四位专家分别对开源、闭源大模型的成本能力和效益进行了分析;第二部分分析了两类大模型面临的技术和合规挑战;第三部分则是从实际应用与效果角度进行了分析。以下为访谈实录,经编辑。
开源、闭源哪家强?
林旅强:目前从模型能力的角度来说,开源阵营和闭源阵营之间整体是什么样的情况?
张敏:大模型是从 ChatGPT 热起来以后,被越来越多的人和公司关注到,现在看是有开源、闭源之说。闭源的代表是 OpenAI,以及 Claude 也有一部分模型是闭源的。开源来看,从 Llama 1 到最新的 Llama 3.效果越来越好,大家也越来越认可这些模型,最近看到 Meta 的 400B 大模型,效果已经和 GPT 4 非常接近了。从开发者角度,我们希望能看到更多效果更好的开源模型,这实际上对整个大模型领域的繁荣可能会有更多帮助。
宜博:个人认为,整个开源和闭源社区的模型分为三个阶段:小于 GPT 3 或者 3.5 的,接近于 GPT 3 和 3.5 的,接近于 GPT 4 的。去年上半年, OpenAI 发了 GPT3.5 和 GPT 4 之后遥遥领先于整个开源社区;到去年下半年时,开源社区的情况有了很大改变,发布了很多接近于 GPT 3-3.5 能力的新模型,今年上半年开始有一些部分能力已经靠近 GPT 4 的开源模型。
整体来讲,开源社区当前还是落后于闭源社区,如果以 GPT 为标准呢,大概是一年时间的差距。开源社区其实一直处在追赶闭源社区的态势,但这种差距在缩小。今年上半年又发了 Sora,开源社区开始追 Sora,到现在为止虽然做了很多努力,但效果还差很多。
史少锋:刚才两位老师发表了他们的观点,我觉得整体上大家的感觉差不多,就是一开始闭源模型遥遥领先或让人眼前一亮,但随着更多的开源模型被放出来,开源的能力也在快速跟上。作为模型使用者,今天我们主要还是通过 API 的方式来用大模型,但现在新的开源模型能力越来越强,同时对计算资源的要求在不断降低。我们期待不远的将来,开源模型可以在本地跑起来,能够完全私有化地去支撑一些应用,这对我们有很大的吸引力。
林旅强:那什么因素会严重影响开源和闭源模型的能力差异呢?
针对这个问题,我个人认为开源和闭源模型的能力差异,重点不在于它开源或闭源,而是它的研发团队的能力差异。至于做出来的模型要开源还是闭源,是进一步从该公司的整体商业模式去考虑的点。之前 Llama 推出的时候,我非常兴奋,觉得终于有人运用开源来突围闭源的大模型了,因为训练模型成本实在太高,要开源本来就不容易;虽说至今二者仍有些差距,但如果不开源就没机会给开发者和产业界有另一种选择了。
史少锋:的确,模型会很依赖于开发团队的工程能力,并不在于开源还是闭源。今天的开源模型也并不是真正的开源,正如百度创始人李彦宏所说,大模型本身就是一个黑盒子,并不能指望社区有多少贡献。除此之外,模型还依赖于掌握的数据语料质量、丰富程度以及算力规模。这也是为什么今天我们看到,只有非常大型的公司才能开发出让整个业界为之一亮的大模型。
宜博:我认同开源和闭源对模型能力的影响并不在于形式,而在于背后的人,和背后的团队所持有的资金、算力、数据。
林旅强:大模型跟开源软件有一点很不一样的地方,就是开源软件有可能因为社区不断有代码贡献而变得更好,但现在业内所谓的开源大模型则是把权重 open 出来,没办法以开源社区贡献上游的模式让算法和数据质量更好,确实很依赖出品团队的能力,如数据、框架算法调优、算力门槛还有最新方法的挑选。所以在我们看来,模型能力的差异不在于开源或闭源,而在于团队的人才密度有多高。
张敏:数据、算力和算法对大模型都至关重要,算法是与团队是强相关的,这对于模型最终效果的提升是非常重要的。
林旅强:刚才我们讨论到开源、闭源模型的能力,那它们的差距到底是逐步缩小还是增大?开源是不是会越来越不好?闭源越来越领先?
宜博:我认为差距并不是持续扩大和缩小,而是永远在动态平衡变化的状态。
林旅强:那照你的描述是不是永远闭源走在前面,开源在追赶?
宜博:这一点其实是由行业现状决定的,比如在服务器领域,Windows 现在很难追得上 Linux,iOS 有一些领域也追不上安卓。大模型领域是由 OpenAI 开始主导的,所以在其领头羊位置不变的情况下,不管是闭源还是开源的,只要落后于 OpenAI 都是在追赶。
林旅强:所以这个问题应该调整为,GPT 跟其他模型的能力是逐渐缩小还扩大。
史少锋:站在百度文心一言的角度来说,我理解他们在思考的是有没有必要做开源,开源模型并不一定能像普通开源软件那样有“众人拾柴火焰高”的效果,反而要花费更多的时间和精力去做各种合规、对外发布、问题收集等流程。在这种情况下,他们认为开源没有必要,闭源的话效率更高,可以使团队更加聚焦于训练下一代模型。某一天 OpenAI 把大模型开源了,是否能代表开源打倒了闭源呢?我觉得也不是。
林旅强:那从成本、能力、效益分析的话,部署自己的大模型与使用第三方大模型在初期成本上有什么不同?长远来看,自建模型与购买模型服务在成本上又会如何变化?
宜博:我们做了很多轮实践发现,假如第一次去验证模型,用 API 调用是最划算的,因为 API 用量很少。但如果要跑数据,一定要用自己的服务器和开源模型去做,否则成本太大了。比如我们曾经有个项目,大概算下来,全部跑 API token 比自己购买服务器的成本要贵 200 多万。再就是推理部署的未来环境,用户量大到一定程度后会有个临界点,可能就用自己的服务器比较划算了。所以,要根据大家各自使用的场景去选择不同的成本策略。
张敏:从我们对接的客户来看,他们是更希望通过本地的私有化部署来做业务支撑,这对数据安全是非常有好处的。
史少锋:站在用户的角度,我觉得今天的 SaaS 大模型服务已经非常便宜,如果自己去搞部署,那成本就高了去了。目前 Open AI 的价格不代表以后,大家都在卷,很多价格会更低,国内甚至有免费开放给公众使用的。对于 To B 领域,可能第一考虑的是数据安全,To C 没有看到用私有化部署的。
林旅强:确实,除了部署成本外还有一些隐性的成本,比如客户是不是愿意模型平台把他通过 API 所调用的数据拿出去再训练。个人去使用的话, API 确实门槛比较低,现在各家的价格都还算是比较便宜。
那如果从总体的成本控制方面,企业应该如何去选择适合自身的大模型策略?
我个人认为要看企业本身想怎么用大模型,如果单 API 就能够解决且量没有很大的情况下,先去把 API稳定地搞起来;但如果要结合非标的数据场景去做,那只能加上开源的部署。
宜博:企业真正在用的时候,一般是一个递进的验证过程,首先用最便宜的 API 去验证 POC,甚至直接在 ChatGPT 上免费验证,之后如果有开源的部署需求,再去验证场景。过程中需要企业自己想清楚,如何在满足场景的情况下选择成本和合规需求最适合的部署方式。
林旅强:我想补充一点,之前有人问国内是需要私有部署的多还是调 API 的多,我就说要先看合规问题。因为现在有政策要求用国产服务,但还有一些人是用了“套壳网站”调外网大模型的 API 。
张敏:大模型也有参数量的大小区别,我们真正在给客户在做应用时,还是要根据业务领域的效果来看。在百度的文心一言里,也是用大模型和小模型一起来支持用户需求。
史少锋:企业使用大模型后,可能也会像今天使用云一样是混合架构,根据不同需求一部分可能会放在公有云上,一部分放在私有云。为了确保应用端的用户无感,可以把 SaaS 版的大模型作为一个 Plan B,相当于做了一层保护机制。综合而来的话,以后企业可能不止一套大模型。
林旅强:我也想补充一下,现在所谓的大模型到底多大?从成本能力与效率分析来讲,我们也得把大模型分为不同档次。虽然 scaling law 是存在的,但越大的模型性价比越往下;而小模型现在要做出效果的门槛其实也很高。目前不管多大的模型都有各种不同的成本要去考虑,所以最终还是需要回到具体场景和商业产品的本质来看。
技术与合规挑战
林旅强:在技术实现层面,自建大模型与采用第三方模型在技术难度和支持上有何不同?
宜博:现在自建大模型一般有几种难度:第一种是买一个小机器放在办公室,如果要买高算力机器放在机房或者自建机房,难度指数是很高的;第二种,有了算力去部署时,也会遇到各种各样的问题,如推理框架选择、速度、机器使用等,这些对于没有专业技能团队的非技术企业消耗很大,过程中虽然所有技术人员学了很多东西,但公司的环境部署和上线成本非常大。
史少锋:我觉得这个问题并不是很精确,自建大模型和用第三方模型的技术难度和配置不同。今天大家都在用第三方模型,但自建大模型还是偏少,大家更多还是用外部做得好的模型,区别就是自己部署的大模型和第三方 SaaS 大模型之间的区别。就像刚才宜博说的,自己去部署要操心的是方方面面,包括硬件采购、运维、算力扩容、模型部署和升级、调优等。相较而言,用第三方模型更简单,很多代码拿来就可以用,但这个情况也在逐渐改变。
随着开源生态越来越健全,软件也越来越丰富,下载速度可能更快,以后笔记本都能跑一些参数不太大的模型。在并发量或需求量不太大的场景下,自建大模型不会比第三方模型复杂太多,gap 会逐渐缩小。
张敏:用开源大模型去做部署就像站在巨人肩膀上,会走的更快。自建则需要具备很多前提,如数据、算力、算法和好的团队,成本可能要远高于使用开源。
林旅强:自建大模型的难度比较大,技术实践已经是一道门槛,像开发者本身的能力水平、背后商业机会以及交付能力等。直接采用第三方模型,也需要运维、部署的知识能力和资源投入。所以企业还是要按照能力和成本考量去选择。
另外,我们都知道大模型可能涉及到数据安全和个人隐私的保护。在自建与第三方模型使用中,数据安全与隐私保护分别面临哪些挑战?大家怎么去做呢?最简单的是,担心就全部私有化部署,如果数据不需要任何安全和隐私保护,就全部调 API。也就是说,还是从业务角度去选。
宜博:实际上我们会遇到几种情况,第一种情况就是直接调用闭源模型的 API,他们号称数据不会被拿去训练,但实际经常会发现数据被使用了;第二种是当你用三方算力平台训练模型时,也会发现有自己训练数据被拿去的情况。大家知道现在监管非常严,内部虽然保证数据安全和隐私,但实际上做合规很耗精力,面临的细节挑战还蛮多。现在整个落地量不大,所以问题还没有那么凸显,但我认为未来会逐步变得重要。
史少锋:针对大模型,我认为不管是自建还是第三方、私有化部署还是公有,都应该足够重视数据安全和隐私保护。即便自建大模型,训练时没有识别出数据隐私,也可能导致信息泄露。而开源模型正因为要开放给众多用户,在安全和隐私方面也可能做得很好。Meta 发布的 Llama 3.就花了很多功夫在多个层次进行安全检测。
这就像我们经常讨论的,闭源软件安全还是开源软件安全?闭源软件可能因为黑客看不到源代码,所以找不到安全漏洞,但不为人知的漏洞可能会存在更长的时间;开源软件貌似因为代码开放容易被抓到漏洞,但因为被很多人盯着,促使其在不断地提高安全性,长久来说可能反而做得更好。
张敏:数据安全对于大模型来说确实非常重要,训练时会牵涉到用户的隐私数据,抓取也可能存在攻击性数据,从而导致输出问题。另一方面,即使大模型做了私有化部署,使用过程中产生的数据也需要做安全保护。
林旅强:再补充一个点,很多人在讲数据安全时并没有考虑到跨境传输。现在出海很热,实际应用来讲可能每个地区对于数据跨境的要求不同,在各个市场各自部署的成本也就更高。合规不只要考虑到中国,还有客户所在的国家,像欧盟、美国都会有相关的数据法规。
实际应用与效果
林旅强:利用开源或闭源大模型解决实际业务场景,在部署过程当中有哪些区分?大家分享一下踩过的坑,也教教怎么避坑。
宜博:第一个观点是尽量用 RAG,不要一上来就做 SFT 训练;第二个是尽量不要一上来就用 Langchain,要花大量的时间去学习未来 90% 都用不上的代码。
张敏:我们去跟客户做支撑的时候,需要把用户场景和数据越早明确下来越好,这对于我们的方案设计和模型选择都非常重要。
史少锋:关于大模型在具体业务场景的避坑,我觉得还是要实践出真知,有一套针对自己场景的测试数据集,因为大模型过于通用,并且也会升级。我们想到的办法是可以用另一个更高水平的大模型来对多个模型的输出打分。建立一套测试体系,对于不停迭代模型去提升结果准确性很有必要。
林旅强:我觉得要能够正确认识大模型能够为你解决什么问题,作为避坑的前提条件。就像张老师刚刚讲的,很多客户现在误以为大模型跟神仙一样什么都能干,这其实是有问题的,大模型只是在某一些方面确实做得比过去好很多,甚至比人类强。但我们还是要把业务流拆解出来,哪部分去接入大模型?能够做什么?怎么解决幻觉问题?RAG 好在哪里、难在哪里?也绝不是那些开源数据集测评的打分越高代表越好,还是得从具体场景切入,认真把内部评测标准搞好,才会知道坑在哪里。所以我觉得,正确认识大模型的能与不能才是避坑最好的条件。
现在线上有个问题,即使训练内部模型也需要对涉及用户的数据进行脱敏,在这方面有没有一些比较好的工具或经验?各位老师实际有没有接触过用户的数据,以及会用什么方式把用户的数据脱敏?
史少锋:我们本身就是做数据治理,也调研了市面上很多数据平台在这方面的做法。成熟的数据平台都有一套数据合规方面的功能体系,其次会通过 AI 去识别数据中的敏感信息,在导出时提醒用户,还有一些敏感信息打码、用户访问 policy 以及数据溯源的配合功能。对于一些自建的大数据平台,是借助工具和统一平台去数据溯源、定义用户访问权限,来把风险被控制到最低。
宜博:这块我们做的比较少,一般的客户数据就在本地或者企业内部查询了,脱敏拿出来的情况还比较少。
张敏:我们这边做的更多是回复角度方面,如果涉及到敏感内容的话,会对回复做过滤处理或者换一种方式去回答。
林旅强:那你怎么知道它是敏感的?
张敏:我们会做一些检测,如果问题本身涉及到敏感词,就需要做过滤和管控。
史少锋:其实常用常见的 PII 信息是有一套正则规范的,身份证号码、Email、社保号等都有,即便是文本型的识别也并不是特别难。
林旅强:未来开源模型如何能利用好社区优势?有哪些方向和趋势?
开源确实比较能实践社区的方法,闭源提供 API 的就只能是用户。在我看来,当前的“开源”大模型并不是真的把数据或训练代码开源出来,而是把训练的结果也就是权重给 open 出来,海外也有称为开放大模型的。可是,它又不像是闭源软件的二进制,开发者又能基于开放大模型来做二次开发,例如 SFT、继续预训练等,情况有点介于软件开源和闭源光谱当中的中间态。因此,开源模型仍然有一定的被二创的空间,闭源模型则不太容易这样操作,所以我认为,即使开源大模型没有开源软件那么开放,但开源模型社区的优势就是可以有很多二创。
刚刚说大模型太热,如何解决预期过高的问题?业务方老板可能误以为未来一切都靠 AGI 了,但其实当下能做的事非常有限,我们如何向这些没那么懂但手头有预算且脑中有想象的用户,去正确传递大模型的能力界限?
宜博:我们从去年到今年做最多的就是给大家分享大模型是什么?什么能干?什么不能干?边界在哪里?背后的原理是什么?现在能真正把这些事情和自己的想法都传递给客户的团队还比较稀缺,希望有更多的程序员和技术领导者加入进来。第一,不要太高估短期大模型的能力;第二,不要太低估长期大模型的能力;第三,在当下把能落地的场景先落地。
张敏:我们这边的做法是,通过 GPT 4 中目前我们认为的最好效果,让大家客观看到当前大概做到什么程度。
史少锋:刚刚宜博说的是大家眼下不用对大模型期望太高,要知道它目前只是一个助手,还需要懂业务和有专业技能的人去做最后的把关,同时我们只有不断去试去用,才能找到最适合的方向。现在大家看到文生图出来也没多久,但有很多文章配图都换成了 AI,意味着这方面的生产效率已因此得到很大提升。
林旅强:总结一下就是, AI 的天花板取决于使用者的个人理解和业务认知。在你的指导之下去做工作的 AI,不可能做得比你还厉害,你才是 AI 的天花板。当我们都了解到这一点,就知道它的局限。