现有 Python 环境。图、参数、提交、查询与显示。
LOCAL MODEL LAB / REFERENCE 0004
画布、训练、服务
同一个到手价助手,三个进程。查端口、节点与产物怎样连接。
下列 PriceLab 节点与 worker 是待实现接口。设计 blueprint 不是可导入的 ComfyUI 图;当前没有执行这条训练链路。
进程分工
拟定课程环境。持久化任务,运行 MLX SFT/GRPO 子进程。
课程环境。加载最终权重,接受聊天推理请求。
桥接节点通过 HTTP/JSON 调用 worker。图里传小型引用,权重在文件系统中保存;MLX 训练不放进现有 ComfyUI 的 PyTorch 环境。同机仍共享内存,训练设备需由 MLX 进程自行核验。这个三进程分工是本课程设计。
本机 2026-10-10 只读探测:ComfyUI 0.35.0、MPS、8188。注册的 TrainLoraNode 输入为 MODEL/LATENT/CONDITIONING,不能直接用于本课文本模型 SFT/GRPO。当前未注册 PriceLab 桥接节点。
节点连接速查(待实现)
| 节点 / 输入 | 输出 / 下一步 |
|---|---|
| Experiment:ID、seed、配置 | PRICE_EXPERIMENT;供准备与提交使用 |
| PrepareData / PrepareModel:experiment、request_id | PRICE_JOB;异步返回 accepted |
| JobReadback:job_id、refresh | PRICE_JOB_REPORT + STRING;查询真实状态 |
| DataRead:成功的数据 job、artifact_id | PRICE_DATA_ARTIFACT + STRING;数据 hash、分区检查 |
| ArtifactRead:成功的模型 job、artifact_id | PRICE_MODEL_ARTIFACT + STRING;权重、parent、重载检查 |
| Submit:operation、model/data 引用、request_id | PRICE_JOB;sft / grpo / eval / fuse |
| ServiceStart:最终 model 引用、port、request_id | PRICE_SERVICE_REF;只表示 starting |
| ServiceReadback:service_id、refresh | PRICE_SERVICE_REPORT + STRING;版本、健康、真实暖机后 ready |
| PriceRequest:ready report、订单、request_id | PRICE_RECEIPT + STRING;完整回包与严格评分 |
| JobCancel / ServiceStop:对应 ID | PRICE_CONTROL_RESULT;各自回读终止结果 |
| Preview:STRING JSON | OUTPUT_NODE;把报告写入 ui/history |
表中类名均带 PriceLab 前缀。专用类型用于逻辑连接,额外 STRING 输出连接 Preview;类型名称不能替代字段检查。自定义类型、INPUT_TYPES、RETURN_TYPES、OUTPUT_NODE 的定义见 官方数据类型 与 节点属性。
四段路线,分次 Queue
- A · 准备:提交数据/模型准备 → 查 job → 读数据/原始模型引用 → 基线 eval。
- B · SFT:原始模型 + SFT 数据 → 提交 5 步冒烟 → 查 job → 检查 adapter/融合产物 → 验证集 eval。
- C · GRPO:已验证 SFT + RL 数据 → 提交 5 步冒烟 → 查真实采样/奖励/更新 → 融合与重载 → 对照评估。
- D · 服务:最终 artifact → 启动 → 查 ready → 在独立查询图中发订单 → 保存 receipt。
提交节点不会等整个训练完成。成功后再运行产物读取图;订单查询图不接训练节点。先冒烟,再决定正式步数。完整参数与实现顺序见 运行设计手册。
两个不可混用的引用
- 数据 artifact
- seed、oracle 版本、各分区路径/数量/hash、无交叉检查、producer_job_id。
- 模型 artifact
- stage、representation、parent/base_artifact_id、权重/tokenizer/config hash、数据 hash、producer_job_id、重载证据。
representation 区分 full、adapter、fused;adapter 需与指定 base 组合。Submit/ServiceStart 根据 stage 与 representation 检查前置条件,不凭路径命名决定训练阶段。
GRPO 的 parent 和固定参考模型都指向已核验的 SFT 产物。原始模型、SFT 和 GRPO 的模型路径不能混用。原课程验收继续适用。