Training Agents: Live tutorial on how to fine-tune a coding agent for continual learning
by Hugging Face
逐字稿整理版
00:01:12
- 主講者先向觀眾打招呼,表示這是 Training Agents 的第一堂課,也會先等大家加入直播。
- 這場直播是系列的 episode one。
00:04:10
- 主講者提到,接下來的系列大致會分成三段:
- SFT(像這次一樣)
- basic RL
- advanced RL with an environment
00:04:55
- 主講者介紹 Quentin Galludec,說他來自 TRL 的維護者團隊。
- Quentin 在留言區可能會回答相關問題。
00:08:53
- 主講者說,如果要訓練 agent,理想上可以拿一個 real-world dataset,甚至是自己蒐集的 agent traces。
- 但自己蒐集 traces 會讓課程起手太慢,所以他改用 Mario Zechner 的 traces dataset;Mario 也是 Pie agent harness 的作者。
00:14:21
- 主講者直接要求:「please use HF Jobs to run this model」。
- 他要用 Hugging Face Jobs 來跑每一次訓練,並用 TrackIO 追蹤所有 run。
- 他也提到要把 adapters 推到 Hugging Face repository,最後用 held-out eval loss 選出 best run。
00:20:34
- 主講者開始進入實作與訓練流程,說明會用 HF Jobs 持續跑實驗。
00:46:31
- 主講者回到 SFT 的關鍵點:不對 user tokens 計算 loss。
- 這就是 SFT 的定義性做法之一。
00:46:42
- 他用 Transformers 的
apply_chat_template來把 trace 轉成 Python format。 - 接著把 user message 與 assistant message 分開,準備做 token masking。
00:47:22
- 他說要把不是 assistant 的 token 全部 mask 掉。
- 核心意思是:
Everything that the user said都不要算進 loss,模型只學 assistant 要輸出的部分。
00:47:56
- 接著是典型 training loop:forward pass、generate text、shift / align logits、calculate loss、update / optimize。
- 主講者提到這裡用 Adam optimizer 與 cross entropy loss。
00:48:21
- 他補充說,這就是一個很典型的 training loop。
觀察
- 這一集的核心不是炫技,而是把「coding agent traces → prompt/completion pairs → SFT baseline → 可追蹤的實驗管理」串成一條完整流程。
- 影片很明確把 SFT 放在 RL 之前,先做能落地的基線,再往更複雜的環境式訓練前進。