「这是我写过最疯狂的代码之一。」
近期,人工智能领域的知名专家Andrej Karpathy推出了一个全新的开源项目,立即引起了整个社区的广泛关注。
这个名为nanochat的项目旨在指导用户从零开始,仅需大约100美元的成本即可构建自己的ChatGPT。它全面涵盖了大语言模型的训练和推理过程,通过跟随教程,学习者能够深入理解构建大模型的所有关键步骤。
该项目包含约8000行代码,在GitHub上发布不到12小时,就获得了超过4500颗星标,显示出社区的高度兴趣:
GitHub 链接:https://github.com/karpathy/nanochat
与Karpathy之前发布的nanoGPT仓库(仅覆盖预训练阶段)不同,nanochat是一个从零开始实现的、极简但完整的ChatGPT克隆版训练和推理全流程项目,所有功能都集成在一个依赖极少、结构清晰的代码库中。
用户只需启动一台云GPU机器,运行一个脚本,大约4小时后就能在ChatGPT风格的Web界面中与自己的LLM进行互动对话。
仓库虽然只有大约8,000行代码,但已经实现了以下全部功能:
使用全新的Rust实现训练分词器。
在FineWeb数据集上预训练Transformer LLM,并在多个指标上评估CORE分数。
在Mid-train阶段训练SmolTalk的用户-助手对话、多选问答、工具使用等数据。
进行SFT微调,并评估模型在世界知识类多选题(ARC-E/C、MMLU)、数学(GSM8K)、代码(HumanEval)上的表现。
可选:使用GRPO在GSM8K上进行RL强化训练。
高效推理引擎,支持KV Cache、prefill/decode推理、工具调用(在轻量沙箱中的Python解释器),可通过CLI或ChatGPT风格WebUI交互。
自动生成Markdown评分报告卡,总结与游戏化展示整个训练过程。
Karpathy强调,仅需约100美元成本(在8×H100上进行4小时训练),就能训练出一个「能聊天」的迷你ChatGPT,它可以编写故事和诗歌、回答简单问题。大约12小时训练后即可超越GPT-2的CORE指标。
如果将预算扩展到1000美元(训练41.6小时),模型的连贯性将显著提升,能够解决基础数学和代码任务,并通过一些多选测试。例如,一个30层深度、训练24小时的模型(相当于GPT-3 Small 125M的FLOPs,约为GPT-3的1/1000规模)可以在MMLU上获得40+分、ARC-Easy 70+分、GSM8K 20+分等成绩。
Karpathy的目标是将一整套「强势基线」能力完整地打包进一个结构统一、可读性强、易于修改、方便复制的仓库中。nanochat将成为LLM101n课程的压轴项目(该课程仍在开发中)。
Karpathy认为nanochat也有潜力像nanoGPT一样,逐渐发展为一个研究平台或标准基准。目前它还不算完美,也没有进行特别的调优或性能优化(但他认为已非常接近)。然而,整体框架已经成熟,因此适合发布到GitHub上,让社区协同迭代改进每个模块。
使用WebUI与价值100美元、耗时4小时训练的nanochat进行的示例对话。
下图是Karpathy这次100美元快速训练示例在报告中生成的一些指标摘要。
由此可见,构建一个具备聊天功能的大模型竟然如此简单且低成本,加之有Karpathy成熟的开源代码支持,那么我们是否能够创建一个属于自己的个性化模型来辅助工作呢?
有网友提出了一个大家普遍关心的问题:
但Karpathy给这类应用泼了一盆冷水,他认为这并不适合个性化用途。
Karpathy认为,应该将这个微型模型更多地视为非常年幼的孩子,它并不具备强大的原始智能。如果你在自己的数据上对其进行微调或训练,可能会产生一些有趣的鹦鹉学舌效果,仿佛是在模仿你的写作风格,但结果可能会混乱不堪。
要实现个性化模型的效果,大致需要遵循以下步骤:
准备原始数据
在此基础上进行大量的合成数据生成和重写(这一过程复杂、不明显且需要深入研究)
使用这些数据去微调一个当前较强的开源大模型(例如tinker)
微调时可能还需要混入大量预训练数据,以避免模型丢失太多通用智能能力
可以说,要真正使这个方案效果显著,目前仍然偏向于科研范畴。
更多详细技术介绍与分步构建示例请参阅以下链接:
https://github.com/karpathy/nanochat/discussions/1
本文由主机测评网于2026-01-08发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/20260115943.html