设置
  • 日夜间
    随系统
    浅色
    深色
  • 主题色

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

2024-04-09 17:16:47 来源: 量子位

复工4天就整了大活qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

明敏 发自 凹非寺qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

量子位 | 公众号 QbitiAIqK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

大神卡帕西(Andrej Karpathy)刚“复工”,立马带来神作:qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

纯C语言训练GPT,1000行代码搞定!,不用现成的深度学习框架,纯手搓。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

发布仅几个小时,已经揽星2.3k。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

它可以立即编译和运行,和PyTorch完全兼容。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

卡帕西使用的示例是GPT-2,但Llama 2和Gemma等也适用。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

项目发布后,他还给出了从PyTorch迁移到C的教程。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

网友们直呼:他甚至都不用C++……qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

而且就连怎么让大模型如法炮制的提示词,他也放了出来。现在已经有人在用Devin尝试ing。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

手动实现每个层前向/反向传播

选择用GPT-2的原因很简单,有模型权重,采用了堆栈式的Transformer模型结构。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

项目核心的重点包括:qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

  • 直接在C/CUDA上训练LLM,速度接近PyTorch
  • 通过在CPU版本中使用SIMD指令(如AVX2和NEON)聊加速CPU版本
  • 支持更先进的架构,比如Llama2和Gemma

卡帕西解释,他在开始时分配了所有所需内存,训练期间内存占用保持不变,只是数据在不同批次之间动态流动。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

关键在于手动实现每个单独层的前向传播和反向传播,并将它们串联起来。例如,下面是层归一化(layernorm)的前向传播和反向传播。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

一旦有了所有的层,把它们全部串联在一起。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

卡帕西表示这写起来非常乏味且痛苦,因为过程中必须保证所有pointer和张量都正确排列。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

下图中左边是分配一个单一的一维内存数组,然后将所有模型权重和激活函数都指向它。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

右图为非常小心地进行pointer计算。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

一旦建立好了正向/反向传播,其他的都好说了。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

但是到这部分,卡帕西觉得到了最有趣的部分。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

我正在将其逐层移植到CUDA,使其更加高效,甚至可能和PyTorch效率差不多,但不会有过多依赖。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

从这里开始还有一些扩展,比如精度从fp32下降到fp16或更低,以及一些更多的层(比如RoFE)来支持更先进的架构。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

卡帕西表示,后面还将出一个视频进行更加详细的讲解。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

更多的代码在GitHub项目页中有更具体展示。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

后面他还加了一个如何从PyTorch迁移到C的教程。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

网友:这和LLM OS有关吗?

前几天,“消失”了一段时间的卡帕西突然发推特,表示自己前段时间戒网去了,总体来说感觉害行。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

和互联网世界通上信号第4天,他就发布了这一新项目。给网友们来了点小震撼。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

在一系列常规的amazing、great之外,大家对新项目主要关心三个方面。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

第一,为啥不用Rust?qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

卡帕西表示他也在学习Rust,但是仍旧认为C语言已经很好了。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

它简单、干净、轻便、美观,是最好的语言。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

第二,AI程序员能写出同样的项目吗?qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

值得一提的是卡帕西还给出了一段提示词,表示大家可以用LLM Agent试试看。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

目前的模型生成结果没那么好,但也许1、2年之后可以再看看。如果成功了……qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

“可能就是AGI到来了?”qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

现在已经有网友开始用Devin尝试了。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

他担心Devin搜到了卡帕西的项目,然后直接抄下来。目前为止Devin还没有这么做。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

不过卡帕西表示相比于这个,他更担心LLM Agent在1-2年后确实可以解决这个问题了,但是那时各种代码和讨论会以一种别样的方式渗透到训练数据里,导致结果不够令人满意。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

有人补充说,要加强数据管理了。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

第三个讨论比较多的话题则是,这个项目和LLM OS有关吗?qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

前段时间卡帕西从OpenAI离职,计划要开始推进个人项目。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

当时大家都猜测,他要做LLM OS。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

3月底在访谈中,他也再次聊了这个话题。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

他表示,现在AGI的路线已经相对清晰了,大家都在如火如荼推进工作,大致来说,每个人都在努力构建“大模型操作系统(LLM OS)”.qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

我喜欢把它比作一个操作系统。你要准备好各种外围设备,然后把他们连接在一个新的CPU上。这些外围设备包括文本、图像、音频等各种模态。CPU就是语言模型本身。它还要与我们已经构建的所有Software 1.0基础设施相连qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

我认为大家都在努力构建这样一个东西,然后把它定制成适用于各个经济领域的产品。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程

现在随着新项目推出,卡帕西的个人项目大概是已经提上日程了。qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

后续关于LLM.C的项目还会推出更详细的视频讲解版本,大家可以期待一波了~qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

GitHub地址:
https://github.com/karpathy/llm.cqK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

参考链接:
[1]https://twitter.com/karpathy/status/1777427944971083809qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM
[2]https://twitter.com/karpathy/status/1777493157485437009qK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM
[3]https://twitter.com/karpathy/status/1777481372636246491?s=46&t=iTysI4vQLQqCNJjSmBODPwqK8速刷资讯——每天刷点最新资讯,了解这个世界多一点SUSHUAPOS.COM

本文链接:OpenAI创始大神手搓千行C代码训练GPT,附PyTorch迁移教程http://www.sushuapos.com/show-2-4678-0.html

声明:本网站为非营利性网站,本网页内容由互联网博主自发贡献,不代表本站观点,本站不承担任何法律责任。天上不会到馅饼,请大家谨防诈骗!若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。

上一篇: 北大开源最强aiXcoder-7B代码大模型!聚焦真实开发场景,专为企业私有部署设计

下一篇: 培育新质生产力在行动丨培育千亿级人工智能产业创新集群 陕西发布行动计划推进五大工程

热门资讯

  • 专家:警惕常见睡眠认知误区

    3月21日是世界睡眠日,中国主题为“健康睡眠 人人共享”。近日发布的《2023年中国居民睡眠白皮书》显示,我国居民平均睡眠时长6.75小时,平均在零点后入

  • 最小资源消耗的量子态分辨实现

    记者3月20日从中国科学技术大学获悉,该校郭光灿院士团队在量子态分辨研究中取得重要进展:他们在最小资源消耗的量子态分辨问题中首次提出了全局最优

  • 鹊桥二号中继星成功发射 将是探月工程四期“关键一环”

    记者从国家航天局获悉,3月20日8时31分,探月工程四期鹊桥二号中继星由长征八号遥三运载火箭在中国文昌航天发射场成功发射升空。科技日报记者 付

  • 科研人员在大别山区发现植物新物种

    据中国科学院武汉植物园消息,我国科研人员在大别山区开展植物多样性科学考察时,发现了天门冬科天门冬属新物种,并将其命名为大别山天门冬。相关研究成

  • 我国首个制氢加氢一体站团体标准发布

    我国制氢加氢一体站建设有了团体标准。记者从中国石化获悉,为推动我国氢能交通产业发展,中国石化联合国内数十家氢能头部企业发布了国内首个《制氢加

  • 联想与英伟达推出全新混合AI解决方案

    在近日举行的全球AI盛会GTC(GPU Technology Conference)2024上,联想集团与NVIDIA(英伟达)宣布合作推出全新混合人工智能解决方案,帮助企业和云提供商获得

  • 植物避盐性的关键基因被发现

    记者3月21日从安徽农业大学获悉,该校生命科学学院韩毅教授课题组与国内外专家合作,发现了植物避盐性的关键基因。该研究对于提高植物耐盐性,帮助盐碱

  • huawei回应P70预售时间曝光:假的 最近没有官方消息透露

    3月22日消息,根据huawei旗舰机型迭代策略,今年上半年将发布影像旗舰huaweiP70系列。然而,这两天一张流出的图片声称huaweiP70将于3月23日开始预售,并附有各

  • 潜望长焦缺席三代后 曝xiaomi15 Pro重新拥抱潜望镜头

    3月22日消息,数码闲聊站爆料称,xiaomi15 Pro将采用5000万像素的超大底三摄方案,其中一颗是全新的潜望长焦镜头。据资料显示,xiaomi11 Pro配备了潜望长焦镜

  • 首款骁龙8 Gen3折叠屏!vivo X Fold3图赏

    3月23日消息,vivo X Fold3系列将于3月26日正式发布,成为全球首款骁龙8 Gen3折叠屏电话。现在这款新机外观已经解禁,下面为大家带来图赏。vivo X Fold3提供

  • 俄罗斯成功发射“联盟MS-25”载人飞船

    俄罗斯国家航天集团23日发布消息说,俄当天成功发射了“联盟MS-25”载人飞船。消息说,莫斯科时间23日15时36分(北京时间20时36分),“联盟MS-25”载人飞船

  • 诺基亚手机“掉队”带来的启示

    作为功能机时代的霸主,诺基亚手机曾经创造了巨大的辉煌,但也因错失智能手机发展机遇而“掉队”。近期,外媒Visual Capitalist统计了有史以来最畅销的1

推荐资讯

  • 日榜
  • 周榜
  • 月榜