Skip to main content
在 Pioneer 中进行微调,是使用您的带标签数据集将基础模型适配到您的特定任务和领域。您通过 API 提交训练任务,Pioneer 负责算力,您获得可用于推理或下载的训练完成的模型。整个流程是异步的:先启动任务,然后轮询直到完成。 Pioneer 的新训练任务使用监督微调(SFT)。有关数据集格式和解码器训练示例,请参见 LLM 微调指南

训练任务生命周期

训练任务的 status 字段会经过多个状态。主路径如下:
1

requested

您的任务已被接受并排队执行。Pioneer 正在分配算力。
2

running

训练正在提供商侧执行。
3

complete

GPU 训练已成功结束。任务记录上可获取损失指标(参见轮询状态与读取指标),检查点可供下载或部署。
4

normalizing / artifact_ready

训练后的中间步骤:Pioneer 正在对训练产物进行标准化和打包。您通常只会在 completedeployed 之间短暂看到这些状态。
5

deployed

训练完成的适配器已在推理提供商上线,可通过 model_id 提供服务。
任务也可能以以下状态结束:errored(训练过程中发生错误)、stopped(您通过 POST /felix/training-jobs/:id/stop 优雅地终止了任务,检查点保留)、terminated(您调用了 POST /felix/training-jobs/:id/terminate,它会停止任务永久删除其检查点,不可逆),或 paused

关键参数

base_model 是必填的,且必须匹配模型 ID 或 UUID 形式,不能是自由形式的字符串。省略或发送格式错误的值会返回 422。若值格式正确但不匹配任何可训练模型,则返回 400

启动训练任务

响应会立即返回完整的任务记录,包括 UUID id 和初始状态:
请保存好 id,之后您将使用它来轮询状态、获取指标以及针对训练完成的模型运行推理。

轮询状态与读取指标

轮询任务端点,直到 status 达到终态:completedeployederroredstoppedterminated
一旦训练开始,metrics 字段就始终包含损失值;若已对训练所得模型运行了单独的评估,还会包含 F1/精确率/召回率/准确率:
要获取该任务的结构化 stdout/stderr 日志行:
这会返回日志条目的 JSON 列表({id, timestamp, level, message, source})。这是一次即时抓取,并非实时流。在任务 running 时定期轮询即可跟踪进度。

停止或终止任务

要在保留检查点的前提下优雅地停止正在运行的任务:
任务状态会变为 stopped。在停止之前保存的检查点仍可用于部署或下载。 若要永久终止任务并删除其检查点,请改用 /terminate
如果任务仍在运行,/terminate 会停止提供商侧的任务,并永久删除其所有检查点。该操作不可逆。如果您希望保留至今训练出的检查点,请改用 /stop

检查点与下载权重

Pioneer 会在训练过程中保存检查点。任务开始后,您可以随时列出它们:
每个检查点带有 is_bestis_finalis_deployable 标志。您可以将任意可部署的检查点(不仅限于最终检查点)部署到实时推理端点:
若要下载权重,请请求一个预签名 URL(需要 Pro 及以上套餐,否则该调用返回 403):
响应为 JSON,其中的 download_url 会在 1 小时后过期,请另行访问该 URL 以获取实际文件:
您也可以在新的训练任务中把某个检查点 UUID 作为 base_model 的取值,从而在该检查点之上继续训练。

训练端点汇总