Guanghu Domestic Migration a27e87cb99 chore: import sanitized domestic snapshot for REPO-007
Source snapshot: 97d7f0fae96dc04b7ddad56fc1db6a108ed662cc

[SEC-CLEAN] · pre-push-clean v1.0 · 109处敏感信息已自动转乱码
2026-07-17 15:59:55 +08:00

118 lines
4.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 📊 代码模型v2.0训练完整报告 · Qwen2.5-Coder-7B · 2026-05-18
## 训练概览
| 项目 | 值 |
| --- | --- |
| 任务 | 代码模型v2.0 · 全参数SFT |
| 基座模型 | Qwen2.5-Coder-7B |
| 训练方式 | 全参数SFT · 只对assistant回复算loss |
| 执行体 | 铸渊ICE-GL-ZY001 |
| 语料 | 与母模型v2.0相同 · 11,470条 · 21M tokens |
| 总耗时 | 约4小时铸渊修复下载问题后启动 |
| 最终Loss | **0.071**epoch 2.999 |
---
## 训练超参数
| 参数 | 值 |
| --- | --- |
| Epochs | 3 |
| Batch size | 1 |
| Gradient accumulation | 8 |
| Learning rate | 2e-5峰值· 余弦衰减 |
| 精度 | BF16 |
| 总步数 | ~4,300步 |
---
## Loss曲线关键节点
| Epoch | Loss | LR | 阶段 |
| --- | --- | --- | --- |
| 0.007 | 2.544 | 8.3e-7 | 起步 · 代码模型首次接触自然语言语料 |
| 0.049 | 2.234 | 6.4e-6 | Warmup中 · 开始适应 |
| 0.091 | 1.681 | 1.2e-5 | 快速下降期 |
| 0.153 | 1.359 | 2e-5 | Warmup完成 · LR到达峰值 |
| 0.265 | 0.954 | 2e-5 | 跌破1.0 |
| 0.342 | 0.675 | 1.98e-5 | 持续下降 |
| 0.467 | 0.519 | 1.94e-5 | 跌破0.5 |
| 0.551 | 0.409 | 1.91e-5 | 第一轮过半 |
| 0.670 | 0.284 | 1.84e-5 | 进入低loss区 |
| 0.802 | 0.214 | 1.75e-5 | 第一轮80% |
| 0.928 | 0.147 | 1.66e-5 | 第一轮接近完成 |
| **1.004** | **0.140** | 1.59e-5 | **第一轮完成** · checkpoint保存 |
| 1.053 | 0.112 | 1.55e-5 | 第二轮开始 · 继续下降 |
| 1.193 | 0.053 | 1.41e-5 | 进入极低loss区 |
| 1.339 | 0.042 | 1.26e-5 | 第二轮33% |
| 1.499 | 0.053 | 1.08e-5 | 第二轮50% |
| 1.653 | 0.037 | 9.2e-6 | 最低点之一 |
| 1.688 | 0.027 | 8.8e-6 | 最低点0.027 |
| **2.001** | **0.099** | 5.5e-6 | **第二轮完成** · checkpoint保存 |
| 2.050 | 0.042 | 5.0e-6 | 第三轮开始 |
| 2.308 | 0.032 | 2.8e-6 | 第三轮30% |
| 2.483 | 0.018 | 1.6e-6 | 最低点0.018 |
| 2.713 | 0.036 | 5.0e-7 | LR接近0 · loss稳定 |
| 2.894 | 0.022 | 6.9e-8 | 接近完成 |
| **2.999** | **0.071** | 2.7e-11 | **训练完成** · 模型保存 |
**Loss总降幅2.544 → 0.02~0.07 · 降幅97%**
---
## 母模型 vs 代码模型对比
| 指标 | 母模型v2.0 | 代码模型v2.0 |
| --- | --- | --- |
| 基座 | Qwen2.5-7B | Qwen2.5-Coder-7B |
| 起始Loss | 2.504 | 2.544 |
| 第一轮结束Loss | 0.094 | 0.140 |
| 最低Loss | 0.011 | 0.018 |
| 最终Loss | 0.052 | 0.071 |
| 降幅 | 98% | 97% |
| 收敛特征 | 学自然语言更快 · 第一轮降至0.09 | 学自然语言稍慢 · 第一轮降至0.14 · 但最终接近 |
**结论代码模型起步略慢代码基座首次接触纯自然语言但三轮后基本追平母模型最终loss仅差0.019。**
---
## 训练特征分析
### 三轮变化
- **第一轮**epoch 0~1loss从2.544降到0.14 · 主要学习阶段 · 代码基座适应自然语言模式
- **第二轮**epoch 1~2loss在0.02~0.15波动 · 精细化阶段 · 最低点0.027
- **第三轮**epoch 2~3loss在0.02~0.10波动 · 收尾阶段 · LR衰减至接近0 · 最低点0.018
### grad_norm变化
- 第一轮2~15起步时梯度较大 · 学习剧烈)
- 第二轮0.2~4梯度稳定 · 精细调整)
- 第三轮0.1~2梯度极小 · 微调收尾)
### 代码模型的特殊表现
- 起始loss 2.544 vs 母模型2.504 · 起步几乎相同 · 说明两个基座对冰朔语料的初始"陌生度"接近
- 第一轮结束时loss 0.14 vs 母模型0.094 · 代码模型学自然语言稍慢(代码基座的预训练分布偏代码)
- 第二轮后差距缩小 · 最终loss 0.071 vs 0.052 · 差距仅0.019
- 代码模型保留了代码能力 + 学会了冰朔的思维方式 = 既能写代码又能说光湖的话
---
## 双模型v2.0训练总结
| | 母模型v2.0 | 代码模型v2.0 |
| --- | --- | --- |
| 基座 | Qwen2.5-7B | Qwen2.5-Coder-7B |
| 训练时间 | 4小时8分钟 | 约4小时 |
| 最终Loss | 0.052 | 0.071 |
| 模型大小 | ~15GB | ~15GB |
| COS备份 | ✅ models/qwen25-7b-sft/final/ | 待确认 |
| 用途 | 霜砚大脑 · 语言思维 · 蒸馏1.5B模板 | 铸渊大脑 · 代码+自然语言 · 编程执行 |
**双模型v2.0训练全部完成。** GPU服务器到期时间2026-05-19 20:00。需在到期前确认代码模型已上传COS备份。
---
*数据整理霜砚ICE-SY-01· 2026-05-18*