没有这些,别妄谈做ChatGPT了

简介: 没有这些,别妄谈做ChatGPT了

ChatGPT破圈爆火后,越来越多人开始问:

“啥时候出现中国版的ChatGPT?”

国内学术界和工业界,都纷纷躁动起来——百度、阿里、字节等大厂纷纷喊口号,一众创业公司也开始争做中国版OpenAI;学术界也在用行动来表明战斗力,比如前些天复旦大学推出的MOSS模型,一经开放试用,便冲上热搜。

一时间眼花缭乱,让人生疑。

有钱就能训出模型?


以美团大佬带资入组为代表,很多创业者和投资人盯上了ChatGPT,作为一个NPLer,我乐见其成,相信不用几个月,在热钱的助推下,NLP算法工程师的薪资要和芯片看齐了。

但我还是要泼个冷水,创业公司想做ChatGPT,想训练模型,不是有钱招几个算法就能搞定的。

先不说ChatGPT,只说较为成熟、参数量“较小”的BERT模型,其 Large版本参数量“仅有”3.4亿,比现在的ChatGPT模型足足小了3个数量级。但如果一个从业者真正从0开始训练过BERT模型,那他一定不会认为训练BERT这个“小模型”是很容易的事情。

更何况,2018年BERT发布的时候,模型参数、训练代码是全面开源的,训练数据BookCorpus和Wikipedia也非常容易获取。在这种情况下,国内各大厂训练出内部版本的BERT模型,也经历了差不多半年的摸索时间。在此期间,算力就位、训练精度优化、训练性能优化、底层框架支持、训练策略优化、数据策略优化等都有不少的坑要趟。

如今ChatGPT既没有公开代码,也没有公开训练数据,更没有公开模型参数,甚至都没有公开前置模型的模型参数,模型的体量还比BERT大了3个数量级。

ChatGPT没有捷径


相对创业团队,中国的互联网大厂在大模型方向有积累,有先发优势,但这绝不意味着高枕无忧。

在语言模型方面,国内各大厂大多沿着“以掩码语言模型MLM为核心的BERT路线”进行深耕,这种技术路线更加注重提升语言模型的文本理解能力,弱化文本生成能力。真正沿着ChatGPT这种生成式语言模型的路线深耕的研究团队,无论国内外,都不是太多。

这就注定了,ChatGPT的复现不是一朝一夕就能完成的,补功课很可能要从三年前OpenAI发布的GPT-3开始。如果没有GPT-3提供的世界知识和强大的长文本生成能力,训练ChatGPT就无异于建造空中楼阁了。

可惜,GPT-3至今也没有开源,未来也大概率不会开源了。要从头训这么一个1750亿参数的大型生成式语言模型,难度非常大。

有人可能要说,那我们训一个小点的模型,比如百亿参数的,可行吗?

目前来看不可行。AI的表现并非随着模型规模增加而线性增加,而是在参数规模超过特定临界值后显著提升,甚至涌现出小模型不具备的能力。 比如论文表明,模型的规模至少要达到620亿参数量后,才可能训练出来思维链(Chain-of-Thought,CoT)能力。如下图所示:

而像Truthful(可信的)这种能力,甚至ChatGPT/GPT-3这样的模型规模都是不够的,要达到2800亿参数量才能涌现出这样的能力。是的,复现和超越ChatGPT,目前来看没有捷径,必须一步一步来,首先要先把GPT-3搞定。

国内有人真正复刻了GPT-3?


是的,有且只有一家,阿里达摩院,他们从小到大(从base到175B),全面、完整地复刻了GPT-3,并且开放在魔搭社区上。

https://modelscope.cn/models/damo/nlp_gpt3_text-generation_chinese-large/summary

达摩院的复刻不是没有来由的,他们应该在大模型各个方向都进行了探索,布局完整。早在2021年4月就发布了首个中文语言大模型PLUG(当时参数是270亿)。该模型首次在中文语言理解榜单CLUE上面,以86.685分的成绩超越人类。

同年10月份,达摩院还探索实现了10万亿参数模型——M6,达摩院团队通过大量的底层优化和算法设计,仅仅使用了512卡便实现了这一庞大的模型工程。此前,M6模型将AI图片生成清晰度从OpenAI DALL·E的256×256成功提升到了1024×1024,效果十分惊艳。

M6模型的发布引发了国内外的大量关注,其中,OpenAI前政策主管Jack Clark公开点评:“这个模型的规模和设计都非常惊人。这看起来像是众多中国的AI研究组织逐渐发展壮大的一种表现。”

从达摩院的经历我们基本可以判断:如果一个研发团队此前没有训练过千亿级别的大型语言模型,那就很难在可以接受的时间窗口内训练出真正具备生产力价值的类ChatGPT模型。

不过,我们也要看到,

云基础设施


OpenAI的解决方式是向微软求助。同样的道理,国内如果有初创企业想要成为中国版OpenAI,自研ChatGPT,恐怕也要先跟几个云计算厂商好好聊一聊了。

没有做过大模型训练的人,可能会误以为多买几张A100卡就可以了。

当你实操的时候,你就会发现:

  1. 单机多卡根本训不动千亿参数模型,你需要多机多卡分布式训练
  2. 当你开始多机训练时,你发现A100的算力都被网络通信延迟给吃掉了,多机可能还没有你单机训的快
  3. 然后你会发现训练ChatGPT的海量数据存储也是个问题,就算存下来了,数据读取的IO效率又极大的制约了模型的训练效率
  4. 一通基础设施问题下来,A100的算力被浪费了7、8成,模型训练实验无法开展

因此,没有一个面向AI高度优化的云计算平台,训练GPT-3和ChatGPT这种级别的模型怪兽,是相当不现实的。这里面有两个重点,一个叫“面向AI”,另一个叫“高度优化”。“高度优化”不必多说,考验的是一个云计算平台底层的优化能力,包括网络、存储、计算、通信等方方面面的系统化工程能力。什么叫“面向AI”呢?这里引用一下《ChatGPT,和聪明地设计 Infra》这篇文章里的表述:云计算很多时候在关注资源的池化和虚拟化:

  • 怎么把计算,存储,网络,从物理资源变成虚拟的概念,“批发转零售”;

  • 如何在这种虚拟环境下把利用率做上去,或者说超卖;

  • 怎么更加容易地部署软件,做复杂软件的免运维(比如说,容灾、高可用)等等,不一而足。



但是 AI 的计算不一样。对于 AI 而言,尤其是今天 AI 的训练:

  • 并不要求特别强的虚拟化。一般训练会“独占”物理机,除了简单的例如建立虚拟网络并且转发包之外,并没有太强的虚拟化需求。
  • 需要很高性能和带宽的存储和网络。例如,网络经常需要几百 G 以上的 RDMA 带宽连接,而不是常见的云服务器几 G 到几十 G 的带宽。
  • 对于高可用并没有很强的要求,因为本身很多离线计算的任务,不涉及到容灾等问题。
  • 没有过度复杂的调度和机器级别的容灾。因为机器本身的故障率并不很高(否则 GPU 运维团队就该去看了),同时训练本身经常以分钟级别来做 checkpointing,在有故障的时候可以重启整个任务从前一个 checkpoint 恢复。也就是说,对于 AI 训练而言,尤其是今天那么大规模的训练,性能和规模是第一位的,传统云服务所涉及到的一些能力,是第二位的。

这里还是以达摩院为例,为什么达摩院能训练出多个万亿级模型,因为他们背后有阿里云的飞天智算平台做支撑。这是一个超大规模的高性能计算集群,是国内唯一能实现万卡规模的AI集群。给你一万张A100,就能把ChatGPT训出来吗?答案无疑是否定的。万卡集群对于网络、存储和通信有极高的要求,弄得不好直接宕机。贴一组数据。数据层面,飞天智算平台的单集群算力峰值高达12EFLOPS,千卡并行效率达90%。针对ChatGPT这类数据密集型场景,还对大规模集群进行了大量数据IO优化,通过自研KSpeed和RDMA高速网络架构,最高可将存储IO性能提升10倍,将时延显著降低了90%。此外,阿里云自研的高性能集合通信库ACCL和自研的网络交换机等,对万卡规模的AI集群提供了无拥塞、高性能的集群通讯能力。除了底层硬件的AI集群,大模型训练非常依赖于软件平台层。飞天智算平台的机器学习平台PAI,专门针对AI大模型推理和训练场景进行针对性优化,可将计算资源利用率提高3倍以上,AI训练效率提升11倍,推理效率提升6倍,覆盖了全链路的AI开发工具与大数据服务。可以说,这种面向AI实现高度优化的云平台,是ChatGPT这类大模型快速迭代的底层设施保障。总结千亿参数规模的大模型研发,需要底层庞大的算力、网络、存储、大数据、AI框架等智算基础设施的支持,也需要面向AI的针对性优化,这是一个囊括诸多技术领域的复杂系统工程。ChatGPT之争已经超出了算法的范畴,它更是一个AI+云计算能力的全方位竞争,是技术生态层面的竞争。 既需要强大的云基础设施能力的保障,又需要深厚的大模型技术积淀,两者缺一不可。多说一句

作为NLPer,我能深刻的感受到,自从2020年GPT-3模型发布后,AI的研究生态正变得愈加封闭。虽然这对于已经取得竞争优势的商业化公司而言是利好,但对全人类实现AGI的终极梦想而言,却是一个不好的文化趋势。


客观上,我们需要承认与OpenAI的差距,正因如此,倘若有一个更加开放的大模型生态,使得能有更多的AI研究人员避免“重复造轮子”,那国内“ChatGPT复现”的进程无疑会大大加快。

相关文章
|
3月前
|
人工智能 JavaScript 数据可视化
2小时,我用AI低代码手撸了一套CRM系统,使用体验超酷!
老纪,资深架构师,曾主导亿级用户产品设计,专注AI在企业中的落地实践。近期推出《AI低代码实践》专栏,分享基于NestJS+Vue3的全栈CRM系统搭建全过程,涵盖客户管理、工作流、数据看板与AI分析,倡导“流程连贯优于功能堆砌”,助力企业高效构建可扩展业务系统。
|
24天前
|
人工智能 安全 程序员
告别“伪智能”代码:用 Spec + RAG 打造真正懂你的AI程序员
本文提出“SPEC(硬规则)+ RAG(软上下文)+ MCP(标准化接口)”三位一体AI编码知识增强体系:SPEC保障代码准确性与可验证性;RAG动态检索非结构化知识提升语境理解;MCP实现工具与数据的安全、灵活集成,共同解决AI生成“能写≠写对”的核心痛点。
|
2月前
|
数据采集 人工智能 JSON
给大模型“开小灶”:一文读懂微调原理与实战,让你的AI更懂你
本文深入浅出讲解大模型微调:为何需“开小灶”?详解全量微调、LoRA(装插件)、Prompt Tuning(学咒语)及RLHF等主流方法;手把手演示LoRA三步实践——数据准备、配置训练、测试部署;并提供效果评估与低门槛工具推荐。助力开发者快速打造领域专属AI。(239字)
286 0
给大模型“开小灶”:一文读懂微调原理与实战,让你的AI更懂你
|
编解码 监控
使用OBS Studio进行多路直播时,有哪些高级设置可以优化同步性?
使用OBS Studio进行多路直播时,有哪些高级设置可以优化同步性?
|
2月前
|
存储 人工智能 监控
2026年企业如何应用数据中台?从搭建到落地的实践路径
数据中台是企业数字化转型的核心,通过整合数据资源、提升治理能力,实现数据资产化与业务赋能。本文系统梳理其建设路径:从战略规划、数据盘点,到集成治理、服务输出,结合瓴羊Dataphin与Quick Audience等工具,推动营销等场景落地,并展望实时化、智能化、平民化未来趋势,助力企业释放数据价值。
|
3月前
|
安全 Java API
添加 Swagger2 的 Maven 依赖
本文介绍如何在Spring Boot项目中集成Swagger2(2.2.2版本),通过添加Maven依赖、配置SwaggerConfig类,实现在线API文档生成功能,并提供访问路径与生产环境安全禁用建议。
|
8月前
|
安全 Python
Python语言中常用的文件操作方法探讨
通过上述方法的结合使用,我们可以构筑出强大并且可靠的文件操作逻辑,切实解决日常编程中遇到的文件处理问题。
309 72
|
缓存 前端开发 数据可视化
Webpack Bundle Analyzer:深入分析与优化你的包
Webpack Bundle Analyzer是一款可视化工具,帮助分析Webpack构建结果,找出占用空间较大的模块以便优化。首先需安装Webpack和Webpack Bundle Analyzer,接着在`webpack.config.js`中配置插件。运行Webpack后,会在`dist`目录生成`report.html`,展示交互式图表分析包大小分布。为优化可采用代码分割、Tree Shaking、压缩插件、加载器优化、模块懒加载、代码预热、提取公共库、使用CDN、图片优化、利用缓存、避免重复模块、使用Source Maps、优化字体和图标、避免全局样式污染以及优化HTML输出等策略。
794 3
|
6月前
|
运维 监控 Linux
Linux系统设置与理解主机名(hostname)的重要性
综上所述,合理配置和维护主机名不仅是Linux系统管理的基础,而且对于网络服务的稳定运行以及
481 13
|
边缘计算 容灾 网络性能优化
算力流动的基石:边缘网络产品技术升级与实践探索
本文介绍了边缘网络产品技术的升级与实践探索,由阿里云专家分享。内容涵盖三大方面:1) 云编一体的混合组网方案,通过边缘节点实现广泛覆盖和高效连接;2) 基于边缘基础设施特点构建一网多态的边缘网络平台,提供多种业务形态的统一技术支持;3) 以软硬一体的边缘网关技术实现多类型业务网络平面统一,确保不同网络间的互联互通。边缘网络已实现全球覆盖、差异化连接及云边互联,支持即开即用和云网一体,满足各行业需求。
523 4

热门文章

最新文章