原文出处:Submit your final project! 原作者:Hugging Face · 许可证:Apache-2.0 License 中文译本由诸葛AI学院整理,仅供学习参考,版权归原作者与 Hugging Face 所有。
到了交作业的时候了!今年这门小课程(smol course)改用榜单(leaderboard)提交制。流程如下:
- 读完本章的文字教程 ✅
- 用章内学到的知识训练一个模型
- 把模型推送到 Hugging Face Hub
- 用
hf jobs做评测 - 向榜单提一个 pull request
下面逐步展开。
1. 读完章内教程 & 2. 训练一个模型
第一章的作业要求你把章内所有材料读一遍,再照着学到的东西训一个模型。训练代码的主体在监督微调那一页,但你还得把它和聊天模板、用 Hugging Face Jobs 训练两页里的代码结合起来。
3. 把模型推送到 Hugging Face Hub
模型训好后,要推送到 Hub 上的一个仓库。如果你在训练命令里加上 --push_to_hub 参数,TRL 会替你完成这一步。假设你用 hf jobs 训练,参数应该这么写:
bash
hf jobs uv run \
--flavor a100-large \
--secrets HF_TOKEN \
"trl/scripts/sft.py" \
...
--push_to_hub # 这会把模型推送到 Hugging Face Hub
训好的模型会出现在 your-username/your-model-name(你的用户名/模型名)下。细节参见 transformers 的检查点(checkpoint)文档。
4. 用 hf jobs 评测模型
接下来评测模型。评测同样用 hf jobs 跑,配合 openbench 完成,评测结果会推送到 Hub 上的一个数据集。
sh
hf jobs uv run \ # 用 uv 跑一个 hf jobs 任务
--flavor a10g-large \ # 选择机器规格
--with "lighteval[vllm]" \ # 安装带 vllm 依赖的 lighteval
s HF_TOKEN \ # 传入 Hugging Face 的写入令牌
lighteval vllm "model_name=<your-username>/<your-model-name>" "lighteval|gsm8k|0|0" --push-to-hub --results-org <your-username>
这条命令用 lighteval 和 vllm 评测模型,并把结果保存到你指定的数据集仓库里。
提示 本课目前还没讲到评测,第二章会详细展开。现阶段的重点是训练和提交模型。
5. 向榜单空间提一个 pull request
现在可以给榜单提交模型了。要做两件事:
- 把你模型的结果加进
submissions.json - 在 PR 正文里分享你的评测命令(即
hf jobs那条)
把结果加进 submissions.json
打开榜单空间提一个 pull request 交作业。内容只需要模型信息,外加上一步建好的结果数据集的引用。我们会拉取结果并展示在榜单上。
```json { "submissions": [
... # 已有的提交
{
"username": "<your-username>",
"model_name": "<your-model-name>",
"chapter": "1",
"submission_date": "<your-submission-date>",
"results-dataset": "<your-results-dataset>"
}
]
} ```
在 PR 正文里分享评测命令
在 PR 正文里写出你的评测命令,例如:
hf jobs uv run ...
这样我们就能在把你的模型挂上榜单之前,先复现一遍你的评测结果。
等待 PR 被合并
PR 合并后,你的模型就登上榜单了!榜单在这里。
检验学习成果
本单元学完了,干得漂亮! 现在来做测验,检验一下学到了多少。