大模型管理工具:LLaMA-Factory

目录

一、安装与环境配置

二、​启动 Web 界面

三、数据准备

四、模型训练

五、模型评估

七、模型导出

八、API服务部署


        LLaMA-Factory 是一个开源的大语言模型(LLM)微调框架,旨在简化大规模模型的训练、微调和部署流程。它支持多种主流模型(如 LLaMA、Qwen、ChatGLM 等),提供命令行和可视化 WebUI 两种交互方式,并集成了 LoRA、QLoRA 等高效微调技术,显著降低了模型定制化的技术门槛。

一、安装与环境配置

# 克隆仓库
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory# 创建 Conda 环境
conda create -n llamafactory python=3.11
conda activate llamafactory# 安装依赖(含 PyTorch 和评估工具)
pip install -e ".[all]"
# 安装 DeepSpeed(可选)
pip install deepspeed

        若需从 ModelScope 下载模型,可设置环境变量:

export USE_MODELSCOPE_HUB=1(Linux)或 set USE_MODELSCOPE_HUB=1(Windows)

二、​启动 Web 界面

llamafactory-cli webui  # 自动启动可视化操作台,支持参数配置与训练启动

三、数据准备

        支持多种数据格式(JSON、CSV、TXT)转换成训练所需的格式(如Alpaca、ShareGPT等),需按如下格式组织:

[
  {"instruction": "问题1", "input": "输入1", "output": "答案1"},
  {"instruction": "问题2", "output": "答案2"}
]

        将数据转换为训练所需的格式:


python src/llamafactory/data/convert_data.py \--input_path data/raw.json \--output_path data/processed.json \--format alpaca

四、模型训练

llamafactory-cli train \--model_name_or_path meta-llama/Llama-2-7b-hf \--train_file data/train.json \--output_dir ./output \--num_train_epochs 3 \--per_device_train_batch_size 4 \--gradient_accumulation_steps 8 \--learning_rate 2e-4 \--deepspeed config/ds_config.json \--fp16

五、模型评估

llamafactory-cli evaluate \--model_name_or_path ./output \--eval_file data/val.json \--per_device_eval_batch_size 8 \--predict_with_generate

六、模型推理

llamafactory-cli generate \--model_name_or_path ./output \--prompt "请解释量子力学的基本原理。" \--max_new_tokens 256 \--temperature 0.7

七、模型导出

        在 LLaMA-Factory 中,导出训练后的模型可以通过 llamafactory-cli export 命令完成。支持导出为多种格式(如 GGUF ONNX Hugging Face 格式 ),以下是具体用法和示例:

        导出为 GGUF 格式(支持量化) 

# 导出为 GGUF 格式(不量化)
llamafactory-cli export \--model_name_or_path ./output/llama-3-finetuned \--export_dir ./exported/gguf \--export_format gguf# 导出为 GGUF 格式并量化(如 q4_k_m)
llamafactory-cli export \--model_name_or_path ./output/llama-3-finetuned \--export_dir ./exported/gguf-quantized \--export_format gguf \--quantization q4_k_m

        导出为 ONNX 格式 :

llamafactory-cli export \--model_name_or_path ./output \--export_dir ./onnx \--export_format onnx

        导出为 Hugging Face 格式(原生格式)

llamafactory-cli export \--model_name_or_path ./output/llama-3-finetuned \--export_dir ./exported/hf-model \--export_format hf

八、API服务部署

# 启动 OpenAI 风格 API
CUDA_VISIBLE_DEVICES=0 llamafactory-cli api examples/inference/llama3_lora_sft.yaml# 使用 VLLM 加速推理(需先合并模型)
llamafactory-cli api --model_name_or_path merged_model --infer_backend vllm

通过 http://localhost:8000/docs 访问 API 文档。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/72686.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

推流项目的ffmpeg配置和流程重点总结一下

ffmpeg的初始化配置,在合成工作都是根据这个ffmpeg的配置来做的,是和成ts流还是flv,是推动远端还是保存到本地, FFmpeg 的核心数据结构,负责协调编码、封装和写入操作。它相当于推流的“总指挥”。 先来看一下ffmpeg的…

大语言模型从理论到实践(第二版)-学习笔记(绪论)

大语言模型的基本概念 1.理解语言是人工智能算法获取知识的前提 2.语言模型的目标就是对自然语言的概率分布建模 3.词汇表 V 上的语言模型,由函数 P(w1w2 wm) 表示,可以形式化地构建为词序列 w1w2 wm 的概率分布,表示词序列 w1w2 wm…

strace工具的交叉编译

1、下载源码 git clone https://github.com/strace/strace.git cd strace 2、运行 bootstrap 脚本(如果需要) 如果源码中没有 configure 脚本,运行以下命令生成: ./bootstrap 3. 配置编译参数 运行 configure 脚本&#xff…

Vue 3 组件库持续集成 (CI) 实战:GitHub Actions 自动化测试与 Storybook 文档构建 - 构建高效可靠的组件库 CI 流程

引言 欢迎再次回到 Vue 3 + 现代前端工程化 系列技术博客! 在昨天的第十篇博客中,我们深入学习了代码覆盖率分析,掌握了利用 Jest 代码覆盖率报告提升单元测试有效性的方法,进一步巩固了组件库的质量防线。 今天,我们将迈向 自动化流程 的构建,聚焦于 持续集成 (Continu…

无穿戴动捕数字人互动方案 | 畅享零束缚、高沉浸的虚实交互体验

在数字化浪潮席卷而来的当下,虚拟人互动体验正逐渐成为各领域的新宠。长久以来,虚拟人驱动主要依靠穿戴式动作捕捉设备,用户需要通过佩戴传感器或标记点来实现动作捕捉。然而,随着技术的不断突破,一种全新的无穿戴动作…

03 HarmonyOS Next仪表盘案例详解(二):进阶篇

温馨提示:本篇博客的详细代码已发布到 git : https://gitcode.com/nutpi/HarmonyosNext 可以下载运行哦! 文章目录 前言1. 响应式设计1.1 屏幕适配1.2 弹性布局 2. 数据展示与交互2.1 数据卡片渲染2.2 图表区域 3. 事件处理机制3.1 点击事件处理3.2 手势…

python-leetcode-统计构造好字符串的方案数

2466. 统计构造好字符串的方案数 - 力扣(LeetCode) 这个问题可以用**动态规划(DP)**来解决,思路如下: 思路 1. 定义 DP 数组 设 dp[i] 表示长度为 i 的好字符串的个数。 2. 状态转移方程 我们可以在 dp…

MySQL------存储引擎和用户和授权

9.存储引擎 1.两种引擎 MyISAM和InnoDB 2.两种区别 1.事务: MyISAM不支持事务 2.存储文件: innodb : frm、ibd MyISAM: frm、MYD、MYI 3.数据行锁定: MyISAM不支持 4.全文索引: INNODB不支持,所以MYISAM做select操作速度很快 5.外键约束: MyISAM…

题海拾贝:P9241 [蓝桥杯 2023 省 B] 飞机降落

Hello大家好&#xff01;很高兴我们又见面啦&#xff01;给生活添点passion&#xff0c;开始今天的编程之路&#xff01; 我的博客&#xff1a;<但凡. 我的专栏&#xff1a;《编程之路》、《数据结构与算法之美》、《题海拾贝》 欢迎点赞&#xff0c;关注&#xff01; 1、题…

删除有序数组中的重复项(js实现,LeetCode:26)

给你一个 非严格递增排列 的数组 nums &#xff0c;请你原地删除重复出现的元素&#xff0c;使每个元素只出现一次&#xff0c;返回删除后数组的新长度。元素的相对顺序应该保持一致。然后返回 nums 中唯一元素的个数。 考虑 nums 的唯一元素的数量为 k &#xff0c;你需要做以…

3-9 WPS JS宏单元格复制、重定位应用(拆分单表到多表)

************************************************************************************************************** 点击进入 -我要自学网-国内领先的专业视频教程学习网站 *******************************************************************************************…

大白话react第十六章React 与 WebGL 结合的实战项目

大白话react第十六章React 与 WebGL 结合的实战项目 1. 项目简介 React 是一个构建用户界面的强大库&#xff0c;而 WebGL 则允许我们在网页上实现高性能的 3D 图形渲染。将它们结合起来&#xff0c;我们可以创建出炫酷的 3D 网页应用&#xff0c;比如 3D 产品展示、虚拟场景…

【AI赋能】AI 工具生成视频教材:从创意到成品的全流程指南

AI 工具生成视频教材&#xff1a;从创意到成品的全流程指南 目标 通过本教材&#xff0c;您将学会如何利用 AI 工具&#xff08;Grok、Sora、Speechify 和 CapCut&#xff09;生成一个完整的视频&#xff0c;包括脚本生成、视频片段制作、字幕添加、音频生成以及最终剪辑合成…

C/C++蓝桥杯算法真题打卡(Day2)

一、面试题 08.01. 三步问题 - 力扣&#xff08;LeetCode&#xff09; 算法代码&#xff1a; class Solution { public:const int MOD 1e9 7;int waysToStep(int n) {// 1. 创建 dp 表// 2. 初始化// 3. 填表// 4. 返回// 处理边界情况if (n 1 || n 2)return n;if (n 3)r…

腾讯云物联网平台(IoT Explorer)设备端使用

1、直接看图流程 2、跑起来demo,修改产品id,设备名称,设备秘钥。 3、连接部分 4、修改默认地址和端口 sdk里面的地址默认是带着产品ID拼接的,咱们现在中铁没有泛域名解析,要改下这里。把+productID都去掉,然后地址里的.也去掉。

GStreamer —— 2.13、Windows下Qt加载GStreamer库后运行 - “教程13:播放控制“(附:完整源码)

运行效果(音频) 简介 上一个教程演示了GStreamer工具。本教程介绍视频播放控制。快进、反向播放和慢动作都是技术 统称为 Trick Modes&#xff0c;它们都有一个共同点 修改 Normal playback rate。本教程介绍如何实现 这些效果并在交易中添加了帧步进。特别是&#xff0c;它 显…

Dify+DeepSeek | Excel数据一键可视化(创建步骤案例)(echarts助手.yml)(文档表格转图表、根据表格绘制图表、Excel绘制图表)

Dify部署参考&#xff1a;Dify Rag部署并集成在线Deepseek教程&#xff08;Windows、部署Rag、安装Ragan安装、安装Dify安装、安装ollama安装&#xff09; DifyDeepSeek - Excel数据一键可视化&#xff08;创建步骤案例&#xff09;-DSL工程文件&#xff08;可直接导入&#x…

vscode mac版本 配置git

首先使用 type -a git查看git的安装目录 然后在vscode中找到settings配置文件&#xff0c;修改git.path

JVM与性能调优详解

以下是关于 JVM与性能调优 的详细解析&#xff0c;结合理论、实践及常见问题&#xff0c;分多个维度展开&#xff1a; 一、JVM性能调优的核心目标 性能调优的核心目标是通过优化内存管理、垃圾回收&#xff08;GC&#xff09;策略和线程管理&#xff0c;实现以下平衡&#xff…

Vue23Web 基礎性拉滿的面試題(2025版)還沒更新完...

Vue2&3 基礎性1. 關於Vue2和Vue3生命週期的差別2. Vue2&3組件之間傳參不同點Vue2 傳遞與接收Vue3 傳遞與接收 (使用script setup語法糖)Vue3 傳遞與接收 (不使用script setup語法糖) 3. Vue2&3 keep-alive 組件Vue2 keep-aliveVue3 keep-alive 進階性爲什麽POST請求…