Mac基于LLaMA Factory微调模型导入Ollama踩坑记录

Mac基于LLaMA Factory微调模型导入Ollama踩坑记录

Mac基于LLaMA Factory微调模型导入Ollama踩坑记录

记录下完成大模型微调demo遇到的问题及最终效果

一、llama Factory安装

# 通过git下载项目git clone https://github.com/hiyouga/LLaMA-Factory.git # 进入目录cd LLaMA-Factory # 安装 pip install -e ".[torch,metrics]"

遇到问题1:ERROR: Package 'llamafactory' requires a different Python: 3.9.6 not in '>=3.11.0'。然后升级到python最高版本3.14解决(不建议选最新版本,后面使用数据集遇到新的问题
问题2:

error: externally-managed-environment × This environment is externally managed ╰─> To install Python packages system-wide, try brew install xyz, where xyz is the package you are trying to install. note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages. hint: See PEP 668 for the detailed specification. 

选择安装虚拟环境

# 安装anaconda brew install --cask anaconda # 创建虚拟环境 lora conda create -n lora python=3.14# 激活该环境 conda activate lora 

再执行pip install -e ".[torch,metrics]" 依然有同样问题,添加对应参数
pip install --break-system-packages -e ".[torch,metrics]"
成功安装后在目录执行
llamafactory-cli webui ,会创建一个web服务,能访问http://localhost:7860/ 说明安装成功

在这里插入图片描述

二、模型下载&验证

在modelscope找一个较小的模型: DeepSeek-R1-Distill-Qwen-1.5B,可以通过git方式下载

# 因为存在大文件下载,需要安装 lfsgit lfs install# 下载模型git clone https://www.modelscope.cn/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B.git 

下载完成后可通过页面配置模型名称、路径,然后在Chat中加载模型,进行测试

在这里插入图片描述


我这边在初次加载抛出异常

 self.model = load_model( ~~~~~~~~~~^ self.tokenizer, model_args, finetuning_args, is_trainable=False, add_valuehead=(not self.can_generate) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) # must after fixing tokenizer to resize vocab ^ File "/Users/xxx/Documents/workspace/python/LLaMA-Factory/src/llamafactory/model/loader.py", line 178, in load_model model = load_class.from_pretrained(**init_kwargs) File "/opt/homebrew/lib/python3.14/site-packages/transformers/models/auto/auto_factory.py", line 372, in from_pretrained return model_class.from_pretrained( ~~~~~~~~~~~~~~~~~~~~~~~~~~~^ pretrained_model_name_or_path, *model_args, config=config, **hub_kwargs, **kwargs ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/opt/homebrew/lib/python3.14/site-packages/transformers/modeling_utils.py", line 4109, in from_pretrained load_info = cls._load_pretrained_model(model, state_dict, checkpoint_files, load_config) File "/opt/homebrew/lib/python3.14/site-packages/transformers/modeling_utils.py", line 4218, in _load_pretrained_model file_pointer = safe_open(file, framework="pt", device="cpu") safetensors_rust.SafetensorError: Error while deserializing header: header too large 

原因是git下载大文件不全,可以检测下模型DeepSeek-R1-Distill-Qwen-1.5B 目录下 model.safetensors的文件大小是不是和下载页面大小一致。可以通过页面上手动下载然后移动到文件夹。

在这里插入图片描述


加载成功后可以通过聊天测试

在这里插入图片描述

三、数据集准备

微调需要导入一份数据集,同样在modelscope中下载一份小的 甄嬛1M数据集,将huanhuan.json 移动到${dir}/LLaMA-Factory/data下,然后在修改该目录下的文件dataset_info.json ,在末尾中添加下面配置

{ // 原本的不动 ,"huanhuan": { "file_name": "huanhuan.json" } } 

在页面Train中数据集能搜到文件名huanhuan

在这里插入图片描述


预览有数据则配置成功

四、训练&验证效果

直接用默认的配置点击开始

在这里插入图片描述


我这边之前使用python3.14遇到的问题,导入数据集函数不兼容。

 File "/opt/homebrew/lib/python3.14/site-packages/dill/_dill.py", line 1217, in save_module_dict StockPickler.save_dict(pickler, obj) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^ File "/opt/homebrew/Cellar/[email protected]/3.14.3_1/Frameworks/Python.framework/Versions/3.14/lib/python3.14/pickle.py", line 1064, in save_dict self._batch_setitems(obj.items(), obj) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ TypeError: Pickler._batch_setitems() takes 2 positional arguments but 3 were given 

后换成3.12版本调通微调,训练完成的日志,用了46分钟。

***** train metrics ***** epoch = 3.0 num_input_tokens_seen = 776520 total_flos = 6738458GF train_loss = 4.5287 train_runtime = 0:46:36.50 train_samples_per_second = 4.0 train_steps_per_second = 0.251 Figure saved at: saves/DeepSeek-R1-1.5B-Distill/lora/train_2026-02-12-16-14-47/training_loss.png [WARNING|2026-02-12 17:01:53] llamafactory.extras.ploting:149 >> No metric eval_loss to plot. [WARNING|2026-02-12 17:01:53] llamafactory.extras.ploting:149 >> No metric eval_accuracy to plot. 

在检查点路径选择我们自己训练后输出的数据集,然后需要先卸载模型,再重新加载。最后在聊天测试“我是谁”,它的答案就不是之前的 deepseek深度求索了。

在这里插入图片描述

五、导出ollama

ollama可以提供API接口,给到后台服务直接调用。 这里通过Export,配置对应的导出路径,就可以导出镜像

在这里插入图片描述


然后通过ollama的创建指令加载刚才导出的目录后面下的Modelfile,名称test_DeepSeek 可自定义

# 安装导出的模型 ollama create test_DeepSeek -f /Users/xxx/Documents/workspace/model/Modelfile # 查看 ollama list # 运行模型, 名称默认带上:latest标签 ollama run test_DeepSeek:latest 

后台就可以通过接口来调用ollama的服务

Read more

LFM2.5-1.2B-Thinking惊艳效果展示:Ollama本地运行下长文本推理

LFM2.5-1.2B-Thinking惊艳效果展示:Ollama本地运行下长文本推理 在本地设备上运行强大的AI模型,曾经是科幻电影中的场景。如今,随着LFM2.5-1.2B-Thinking模型的发布,这一切变成了现实。这个仅有12亿参数的"小模型"却拥有令人惊叹的长文本推理能力,真正实现了"高质量AI装入口袋"的愿景。 1. 模型核心能力概览 LFM2.5-1.2B-Thinking是专为设备端部署设计的新型混合模型,它在LFM2架构基础上进行了深度优化。这个模型最大的亮点在于:用极小的体积实现了接近大模型的性能表现。 1.1 技术特点解析 LFM2.5系列通过扩展预训练和强化学习进行了全面优化。预训练数据量从10T token扩展至28T token,采用了大规模多阶段强化学习训练方式。这意味着模型在保持小巧体积的同时,获得了更丰富的知识储备和更强的推理能力。 核心优势对比: 特性传统大模型LFM2.5-1.2B-Thinking参数量70亿+12亿内存占用4GB+<1GB推理速度较慢极快(AMD CPU上239 tok/

【大模型知识】Chroma + Ollama + Llama 3.1 搭建本地知识库

【大模型知识】Chroma + Ollama + Llama 3.1 搭建本地知识库

搭建本地知识库 * ✅ 一、整体架构设计(RAG + 向量检索 + 本地 LLM) * 🧰 二、推荐技术栈(2026 年最佳实践) * 🛠️ 三、具体搭建步骤(以 Chroma + Ollama + Llama 3.1 为例) * 步骤 1:安装基础环境 * 步骤 2:安装 Python 依赖 * 步骤 3:准备知识文档 * 步骤 4:构建向量知识库(Python 脚本) * 步骤 5:启动问答服务(RAG 推理) * 🔒 四、安全与性能优化建议 * 1. **隐私保护** * 2. **性能调优** * 3. **中文增强** * 🧪 五、

阿里通义千问AI画师体验:中文描述直接生成赛博朋克场景图

阿里通义千问AI画师体验:中文描述直接生成赛博朋克场景图 你有没有试过,只用一句话就让画面在眼前浮现?不是靠想象,而是真真切切——输入“霓虹雨夜的东京巷口,机械义眼少女倚着全息广告牌,身后悬浮车掠过带起蓝紫色光痕”,几秒钟后,一张细节饱满、氛围拉满的赛博朋克图就静静躺在屏幕上。这不是概念图,不是设计师手绘,也不是调了几十个参数的Stable Diffusion工程;这是你在本地浏览器里,敲完回车就出来的结果。 这次我深度体验的是 ZEEKLOG 星图镜像广场上线的 ** Qwen-Image-2512 极速文生图创作室**。它不玩复杂配置,不堆参数选项,甚至没给你调步数、改采样器的机会——但它把“中文理解”和“秒级出图”这两件事,做到了真正意义上的丝滑统一。尤其当你想快速验证一个视觉点子、为方案配图、或单纯被某个中文意象击中时,它比任何“全能型”工具都更懂你。 下面,我就以真实操作为线索,带你完整走一遍:从打开页面到生成第一张赛博朋克图,再到反复迭代优化、批量尝试不同风格,最后说说它到底适合谁、不适合谁。全程不用装环境、不查文档、

零基础玩转AI绘画:Z-Image-Turbo保姆级教程,5分钟出大片

零基础玩转AI绘画:Z-Image-Turbo保姆级教程,5分钟出大片 你有没有过这样的时刻:脑子里闪过一个绝妙的画面——比如“黄昏时分悬浮在云海之上的玻璃城堡”,手指已经点开绘图软件,却卡在第一步:不知道怎么把脑海里的光、影、质感和情绪,变成一行能让AI听懂的提示词?更别说等渲染、调参数、修废图……还没开始创作,热情先被流程浇灭。 Z-Image-Turbo 极速云端创作室,就是为这种“想画就画”的直觉而生。它不讲模型结构、不聊LoRA微调、不设CFG滑块、不让你选采样器——它只做一件事:你写一句话,它秒出一张电影级高清图。没有黑图、不用调试、不占本地显存,连笔记本电脑都能通过浏览器直接用。本文就是为你量身定制的“零门槛启动指南”,从打开页面到保存第一张作品,全程不超过5分钟。 1. 为什么说Z-Image-Turbo是新手的第一台“AI相机” 1.1 它不是另一个需要折腾的WebUI 市面上很多AI绘画工具,界面像控制台,参数像密码本:CFG Scale、Denoising