LOCAL MODEL LAB / LESSON 0002 / 约 6 分钟

Queue 成功,
模型训练到哪了

本课的小胜利:用三种状态判断到手价模型现在可以做什么。

同一场景 · Qwen2.5-0.5B · ComfyUI 操作路线

这节架构课可以立即阅读。下列 PriceLab 节点和 worker 是待实现接口;尚未安装,blueprint 不能拖入运行。本课练习只判断给定状态。

三个进程,三个完成条件

回忆第一课:只有参数实际更新,才发生训练。我们用 ComfyUI 提交和观察同一个训练实验,MLX 负责梯度计算,训后模型再通过 HTTP 回答订单。

画布 · prompt_id

节点是否执行完?提交节点拿到 job_id 就可结束。

训练 · job_id

worker 是否完成实际更新,并保存可重载产物?

服务 · service_id

正确模型是否加载成功,并实际响应请求?

ComfyUI 的 execution_success报告图执行成功。图中若是异步提交节点,它不能证明后台训练成功。训练与服务的额外状态协议由课程 worker 实现。

先提交,再查询,再读产物

提交图:Experiment + 模型/数据引用 → Submit → job_id
查询图:job_id → JobReadback → Preview
产物图:成功的 job_id → ArtifactRead → 已核验模型引用

提交返回 accepted;查询可能看到 running;更新、保存和重载检查通过后才进入 succeeded。完整节点前缀为 PriceLab。图里只传引用,见节点速查。

重复 Queue 查询图只刷新状态。提交图使用同一个 request_id 时,worker 返回同一个 job;如果你改了训练配置,就需新 request_id。这是本课程的幂等设计。

关掉术语,读两份报告

以下是练习样本,未提交任何真实任务。

1. ComfyUI = execution_success;worker = running;尚无最终 artifact。现在确认了什么?

练习后核对答案

提交成功。训练与服务仍需各自回读。

2. 已经拿到 job_id,想看一分钟后的进度。下一步做什么?

练习后核对答案

查询状态。重复提交与状态刷新是两个动作。

课后只带回一段解释

不看页面,解释“ComfyUI 显示成功,worker 显示 running”为何可以同时成立,并说出接下来查哪个 ID。答得清楚后,我们再准备 SFT 实作。

本次已设计四段路线:准备与基线 → SFT → GRPO → 服务。实作前需实现桥接节点和 worker,按手册先验证环境与小步任务。

主读资料:ComfyUI 官方 Server Routes,先看 /prompt 和 /history。节点和 worker 的路由区别见ID 速查。

可以继续向 agent 提问,例如“查询节点为什么会被缓存?”或“中断画布会不会停止后台训练?”页面不会把阅读自动记成掌握。