【踩坑实录】解决 LLamafactory 微调 InternVL3 报错 “Processor was not found” 的完整流程
如何解决 LLamafactory 微调 InternVL3 报错 “Processor was not found”
在使用 LLamafactory 对 InternVL3 模型进行微调时,许多同学可能会遇到以下报错:
Processor was not found 这个错误的出现主要是由于 模型与 LLamafactory 的预处理器(Processor)定义不匹配,导致在加载模型时无法正确找到对应的处理器。本文记录了我踩坑的完整过程,以及最终的解决方案,供大家参考。
1. 环境准备
首先,我们需要正确安装 LLamafactory 及其依赖:
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git cd LLaMA-Factory pip install -e ".[torch,metrics]" --no-build-isolation 确保 Python 版本 ≥ 3.9,并且已经安装了 Pytorch + CUDA 的 GPU 环境(不然后续训练无法运行)。
2. 问题复现
我最开始是直接使用 HuggingFace 官方给出的 InternVL3 模型链接,例如:
OpenGVLab/InternVL3-1B 但是在使用 LLamafactory 进行加载和微调时,会不断出现以下报错:
Processor was not found 我尝试过多种issues的解决方案,比如:
- 手动安装
transformers的不同版本 - 替换
AutoProcessor为AutoTokenizer+AutoImageProcessor - 查看官方 issue 中类似的报错
最后找到一个最稳定的解决方案。
3. 解决方案
✅ 不要使用官方给出的 HF 模型地址,而是要使用 适配 LLamafactory 的模型版本。
也就是说,你需要找到在 HuggingFace 上提供的 带有完整 Processor 配置 的版本,而不是直接拉取官方原始模型。
这样,LLamafactory 在加载模型时就能自动找到 processor_config.json,避免报错。
4. 示例:微调 InternVL3
当正确使用支持的 HuggingFace 模型后,微调就能顺利进行了。
下面以 InternVL3 的自我认知微调 为例:
这样模型可以正常加载 Processor 并开始训练。
5. 总结
- 出现
Processor was not found报错,本质原因是 模型与 LLamafactory 的依赖不兼容。 - 解决方法是 换用 HuggingFace 上与 LLamafactory 匹配的模型版本,而不是使用官方原始模型。
- 一旦模型能正常加载 Processor,后续的 SFT(微调)、Lora 等流程就能顺利跑通。
如果你在微调 InternVL3 的过程中也遇到过类似问题,希望这篇文章能帮你节省踩坑时间 🚀。