nanochat:百元成本打造你自己的 ChatGPT
nanochat 是一个全栈式实现类 ChatGPT 大语言模型 (LLM) 的项目。它被整合在一个单一、简洁、极简、易于修改且依赖轻量的代码库中。 nanochat 的设计目标是在单个 8xH100 节点上,通过 speedrun.sh 这样的脚本,端到端地运行整个 LLM 管线。这包括从分词、预训练、微调、评估、推理,到通过一个简单的 Web UI 提供服务,让你能像使用 ChatGPT 一样与自己训练的 LLM 对话。 本项目也将成为 Eureka Labs 正在开发的 LLM101n 课程的毕业项目。 快速上手 体验 nanochat 魅力的最快方式是运行 speedrun.sh 脚本,它将训练并运行一个百元成本级别的模型。在一台每小时 24 美元的 8xH100 节点上,整个过程大约需要 4 小时。 首先,从你常用的云服务商(例如 Lambda)启动一台 8xH100 GPU 服务器,然后运行以下训练脚本: bash speedrun.sh 由于脚本需要运行 4 小时,推荐在 screen 会话中启动,并将日志输出到文件: screen -L -Logfile speedrun.log -S speedrun bash speedrun.sh 如果你对 screen 不太熟悉,可以查阅相关教程。启动后,你可以在 screen 会话中观察进度,或使用 Ctrl-a d 分离会话,并通过 tail -f speedrun.log 查看进度。 ...