总结了 Qwen 系列模型在 CoT(Chain-of-Thought)微调上的最新进展、典型落地、可直接运行的代码骨架以及后续可优化方向。
要点先览:Qwen-2/3 已原生支持 <think>…</think>
“思考块”;社区主流做法是在此基础上用 LoRA + SFT 或 GRPO/DPO 强化推理能力,衍生出 TokenSkip(压缩思维链)、Speculative CoT(双模型推测)等高效框架。国内企业多把 Qwen-2.5/DeepSeek-R1-Qwen 用于数学推理、医学 QA、教育等场景;国外个人与开源团队则强调在低成本 GPU 上的快速实验。下面给出目录、案例、代码与展望。
目录
-
Qwen × Chain-of-Thought 简介
-
国内外实践速览
2.1 公开论文 / 开源项目
2.2 企业与产品落地 -
实战教程:10 分钟跑通 Qwen CoT LoRA
-
未来优化与研究方向
-
结语
1 Qwen × CoT 简介
-
Thinking-mode:Qwen-3 提供
enable_thinking=True/False
开关,生成带或不带<think>
段落的输出,方便标注与评测 (Qwen3: How to Run & Fine-tune | Unsloth Documentation)。 -
微调范式:社区常见三条路径
-
SFT+LoRA —— 直接用带思维链标签的数据监督微调,最快 1–2 h 即可在 2×3090 上完成 7 B – 14 B 模型 (Qwen2.5思维链微调代码实操 + 多卡Lora微调完整代码-CSDN博客, GitHub - hemingkx/TokenSkip: TokenSkip: Controllable Chain-of-Thought Compression in LLMs);
-
Reasoning-RL —— 在 SFT 基座上用 GRPO(Group-Relative PPO)或 DPO 做偏好强化,进一步对齐思维质量 (Finetune Qwen-2.5 AI Model for Chain-of-Thought (CoT) | by Mahadir Ahmad | Medium);
-
结构化压缩/推测 —— 通过 TokenSkip 删除冗余推理 token,只更新 0.2 % 参数即可保性能 (GitHub - hemingkx/TokenSkip: TokenSkip: Controllable Chain-of-Thought Compression in LLMs),或用 SCoT 轻量-重型模型协同加速 48 % – 66 % 推理延迟。
-
2 国内外实践速览
2.1 公开论文 / 项目
名称 | 关键思想 | 结果 | 代码/论文 |
---|---|---|---|
TokenSkip | 去除冗余 CoT token,LoRA 0.2 % | Qwen-2.5-14B 在 GSM8K 仅-0.4 % 精度 | GitHub 项目 (GitHub - hemingkx/TokenSkip: TokenSkip: Controllable Chain-of-Thought Compression in LLMs) |
Speculative CoT (SCoT) | 小模型起草、多草稿评估,大模型定稿 | DeepSeek-R1-Qwen-32B 推理加速 2.3× | arXiv 2504.19095 |
Qwen2.5 LoRA 实操 | 多卡 QLoRA + 思维链中文译制数据 | 7 B 模型 24-点游戏正确率↑70 % | CSDN 教程 (Qwen2.5思维链微调代码实操 + 多卡Lora微调完整代码-CSDN博客) |
GRPO Reasoning | Qwen-1.5 B 在 GSM8K 用 GRPO RLHF | 单 epoch 成功生成 XML-CoT 格式 | Medium 教程 ([Finetune Qwen-2.5 AI Model for Chain-of-Thought (CoT) |
2.2 产业/社区落地
-
教育 SaaS:国内培训机构将 Qwen-2.5-LoRA 嵌入习题解析,对错题自动输出思维链,显著提升解释性(见 GitHub issue #7027 讨论) (deepseek r1微调 · Issue #7027 · hiyouga/LLaMA-Factory · GitHub)。
-
医疗问答:YouTube / B 站博主演示在 MedCoT 数据集上 3 B Qwen-GRPO 微调全过程,1 × A100 即可跑通 (Part 2 - Instruction finetuning with chain-of-thought (CoT) medical ...)。
-
阿里云 PAI:官方文章展示“Fine-tune-CoT”范式让 0.3 B 学生模型逆袭大模型,在多数据集推理任务上持平或超越老师模型 (有了Fine-tune-CoT方法,小模型也能做推理,完美逆袭大模型-阿里云开发者社区)。
-
开源社区 Prompt-编排:Reddit / LocalLLaMA 版块分享
<thinking><step>
等层级标签 prompt,用于少样本蒸馏 CoT (Everyone share their favorite chain of thought prompts! : r/LocalLLaMA)。
3 实战教程:10 分钟跑通 Qwen CoT LoRA
以下代码在 1×24 GB GPU 即可运行(依赖 PyTorch 2.1+、flash-attn 2、Unsloth)。
pip install git+https://github.com/unslothai/unsloth flash-attn --upgrade
from datasets import load_dataset
from unsloth import FastLanguageModel
from peft import LoraConfig
# ① 准备极简 CoT 数据(200 条 GSM8K)
ds = load_dataset("openai/gsm8k","main",split="train[:200]")
def to_chat(e):
think,ans = e["answer"].split("####")
return {"messages":[
{"role":"user","content":e["question"]},
{"role":"assistant","content":f"<think>{think.strip()}</think>\n{ans.strip()}"}
]}
ds = ds.map(to_chat)
# ② 加载 Qwen-2.5-1.5B 并注入 LoRA
model,tok = FastLanguageModel.from_pretrained(
"Qwen/Qwen2.5-1.5B-Instruct",load_in_4bit=True)
model = FastLanguageModel.get_peft_model(
model,LoraConfig(r=16,alpha=32,
target_modules=["q_proj","k_proj","v_proj","o_proj"]))
# ③ 单卡微调
FastLanguageModel.prepare_for_training(
model,ds,tok,
micro_batch_size=1,gradient_accumulation=4,
lr=2e-4,epochs=1,output_dir="qwen_cot_lora")
推理:
prompt = [{"role":"user","content":"小明有12颗糖..."}]
print(FastLanguageModel.chat_completion("qwen_cot_lora",prompt))
输出示例
<think> 设…(逐步计算) </think> 9
该脚本复用了 Unsloth 的 thinking-mode 模板,训练 1 epoch(≈8 min)即可观察到思维链显式输出,易于评估。源项目提供多 GPU / GRPO 扩展配置 (Qwen3: How to Run & Fine-tune | Unsloth Documentation)。
4 未来优化与研究方向
方向 | 动机 | 建议 |
---|---|---|
数据压缩 | 长链→高延迟 | 结合 TokenSkip 训练不同压缩率版本,动态选择完整 / 精简 CoT 输出 (GitHub - hemingkx/TokenSkip: TokenSkip: Controllable Chain-of-Thought Compression in LLMs) |
推测加速 | 大模型推理慢 | 采用 SCoT 思路,小模型生成多草稿,大模型择优复核,平均 2× 提速 |
混合范式 SFT→GRPO/DPO | 仅监督易过拟合 | 先 SFT 再用 GRPO 对齐推理质量,可显著降低幻觉 ([Finetune Qwen-2.5 AI Model for Chain-of-Thought (CoT) |
多语言 / 多模态 CoT | 海外场景 & 视觉任务 | 在英语、日语、图像推理数据上继续扩充,利用 Qwen-VL 版本生成跨模态思维链 |
评测基准 | 缺少系统指标 | 建议引入 CoT-Retrieval Accuracy、Latency-Cost 曲线,年度 benchmark 公布 |
5 结语
Qwen 社区已形成从 模板内置思考块 → LoRA SFT → RLHF → 高效压缩 / 推测加速 的完整 CoT 微调生态。利用上文提供的最小脚本,你可以在单卡内把 Qwen-1.5 B 训练成可解释的推理模型,并按需扩展到更大参数或更复杂框架。