LLaMA-Factory AutoDL WebUI 微调与本地 Ollama 运行笔记
记录通过在 AutoDL 算力云(Linux)上用 LLaMA-Factory 的 WebUI 微调和训练模型,微调后下载到本地用 Ollama 运行的全流程,代码和界面操作为主,记关键点和坑。
环境准备
- AutoDL 环境:Linux(Ubuntu 20.04 常见),租 NVIDIA GPU(推荐 A100 40GB,显存 ≥24GB)
- 本地环境:Windows 10/11,装 Ollama
- 软件:
- Python 3.9
- CUDA 11.8 或 12.x(AutoDL 镜像自带)
- 网络:AutoDL 需梯子(Hugging Face 下模型)
AutoDL 云端配置与 WebUI 微调
1. 租用实例与检查
- 登录 AutoDL,选 GPU 实例(A100 40GB)。
- 进终端,确认:
python --version # 3.9.x
nvidia-smi # GPU 和 CUDA
2. 下载 LLaMA-Factory
- 去 LLaMA-Factory 项目页,点“Code” > “Download ZIP”。
- 用 AutoDL 文件管理或 SFTP 上传到服务器。
- 解压:
unzip LLaMA-Factory-main.zip
mv LLaMA-Factory-main LLaMA-Factory
cd LLaMA-Factory
3. 配置环境
- 建虚拟环境:
python -m venv venv
source venv/bin/activate
- 装依赖:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install gradio # WebUI 必需
- 确认 PyTorch:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
检查:
python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
4. 启动 WebUI
- 运行:
python src/webui.py
- 输出地址(类似
http://0.0.0.0:7860),AutoDL 需端口映射:- 去 AutoDL 控制台,设置“自定义端口”,映射 7860。
- 浏览器打开公网地址(比如
http://xxx.autodl.com:7860)。
- 坑:7860 端口可能被防火墙挡,确认开放。
5. WebUI 数据集准备
- 内置数据集:WebUI 的“Dataset” Tab,选
alpaca_zh(测试用)。 - 自定义数据集:
- 格式:JSON,参考
data/alpaca_zh.json:[
{"instruction": "你好", "input": "", "output": "你好!有什么可以帮你的?"}
]
- 上传:
- 在“Dataset” Tab,点“Upload”,选
my_data.json。 - 在“Custom Dataset” 填文件名(
my_data),点“Register”。
- 在“Dataset” Tab,点“Upload”,选
- 格式:JSON,参考
- 注意:数据至少几百条,格式错会报错。
6. WebUI 微调
- 模型选择:
- 在“Model” Tab,选基模型(比如
meta-llama/Llama-3-8B-Instruct)。 - 提前下模型:
huggingface-cli download meta-llama/Llama-3-8B-Instruct --local-dir /root/models/llama3
- 在“Model” Tab,选基模型(比如
- 训练设置:
- 去“Train” Tab。
- Adapter:选“LoRA”。
- Dataset:选
my_data或alpaca_zh. - 参数:
- Batch Size:4
- Learning Rate:5e-6
- Epochs:3
- LoRA Target:
q_proj,v_proj - Output Dir:
./output/llama3_finetuned
- 点“Start Training”。
- 输出:LoRA 适配器存
output/llama3_finetuned。
7. 合并与导出
- WebUI 无直接导出,用 CLI:
llamafactory-cli export \
--model_name_or_path /root/models/llama3 \
--adapter_name_or_path output/llama3_finetuned \
--export_dir ./exported_model \
--export_size 2 \
--export_legacy_format False
- 导出到
./exported_model。
8. 下载到本地
- 压缩:
tar -czvf llama3_finetuned.tar.gz ./exported_model
- 下到本地(
D:\Models):- 用 AutoDL 文件管理或 SFTP。
本地 Ollama 运行
1. 安装 Ollama
- Windows:
- 去 Ollama 官网 下安装包。
- 验证:
ollama --version
2. 转换模型为 GGUF
- 装
llama.cpp:git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
pip install -r requirements.txt
- 转换:
python convert-hf-to-gguf.py D:\Models\exported_model --outfile llama3_finetuned.gguf
3. 创建 Ollama Modelfile
- 新建
Modelfile:FROM ./llama3_finetuned.gguf
TEMPLATE """
{{ .System }}
{{ .Prompt }}
"""
- 导入:
ollama create llama3_finetuned -f Modelfile
4. 运行
- 启动:
ollama run llama3_finetuned
- 测试:
>>> 你好
你好!有什么可以帮你的?
注意
- 网络:AutoDL 下模型慢,配代理或用国内镜像。
- 显存:LoRA 批次调小(4 或 2),A100 40GB 跑 8B 稳。
- 数据集:几百条起步,JSON 格式不能乱。
- 端口:7860 被占,改
src/webui.py的port。
问题
- WebUI 打不开:端口没映射或防火墙挡。
- 微调失败:显存爆或数据格式错,查
output/llama3_finetuned日志。 - Ollama 导入失败:GGUF 文件坏,确认路径。
- 推理慢:本地 CPU 卡,试 4-bit 量化。
补充
- 监控:WebUI 无曲线,CLI 跑 TensorBoard:
pip install tensorboard
tensorboard --logdir output/llama3_finetuned
- 数据集:用 Easy Dataset 造数据。
LLaMA-Factory AutoDL WebUI 微调与本地 Ollama 运行笔记的更多相关文章
- hadoop 2.7.3本地环境运行官方wordcount-基于HDFS
接上篇<hadoop 2.7.3本地环境运行官方wordcount>.继续在本地模式下测试,本次使用hdfs. 2 本地模式使用fs计数wodcount 上面是直接使用的是linux的文件 ...
- hadoop 2.7.3本地环境运行官方wordcount
hadoop 2.7.3本地环境运行官方wordcount 基本环境: 系统:win7 虚机环境:virtualBox 虚机:centos 7 hadoop版本:2.7.3 本次先以独立模式(本地模式 ...
- spark在idea中本地如何运行?(处理问题NoSuchFieldException: SHUTDOWN_HOOK_PRIORITY)
spark在idea中本地如何运行? 前几天尝试使用idea在本地运行spark+scala的程序,出现了问题,http://www.cnblogs.com/yjf512/p/7662105.html ...
- jinkens + svn 把代码更新到本地在运行。(方法比较笨,只是想实现自己的想法。把代码更新下来在运行。)
jinkens + svn 把代码更新到本地在运行.
- 无法定位 Local Database Runtime 安装。请验证 SQL Server Express 是否正确安装以及本地数据库运行时功能是否已启用。
错误描述: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provide ...
- vue打包之后在本地运行,express搭建服务器,nginx 本地服务器运行
一.使用http-server 1.安装http-server npm install -g http-server 2.通过命令进入到dist文件夹 3.运行http-server 以上在浏览器输入 ...
- Hadoop详解(04-1) - 基于hadoop3.1.3配置Windows10本地开发运行环境
Hadoop详解(04-1) - 基于hadoop3.1.3配置Windows10本地开发运行环境 环境准备 安装jdk环境 安装idea 配置maven 搭建好的hadoop集群 配置hadoop ...
- 大数据入门第八天——MapReduce详解(四)本地模式运行与join实例
一.本地模式调试MR程序 1.准备 参考之前随笔的windows开发说明处:http://www.cnblogs.com/jiangbei/p/8366238.html 2.流程 最重要的是设置Loc ...
- 攻城狮在路上(陆)-- 配置hadoop本地windows运行MapReduce程序环境
本文的目的是实现在windows环境下实现模拟运行Map/Reduce程序.最终实现效果:MapReduce程序不会被提交到实际集群,但是运算结果会写入到集群的HDFS系统中. 一.环境说明: ...
- Form_Form Builder本地部署运行的实现(案例)
2014-08-09 Created By BaoXinjian
随机推荐
- SciTech-EECS-EDA-Altium Designer-FTDI FT232- Xilinx JTAG Programmer + Debugger
Origin: https://matthewtran.dev/2021/08/ftdi-xilinx-jtag-programmer/ Matthew Tran Article Literally ...
- OpenList挂载「迅雷」
存储->添加 选择迅雷 填写挂载路径,其他的按默认的即可 填写用户名和密码 注意:第一次挂载迅雷的时候,这里填的手机号不要+86 例如,我的手机号是12345678,此时直接填12345678即 ...
- Win11专业版如何关掉右边通知的问题
有一些雨林木风官网的用户,说他们在win11专业版系统中发现右边通知的功能不停的弹出提醒,特别是专心工作的时候,非常碍手碍脚,就想知道有什么办法可以关闭这个功能.接下来,ylmf系统小编就来分享一下详 ...
- PHP下载mp3文件, 图片等到本地
//下载文件 $url = 'http://xxx.com/99248982.mp3'; $ch = curl_init($url); curl_setopt($ch, CURLOPT_HEADER, ...
- ui 模糊 shader
build in 环境不适用于urp hdrp 被ui覆盖部分将会产生模糊 效果 // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'U ...
- 修改/etc/hosts.allow和/etc/hosts.deny允许linux服务器允许和限制访问策略
对于能过xinetd程序启动的网络服务,比如ftp telnet,我们就可以修改/etc/hosts.allow和/etc/hosts.deny的配置,来许可或者拒绝哪些IP.主机.用户可以访问.比如 ...
- echarts如何在x轴的tooltip上加上描述文字
想要实现的效果,如下图: 实现该操作的代码如下: 1 tooltip: { 2 formatter: "month:{b0}<br>" 3 4 } 实现该效果的实例图如 ...
- QtCreator发布软件时自动复制文件或文件夹
1.背景当使用QtCreator发布软件时,有时需要同时发布一些配置文件等.可以通过手动拷贝方式复制到发布的软件根目录下,但是这样必须手动操作拷贝,麻烦且容易遗忘. 因此最好将需要发布的附件自动发布到 ...
- 本土优势驱动生态繁荣,Gitee迈向2025年中国代码托管市场领军者
Gitee领跑中国代码托管市场:本土化优势与全球化野望 在中国数字化转型的浪潮中,代码托管平台正成为软件开发基础设施的关键一环.作为国内领先的代码托管平台,Gitee凭借其本土化优势和技术创新,不仅在 ...
- LiveQing直播点播存储流媒体服务-服务器并发性能及消耗带宽计算参考
LiveQing云端直播点播流媒体软件: 提供设备接入: RTMP推流服务.RTMP分发.HLS分发.HTTP-FLV分发: 云端录像.云端录像检索.云端录像点播.云端录像下载: RTMP转推.推流鉴 ...