热门话题
#
Bonk 生态迷因币展现强韧势头
#
有消息称 Pump.fun 计划 40 亿估值发币,引发市场猜测
#
Solana 新代币发射平台 Boop.Fun 风头正劲
很高兴发布新的代码库:nanochat!
(这是我写过的最疯狂的之一)。
与我之前类似的代码库nanoGPT仅涵盖预训练不同,nanochat是一个从头开始的最小化全栈训练/推理管道,构建了一个简单的ChatGPT克隆,所有内容都在一个依赖最小的代码库中。你只需启动一个云GPU实例,运行一个脚本,最多4小时后,你就可以在一个类似ChatGPT的网页UI中与自己的LLM对话。
它大约有8000行我认为相当干净的代码,功能包括:
- 使用新的Rust实现训练分词器
- 在FineWeb上预训练一个Transformer LLM,评估多个指标的CORE分数
- 在SmolTalk的用户助手对话、选择题、工具使用上进行中期训练。
- SFT,评估聊天模型在世界知识选择题(ARC-E/C,MMLU)、数学(GSM8K)、代码(HumanEval)上的表现
- 可选地在GSM8K上对模型进行RL训练,使用"GRPO"
- 在引擎中高效推理模型,使用KV缓存,简单的预填充/解码,工具使用(轻量级沙箱中的Python解释器),通过CLI或类似ChatGPT的WebUI与其对话。
- 编写一份单一的markdown报告卡,总结并游戏化整个过程。
即使成本低至约100美元(在8XH100节点上约4小时),你也可以训练一个小型的ChatGPT克隆,能够进行简单对话,并能写故事/诗歌,回答简单问题。大约12小时的训练超越了GPT-2的CORE指标。当你进一步扩展到约1000美元(约41.6小时的训练)时,它会变得更加连贯,能够解决简单的数学/代码问题并参加选择题测试。例如,一个训练24小时的深度30模型(这大约等于GPT-3 Small 125M的FLOPs和GPT-3的1/1000)在MMLU上得分40分,在ARC-Easy上得分70分,在GSM8K上得分20分,等等。
我的目标是将完整的"强基线"堆栈整合到一个连贯、最小、可读、可黑客化、最大限度可分叉的代码库中。nanochat将是LLM101n的顶点项目(该项目仍在开发中)。我认为它也有潜力发展成一个研究工具或基准,类似于之前的nanoGPT。它绝不是完成、调优或优化的(实际上我认为可能还有很多低垂的果实),但我认为它的整体框架已经足够好,可以在GitHub上发布,所有部分都可以改进。
代码库链接和nanochat速跑的详细演练在回复中。

GitHub 仓库:
更详细和技术性的操作指南:
在 WebUI 中与 $100、4 小时 nanochat 的示例对话。它... 很有趣 :) 更大的模型(例如 12 小时深度 26 或 24 小时深度 30)会迅速变得更加连贯。

这是报告卡中$100速跑产生的一些摘要指标的示例。当前的代码库略超过8000行,但我尽量保持它们的整洁和良好的注释。
现在进入有趣的部分 - 调优和爬坡。

2.4M
热门
排行
收藏