# 模型精调概述

> 全部文档的索引见 [llms.txt](https://ark.volcengine.com/llms.txt)；在任一文档页面地址后追加 `.md` 可获取该页的 Markdown 版本。

模型精调是指基于一个基础模型，通过特定的训练方法进行优化，以提升其在具体任务中表现的过程。精调主要适用于以下场景：
* **提升特定任务表现**：针对您的具体业务场景或任务，优化模型性能。
* **降低延迟与成本**：通过精调一个小模型，使其在特定任务上的表现能媲美甚至超越大模型，从而实现更低的推理延迟和成本。

<span id="7c508203"></span>
# 是否应该精调模型

* 评估效果问题是否可通过精调解决：

    * 通用基础能力（如推理、理解、长文）比较难通过精调大幅提升，建议反馈后等待基模优化（[数据合作伙伴demo提交](https://bytedance.larkoffice.com/share/base/form/shrcnRoe6Pc1M6K6YlycyxFWGLd)）。

    * 时效性强的信息检索需求，建议选择联网内容插件，使用请参见[联网内容插件功能说明](/docs/online-content-plugin-guide)。

    * 确定域内的信息检索需求，建议选择知识库插件，使用请参见 [文档知识问答核心流程](https://docs.volcengine.com/docs/vector_database_vikingdb/Coreprocessofknowledge-basedQA?lang=zh)。
* 评估收益与成本：

    * 如效果问题集中、判定规则清晰，**建议先尝试通过PE优化提示词**。如优化后效果仍不及预期，积累的数据集和评估框架也可用于进一步的精调优化。

    * 精调训练、数据构造成本较高（建议最少 SFT数百样本 、DPO百条样本、CPT一千万 tokens），更大的业务规模能有效摊销训练成本

    * 精调模型推理成本较基础模型更高，如对推理成本非常敏感，请评估后再进行精调或等待基础模型优化。

<span id="1bb98556"></span>
# 模型精调流程

1. [模型精调](https://ark.volcengine.com/region:cn-beijing/finetune) 页面，点击左上角 **创建精调任务** 按钮，填写必填字段；
2. 选择精调类型、待训练的模型及训练方式，可参考[精调选型指南](/docs/fine-tuning-overview#616be2d7)；
3. 准备数据集，针对不同精调方法及模型能力，格式规范详见[格式总览](/docs/fine-tuning-dataset-format)。
4. 配置训练集与验证集

    * 训练集：上传 JSONL 文件，支持本地上传、从 TOS 导入、选择已上传数据集三种方式；从 TOS 导入需先创建存储桶，步骤见 [对象存储控制台快速入门](https://docs.volcengine.com/docs/6349/74830?lang=zh)。

    * 验证集：支持上述三种上传方式，也可直接从训练集中按比例分割；按比例分割不额外增加总 tokens，与训练集共同计算总 tokens。

    * 功能支持：数据集混入预制数据、数据容错；数据安全支持平台默认密钥或自定义密钥，自定义密钥将在火山 KMS 产品管理私有密钥，计费参见 [密钥管理计费说明](https://docs.volcengine.com/docs/6476/71331?lang=zh)。
5. 完成训练参数与训练产物配置，提交精调任务。
6. 管理任务并评估精调效果。

    * 在 [模型精调](https://ark.volcengine.com/region:cn-beijing/finetune) 任务列表中，您可以查看任务状态，并执行终止、复制或删除操作。进入任务详情页，即可查看**任务概览**、**训练观测**、**日志**、**时间线**、**模型产出**和**精调安全**等审计信息。

    * 此外，您还可以在任务详情页配置状态通知，以便及时获取任务的开始、完成或失败等状态更新。请根据详情页 **概览信息** > **训练配置** > **全栈可观测平台** 进行设置。平台支持多种通知渠道，您可以根据事件的紧急程度，选择通过电话、短信、邮件、飞书、企业微信、钉钉、Slack、告警回调、飞书应用、运维编排、日志服务或消息队列 Kafka 接收通知。
7. 使用与管理精调模型，在 模型产出 页签将模型导出至 [模型仓库](https://ark.volcengine.com/region:cn-beijing/customModel) ，支持**量化、体验、评测、在线推理、批量推理**，操作见[管理自定义模型](/docs/manage-custom-models)。

<span id="616be2d7"></span>
# 精调选型指南

在选择用于精调的模型时，我们建议您遵循以下筛选步骤：
1. **确定模型模态**：根据您的业务需求，明确模型需要处理的输入和输出类型。

    * 例如，如果只需处理文本，可以选择文本生成模型或多模态模型；如果需要处理文本和图片，则应选择多模态模型。
2. **筛选模型特性**：根据所需的功能（例如 function calling、thinking 模式、是否开源）筛选支持的模型。
3. **匹配训练方法**：根据您计划采用的训练方法，筛选出兼容的模型。
4. **考虑推理需求**：根据预期的推理方式和所需的上下文窗口大小，进一步缩小选择范围。
5. **调整筛选条件**：如果找不到完全满足所有条件的模型，您可以尝试放宽部分条件后再次查找。

接下来，我们将从选择模型、选择精调类型、选择训练方式以及选择精调后推理方式四个方面展开详细说明。

<span id="d3ef4388"></span>
## 选择模型

**强烈建议** 前期方案验证时 **选用较小尺寸的模型** 进行精调，成本更低、训练更快、迭代效率更高；当方案验证后，如小尺寸精调模型效果无法满足需求，可再使用更大尺寸的模型进行精调。
**推荐使用以下主力模型**。支持范围会随模型版本和配置调整，创建任务时请以控制台可选项为准。

### 语言及多模态理解模型

| 模型 | 版本 | 输入模态 | 支持特性 | SFT | DPO | GRPO | 精调后推理 |
| --- | --- | --- | --- | --- | --- | --- | --- |
| `doubao-seed-2-0-mini` | 260428（推荐） | 文本、图片；SFT、DPO、CPT 支持音频；RL 不支持音频；视频以控制台可选能力为准 | thinking：enabled、disabled、reasoning_effort；支持 Function Calling | 全量、LoRA | 全量、LoRA | 全量、LoRA | 模型单元、批量推理窗口与基础模型一致；LoRA 按 token 推理为基础模型 2 倍价格，窗口 256k，最大回答和思维链 32k |
| `doubao-seed-2-0-lite` | 260428（推荐） | 文本、图片；SFT、DPO、CPT 支持音频；RL 不支持音频；视频以控制台可选能力为准 | thinking：enabled、disabled、reasoning_effort；支持 Function Calling | 全量、LoRA | 全量、LoRA | 全量、LoRA | LoRA 按 token 推理为基础模型 2 倍价格，窗口 256k，最大回答和思维链 32k；其他方式以控制台为准 |

thinking 模式详情请参见 [深度思考能力支持情况](/docs/multimodal-fine-tuning-data-format#c680ed77)，Function Calling 详情请参见[Function Calling（函数调用）](/docs/function-calling)。

> **说明**
>
> 音频输入支持范围与模型版本及训练方式有关：
> * SFT、DPO 和 CPT 支持通过 `audio_url` 传入音频。
> * GRPO、PPO 等 RL 训练不支持音频输入。

### 图片生成模型

图片生成模型支持 SFT，具体模型 ID 和版本以创建精调任务时控制台可选项为准。

### 视频生成模型

| 模型系列 | 精调方法 | 支持的数据场景 |
| --- | --- | --- |
| Doubao Seedance 1.0 | SFT | 文生视频、图生视频 |

### 文本向量化模型

文本向量化模型支持 SFT，具体模型 ID 和版本以创建精调任务时控制台可选项为准。

继续预训练、强化学习以及更多模型的精调需求，请 [**提交工单**](https://console.volcengine.com/workorder/create?step=2&SubProductID=P00001166) 进行咨询。

<span id="2e619de7"></span>
## 选择精调类型

|**方法** |**最小数据需求** |**训练成本** |**难度** |**优势&场景** |
|---|---|---|---|---|
|SFT 有监督微调 |数百条以上标注数据(prompt+response问答对)  |中 |低 |拟合样本回答，针对性强，效果可控。 | \
| | | | |默认推荐先通过SFT优化。 |
|DPO 直接偏好优化 |百条以上偏好对比数据（如 A/B 选择） |中 |中 |基于用户反馈，低成本拟合用户偏好提升用户体验。 | \
| | | | |相比SFT优化偏好成本更低；相比RL无需构建奖励模型。 |
|RL 强化学习 |百条以上prompt集 + 可选标注数据 |高 |高 |效果上限高 ，泛化好。 | \
|GRPO PPO DAPO | | | |需要构建并调优Reward fn，对算法能力要求较高。 |
|CPT 继续预训练 |未标注数据一千万tokens以上 |高 |中 |增强行业/垂直领域知识，提升基础效果。 | \
| | | | |需要很大的数据量才有效果，同时对数据质量也有要求。 |

<span id="03b2fd5e"></span>
## 选择训练方式

从**参数更新范围**的角度划分，模型精调主要包含全量精调与 LoRA 精调两种方式。
LoRA（Low-Rank Adaptation）通过冻结预训练模型的全部权重，并在每个 Transformer 块中注入可训练的低秩适配层，大幅减少了可训练参数的总量。该方式训练速度更快、机器资源消耗更低，成本远低于全量精调；且在大多数场景下，LoRA 精调效果可达到全量精调的 98% 以上。

<span id="59fd3f3d"></span>
## 选择精调后推理方式

![](https://p9-arcosite.byteimg.com/tos-cn-i-goo7wpa0wc/813e3f1e061749acafd35626168bc5ab~tplv-goo7wpa0wc-image.image)

|精调后推理方式 ||使用条件 |性能 稳定性 |价格 |适用场景 |
|---|---|---|---|---|---|
|在线推理 |模型单元 |库存紧张，可能买不到。 |使用独占资源，稳定性有保障。 |根据使用模型单元数量及型号计价 （方舟模型单元A/B/C/D型）。 |小流量效果测试用小规格模型单元； | \
| | |全量精调产物可以直接买，lora精调产物压缩后才能买。 |提供多种模板，客户可基于流量形态选择合适模板和数量调整性能。 |支持按小时/按月购买。 |延迟及稳定性要求高的在线生产用分离式部署。 |
|^^| | | | | | \
| |按token后付费 |仅部分模型lora训练后支持，不用压缩。 |使用公共资源池，**性能及稳定性保障较弱**。 |基础模型推理价格2-2.5倍。 |**小流量效果测试优选；** | \
| | | | | |对延迟及稳定性要求相对宽松的在线生产。 |
|离线推理 |批量推理任务 |全量精调产物可以直接发起推理，lora精调产物压缩后才能发起。 |使用每日夜间闲时资源推理，白天在线高峰期可能无进度。 |同基础模型批量推理。 |离线效果测试；离线刷数。 |

<span id="57f6d842"></span>
# 精调计费说明

<span id="1894f030"></span>
## 计费方式

计费方式有**按 token 后付费**或者**按算力付费**，详情请参见[精调计费](/docs/model-service-pricing#9e85bab6)。

<span id="11758809"></span>
## 计费单价

精调训练、精调后在线推理、精调后批量推理计费单价信息请参见 [模型价格](/docs/model-pricing#b3a42676)。

<span id="e90664ef"></span>
# 常见问题

<span id="41fbca63"></span>
## 精调任务 没开始训练/在排队/还没训练完

方舟平台使用潮汐闲时资源训练，主要在夜间训练，日间高峰期会被在线负载抢占。
当训练任务较多时，可能会出现一整天都没有训练进度的情况。如有高优重保需求，请 [**提交工单**](https://console.volcengine.com/workorder/create?step=2&SubProductID=P00001166) 处理。
具体进度可参考 精调任务详情页-时间线。

<span id="a6180afd"></span>
## Step数和预期不符

SFT、DPO、CPT 默认启用 dyn_bsz参数（Dynamic Batch Size），会将多个样本组合尽量填满seq_len以加快训练效率，实际一个batch训练token数约等于seq_len*batch_size。
如有明确的关闭dyn_bsz需求（如样本量过小且无法获取更多样本），请 [**提交工单**](https://console.volcengine.com/workorder/create?step=2&SubProductID=P00001166) 处理。

<span id="acdea7d7"></span>
## 训练效果不佳

影响因素较多，常见的包括但不限于：
1. 训练step数过少（如少于50steps）。
2. epoch过多loss过低，过拟合。
3. 训练集样本内容不符合预期（如训练和推理样本格式不一致；thinking能力训练缺少reasoning content；FunctionCall训练带的tools信息有误）。

若排查后怀疑为系统或镜像问题，请 [**提交工单**](https://console.volcengine.com/workorder/create?step=2&SubProductID=P00001166)，我们将安排研发协助排查。
<span id="416df00a"></span>
## 精调任务报错

请查看报错信息，如为系统原因请 [**提交工单**](https://console.volcengine.com/workorder/create?step=2&SubProductID=P00001166) 处理。

<span id="7b86003a"></span>
### 

<span id="b63a9556"></span>
#
