公司动态

LLaMA-Factory 快速上手:困惑度与 BLEU 分数实战指南(附避坑清单)

📅 2026/8/23 12:54:33
LLaMA-Factory 快速上手:困惑度与 BLEU 分数实战指南(附避坑清单)
LLaMA-Factory 快速上手困惑度与 BLEU 分数实战指南附避坑清单【免费下载链接】LlamaFactoryUnified Efficient Fine-Tuning of 100 LLMs VLMs (ACL 2024)项目地址: https://gitcode.com/GitHub_Trending/ll/LlamaFactory微调做完之后loss 一路往下降可模型到底有没有变好光看曲线心里没底。LLaMA-Factory 仓库里自带了两件现成的体检工具算文本困惑度Perplexity可理解为模型读这句话时有多困惑的统计脚本和算生成文本与参考答案相似度BLEU 分数的评估脚本。本文带你用两条命令把这两项 LLM 评估指标跑出来并教你怎么读这些数字。读完你将获得一条命令出困惑度、一条命令出 BLEU/ROUGE 分数的最短路径两项指标的数值读法以及异常值背后的原因一个把两个指标组合起来判断模型是否真的训好了的小例子快速上手两条命令先看到分数把仓库克隆下来后先给模型阅读理解打分export CUDA_VISIBLE_DEVICES0 python scripts/stat_utils/cal_ppl.py \ --model_name_or_path /path/to/finetuned-model \ --dataset alpaca_en_demo \ --template default \ --save_name ppl.json脚本结束时打印Average perplexity is xx.xx并把每一条样本的困惑度写进ppl.json方便你回头定位哪些句子模型读不懂。--dataset的名字要在data/dataset_info.json里注册过。再看写作能力先用仓库的推理功能llamafactory cli的预测流程或scripts/vllm_infer.py生成一个 JSONL 文件每行包含predict模型输出和label参考答案两个字段然后pip install -r requirements/metrics.txt python scripts/eval_bleu_rouge.py --filename ./predictions.jsonl跑完会打印各指标平均分并生成predictions_score.json留档。困惑度实战它是什么数值怎么读它是什么。脚本内部逐 token 算交叉熵再取指数核心逻辑见 scripts/stat_utils/cal_ppl.py 里的calculate_ppl。打个比方每次预测下一个词都像做一道 10 万选 1 的选择题困惑度 20 就等价于模型平均面对20 个候选答案。数值越低说明模型对这批文本越胸有成竹。数值怎么读。困惑度没有跨任务的统一标准值正确姿势是横向对比同一套数据上SFT 后的模型应该比基座模型低一截用--stage pt或--stage sft分别测不同阶段还能观察能力演进。异常值意味着什么。训练后困惑度不降反升大概率是学习率过大或模板没配对数值低到反常远低于同规模其他模型多半是评测集太小、模型把样本背下来了——这时候要换一批没见过的数据复测。另外ppl.json里逐条的分数很有用整体均值正常但个别样本畸高往往指向脏数据。BLEU 分数计算方法它衡量什么偏低怎么排查它是什么。BLEUBilingual Evaluation Understudy本是机器翻译领域的指标核心思想是你的词组和参考答案的词组重合多少。仓库的 scripts/eval_bleu_rouge.py 对中文先用 jieba 分词再按字符计算用 4-gram 匹配并开启平滑函数避免完全不相同时得 0 分同时输出 ROUGE-1/2/L 作为补充参考。数值怎么读。原始值在 0~1 之间脚本乘以 100 展示越高说明生成内容越贴近参考。翻译、摘要这类有标准答案的任务上 40 分以上算合格开放问答场景数值天然偏低更适合做同题多次生成之间的相对比较。异常值意味着什么。分数低于 10先抽几条人眼看是措辞不同但意思对还是方向就跑偏了前者调解码参数如 temperature通常就能救后者说明能力没学到得补训练数据。反过来分数高得离谱接近 90也要警惕模型可能学会了复读参考答案建议换一批数据验证。综合判断示例一个数字都别只看假设同一评测集上得到三个微调版本A困惑度 8.2BLEU-4 45.3 —— 两项都比基座好微调有效B困惑度 3.1BLEU-4 28.7 —— 困惑度降得比 A 猛但 BLEU 反而变差典型过拟合信号模型背住了训练集的语感却没学会迁移C困惑度 21.0BLEU-4 12.5 —— 两项全面退步先别怀疑数据回头查学习率、训练步数和模板配置判断顺序建议先看方向对比基座是升是降再看配合两项指标是否同向改善最后下结论。避坑清单跑指标时最容易卡住的 5 件事现象常见原因处理方向困惑度异常高模板与数据不匹配、评测集难度高核对--template与data/dataset_info.json中注册的字段名与基座模型同条件对比困惑度降了BLEU 没跟着涨过拟合或数据量不足增加训练数据、加正则化weight decay、换未见数据复测BLEU 偏低生成风格偏离参考、解码参数不合适抽样人工核对调整 temperature/top_p评估跑得慢batch 太小或 CPU 进程少调大--batch_sizeBLEU 脚本内部是 8 进程核数多的机器可放宽脚本报依赖缺失未装评估依赖pip install -r requirements/metrics.txt最后多说一句这两个指标是模型能力的快速体检能抓出大部分明显问题但正式结论仍需结合下游任务表现和人工评审。如果想进一步深入仓库里还有内置的选择题基准评测src/llamafactory/eval/能按学科类别输出正确率适合作为下一篇动手练习。【免费下载链接】LlamaFactoryUnified Efficient Fine-Tuning of 100 LLMs VLMs (ACL 2024)项目地址: https://gitcode.com/GitHub_Trending/ll/LlamaFactory创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考