大模型金融微调实战:从环境准备到效果验证的完整流程

金融文本里的财报、公告、研报术语密集,通用大模型常常答得笼统甚至编造数字。
金融微调的目标不是让模型背下所有数据,而是让它学会按金融语境回答,并且能引用输入中的事实。
下面按单卡服务器、7B 级模型和 LoRA 方式展开,显卡显存建议 24GB 起步,显存更小需要调小批次或换用更小模型。

先确认你的场景和数据是否适合微调

适合微调的情况:有几百到几千条高质量金融问答或摘要样本,任务格式稳定,比如财报要点提取、金融新闻情绪判断、研报摘要生成。
不适合的情况:只是想让模型多懂几个金融名词,这类需求优先用检索增强或提示词解决。

准备一份指令数据,建议用 JSONL,每行一条,字段统一。
例如:

{"instruction": "根据以下公告判断属于利好还是利空,并说明理由。", "input": "公司公告:拟回购不超过2亿元股份用于员工持股计划。", "output": "利好。回购通常传递管理层对股价的信心,但需结合回购金额占市值比例判断实际影响。"}

数据要划分训练集和验证集,比例可参考 8:2。
金融领域尤其要检查输出中是否出现编造的具体数字,训练前先把明显错误样本剔除。

环境准备与微调工具安装

以下命令以 Linux 服务器、Python 3.10 和 CUDA 12 环境为例,具体版本请按你的显卡驱动和官方文档调整。

conda create -n finetune python=3.10 -y
conda activate finetune
git clone https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
pip install -e ".[torch,metrics]"

下载基座模型,例如 Qwen2.5-7B-Instruct,放到本地目录 /data/models/Qwen2.5-7B-Instruct。
如果服务器无法直接访问模型源,先在有网络的环境下载后上传。

验证环境是否可用:

python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"

输出应为 True 和显卡型号。
如果为 False,先检查驱动和 CUDA 版本,不要急着开始训练。

配置 LoRA 微调并启动训练

LLaMA-Factory 支持命令行和 Web 面板两种方式。
习惯命令行的可以用配置文件,先在 data/dataset_info.json 中登记数据集:

"fin_train": {
  "file_name": "fin_train.jsonl"
}

把 fin_train.jsonl 放到 data/ 目录。
然后新建训练配置 fin_lora.yaml,核心参数如下:

model_name_or_path: /data/models/Qwen2.5-7B-Instruct
stage: sft
do_train: true
finetuning_type: lora
dataset: fin_train
cutoff_len: 2048
per_device_train_batch_size: 2
gradient_accumulation_steps: 8
learning_rate: 2.0e-4
num_train_epochs: 3
lora_rank: 16
output_dir: /data/output/fin_lora

启动训练:

llamafactory-cli train fin_lora.yaml

训练开始后关注日志中的 loss 是否平稳下降,以及显存占用。
如果出现显存不足,优先把 per_device_train_batch_size 调到 1,并适当增大 gradient_accumulation_steps;
仍然不足时降低 cutoff_len 或换用更小参数模型。

常见报错与避坑提醒

  • 报错 CUDA out of memory:先确认没有其他进程占用显卡,可用 nvidia-smi 查看;再依次调小批次、序列长度和 LoRA rank。
  • 报错找不到数据集:检查 dataset_info.json 中的键名是否和 yaml 里的 dataset 完全一致,文件是否放在 data/ 目录。
  • 训练 loss 不降或剧烈震荡:学习率可能偏大,金融小数据集可尝试 1e-4 到 2e-4;同时检查数据中是否有大量空输出或格式错乱。
  • 不要用训练集当验证集汇报效果,金融问答很容易过拟合,验证集必须单独留出。
  • 微调后模型仍可能编造数字,涉及金额、日期、监管条款的输出要人工复核或接入检索校验。

验证微调效果是否真的变好

训练结束后,用验证集做对比推理。
命令行方式可参考:

llamafactory-cli chat fin_lora.yaml

准备 20 到 50 条验证问题,分别用基座模型和微调后模型回答,从三个维度检查:格式是否符合要求、是否引用了输入中的事实、是否出现编造内容。
不要只看一两个例子就下结论,建议把对比结果记录成表格。

如果微调后格式更稳定但事实性下降,说明训练数据里混入了低质量样本,需要回到数据清洗环节。
金融微调实战的关键往往不在训练脚本,而在数据质量和验证方法。

读者常问的两个问题

没有金融标注团队,能不能用公开数据做微调?
可以先用公开金融问答数据跑通流程,但公开数据质量参差,正式使用前仍需人工抽检和清洗。

单卡 24GB 显存能微调多大的模型?
以 LoRA 和 7B 级模型、较短序列长度为例通常可以跑通,具体取决于批次、序列长度和框架实现,建议先用小样本试跑再放大。

按以上步骤完整执行一遍,你就能得到第一个可用的金融 LoRA 适配器。
后续优化优先从数据清洗和验证集设计入手,而不是盲目增加训练轮数。

分享到:
上一篇
大模型教育微调实战:从数据准备到LoRA训练与效果验证
下一篇
大模型电商微调实战:从数据到部署的零基础落地步骤
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意