6.llamafactory项目介绍与安装部署

6.llamafactory项目介绍与安装部署

一、学术资源加速

  • 服务说明:AutoDL提供学术资源加速服务,主要解决GitHub和HuggingFace访问速度慢的问题,但仅限学术用途且不承诺稳定性
  • 加速地址:包含github.com、githubusercontent.com、githubassets.com、huggingface.co等域名
  • 终端配置:
  • 注意事项:
    • 建议不需要时关闭加速,可能影响正常网络
    • 关闭命令:

二、主流微调框架介绍

1. Transformer
  • 生态地位:Hugging Face核心库,NLP领域最广泛使用的基础框架
  • 技术特点:
    • 支持全参数微调
    • 兼容PEFT库扩展
  • 优势:
    • 生态系统最完善,社区活跃
    • 与PyTorch/TensorFlow无缝集成
    • 模型和教程资源丰富
  • 适用场景:中小规模模型实验、研究和开发,微调入门首选
2. PEFT
  • 技术定位:参数高效微调标准库
  • 核心方法:
    • LoRA
    • Prefix-tuning
    • AdaLoRA
    • Prompt Tuning
  • 突出优势:
    • 计算和存储成本极低
    • 与Transformers完美集成
    • 操作简单易用
  • 局限性:仅支持单卡微调,不适合分布式训练
  • 适用场景:资源受限环境(如单卡),需高效适配多任务的场景
3. LLaMA-Factory
  • 产品特色:低代码/无代码快速微调框架
  • 技术集成:
    • 多种微调方法(含LoRA等)
    • 集成优化技术
  • 用户体验:
    • 提供友好Web UI界面
    • 支持拖拽式参数配置
    • 无需深厚代码功底
  • 典型应用:
    • 快速原型验证
    • 非技术人员微调
    • 本课程主要教学框架
4. ModelScope
  • 平台定位:阿里"模型即服务"(MaaS)平台
  • 技术特点:
    • 多模态模型支持
    • 训练-评估-部署全流程
  • 特色优势:
    • 中文场景优化
    • 企业级生产环境支持
  • 适用场景:需要多模态模型和完整流水线的企业用户
5. MS-SWIFT
  • 规模支持:超大规模模型微调
  • 核心技术:
    • LoRA/QLoRA
    • 分布式训练
    • 量化技术
  • 模型覆盖:
    • 支持500+LLM
    • 200+多模态模型
  • 适用场景:需要微调超大规模模型或追求极致性能的生产部署
6. Unsloth
  • 技术突破:动态量化微调(2024年新技术)
  • 核心优化:
    • LoRA/QLoRA底层重构
    • 训练速度提升2倍
    • 显存占用大幅降低
  • 显著特点:
    • 量化微调几乎无损精度
    • 兼容Hugging Face生态
  • 当前局限:仅支持单卡微调
  • 适用场景:
    • 计算资源严格受限
    • 追求训练效率极限
    • 20B参数以下模型
7. 小结
  • 框架选择指南:
    • 入门实验:Transformers+PEFT组合
    • 快速实现:LLaMA-Factory
    • 企业多模态:ModelScope/MS-SWIFT
    • 资源受限:Unsloth
  • 发展趋势:Unsloth若能支持分布式训练,可能成为未来主导框架
  • 课程选择:本课程以LLaMA-Factory作为主要教学框架

三、LLaMA-Factory项目介绍

  • 项目地址: https://github.com/hiyouga/LLaMA-Factory
  • 项目热度: 目前已有57.2k stars,287 watching和7k forks,从2023年开始人气持续快速增长
1. 支持的模型
  • 覆盖范围: 支持几乎所有主流大语言模型,包括:
    • Baichuan 2 (7B/13B)
    • BLOOM/BLOOMZ (560M-176B)
    • DeepSeek系列 (1.5B-671B)
    • Gemma系列 (2B-27B)
    • GLM系列 (9B-355B)
    • GPT系列 (0.1B-120B)
    • 最新支持的GPT-OSS (20B/120B)
  • 模板支持: 每个模型都有对应的对话模板(chat template)
2. 安装要求
  • 核心依赖:
    • Python: 3.9(最低)/3.10(推荐)
    • PyTorch: 2.0.0(最低)/2.6.0(推荐)
    • Transformers: 4.49.0(最低)/4.50.0(推荐)
  • 可选组件:
    • CUDA: 11.6(最低)/12.2(推荐)
    • Flash-attn: 2.5.6(最低)/2.7.2(推荐)
  • 环境适配: 部分功能需要特定架构的显卡支持,如V100显卡不支持某些功能
3. 硬件要求
  • 全精度训练:
    • 32位: 7B模型需要120GB显存
    • 16位(bf16): 7B模型需要60GB显存
  • 高效微调方法:
    • LoRA/Freeze: 7B模型仅需16GB显存
    • QLoRA 8-bit: 7B模型需10GB显存
    • QLoRA 4-bit: 7B模型仅需6GB显存
4. 安装
  • 先在autodl购买实例
    • 在autodl进入jupytelLab-终端
  • 下载
    • 输入
      • ls
      • cd autodl-tmp
      • git clone --depth 1 https://github.com/hiyouga/LlamaFactory.git
  • 进入:
  • 虚拟环境建议: 本地使用建议创建conda虚拟环境
  • conda create -n llamafactory python=3.10
  • 安装
  • 拓展模块安装
    • flashAttention库----加速
      • pip install flash-attn --no-build-isolation  #注意:V100不支持该库
    • bitsandbytes库--量化库
      • pip install bitsandbytes
    • deepspeed库---做分布式微调
      • pip install deepspeed==0.12.3
    • accelerate库--加速
      • pip install accelerate
pip install -e . pip install -r requirements/metrics.txt
cd LlamaFactory

四、llama factory项目文件介绍

  • /data文件夹
    • 存放数据集的文件夹,可以用开源数据集,也可以自己写数据集
  • /examples文件夹
    • 提供了训练(deepspeed,lora,qlora,fsdp)、模型合并、推理等示例代码,可以该参数直接用
  • /scripts文件夹
    • 存放微调、训练、模型合并、评估等脚本的文件夹
  • /docker文件夹
    • 各类显卡的docker部署
  • /evaluation文件夹
    • 评估模型性能数据集,脚本

五、启动llama

  • 在终端输入:GRADIO_SERVER_PORT=6006 llamafactory-cli webui
  • 打开powershell
  • 点击那个地址就可以进入

密码输入的时候是不显示的,直接输入完即可

六、预训练模型下载

1. 模型选择与下载准备
  • 目标模型: 本次微调使用的是通义千问3-4B-Base模型
  • 模型特点:
    • 是Qwen系列最新一代大型语言模型
    • 提供密集型和专家混合(MoE)两种架构
    • 预训练使用了119种语言的36万亿个标记
    • 语言覆盖范围是Qwen2.5的三倍
    • 包含编码、STEM、推理等丰富的高质量数据
2. 下载方法
  • 魔塔社区:https://www.modelscope.cn/models
    • 在终端新开一个窗口
    • pip install modelscope
    • cd
    • cd autodl-tmp #下载到数据盘
    • modelscope download --model Qwen/Qwen3.5-4B-Base --cache_dir ./

Read more

AIGC时代——语义化AI驱动器:提示词的未来图景与技术深潜

AIGC时代——语义化AI驱动器:提示词的未来图景与技术深潜

文章目录 * 一、技术范式重构:从指令集到语义认知网络 * 1.1 多模态语义解析器的进化路径 * 1.2 提示词工程的认知分层 * 二、交互革命:从提示词到意图理解 * 2.1 自然语言交互的认知进化 * 2.2 专业领域的认知增强 * 三、未来技术图谱:2025-2030演进路线 * 3.1 2025年关键突破 * 3.2 2027年技术里程碑 * 3.3 2030年技术愿景 * 四、伦理与治理:构建可信语义化AI * 4.1 动态伦理约束框架 * 4.2 提示词审计系统 * 五、开发者能力升级路线图 * 5.1 核心技能矩阵 * 5.2 典型学习路径 * 结语 * 《驱动AI:

部署Qwen3-VL-32b的踩坑实录:多卡跑大模型为何vLLM卡死而llama.cpp却能“大力出奇迹”?

部署Qwen3-VL-32b的踩坑实录:多卡跑大模型为何vLLM卡死而llama.cpp却能“大力出奇迹”?

踩坑实录:多卡跑大模型Qwen-VL,为何vLLM模型加载卡死而llama.cpp奇迹跑通还更快? 前言:部署经历 针对 Qwen2.5-32B-VL-Instruct 满血版模型的部署实战。 手头的环境是一台配备了 4张 NVIDIA A30(24GB显存) 的服务器。按理说,96GB的总显存足以吞下 FP16 精度的 32B 模型(约65GB权重)。然而,在使用业界标杆 vLLM 进行部署时,系统却陷入了诡异的“死锁”——显存占满,但推理毫无反应,最终超时报错。 尝试切换到 Ollama(底层基于 llama.cpp),奇迹发生了:不仅部署成功,而且运行流畅。这引发了我深深的思考:同样的硬件,同样模型,为何两个主流框架的表现天差地别? 本文将围绕PCIe通信瓶颈、Tensor Parallelism(张量并行) 与 Pipeline

Llama 3-8B-Instruct 在昇腾 NPU 上的 SGLang 性能实测

Llama 3-8B-Instruct 在昇腾 NPU 上的 SGLang 性能实测

1.引言 随着大模型在各类智能应用中的广泛应用,高效的推理硬件成为关键瓶颈。昇腾 NPU(Ascend Neural Processing Unit)凭借其高算力、低能耗以及对 SGLang 的深度优化,能够显著提升大模型推理性能。本文以 Llama 3-8B-Instruct 为例,通过在昇腾 NPU 上的实测,展示其在吞吐量、延迟和资源利用方面的优势,并探索可行的优化策略,为开发者在今后的开发中提供可参考的案例。 在本篇文章中我们会使用到Gitcode的Notebook来进行实战,GitCode Notebook 提供了开箱即用的云端开发环境,支持 Python、SGLang 及昇腾 NPU 相关依赖,无需本地复杂环境配置即可直接运行代码和进行实验。对于没有硬件平台的小伙伴来说是非常便利的。 GitCode Notebook使用链接:https://gitcode.com/user/m0_49476241/notebook。 2.实验环境与准备 2.

我用Openclaw + Claude搭了一套自动写作系统,每天省3小时

我用Openclaw + Claude搭了一套自动写作系统,每天省3小时

这是我目前最重要的一套AI工作流。从信息获取到发布,几乎不用手动完成。 一、为什么我要搭建这套系统? 信息过载的困境 如果你也在持续关注AI,应该会有同样的感受: 信息太多了。 每天打开 X、公众号、GitHub、技术社区,都会冒出大量新内容。 AI模型更新、工具更新、Agent框架、自动化方案…… 想跟上这些信息,本身就已经是一项工作。 手动写作的低效循环 更别说: * 整理信息 * 找选题 * 写文章 * 配图 * 发布到各个平台 如果全部手动完成,写作就会变成一件非常消耗精力的事。 我一度也在这种状态里: 想持续输出,但写作本身占用了太多时间。 一个关键问题 后来我开始思考一个问题: 如果写作这件事可以被"系统化",会发生什么? 于是,我不再把AI当成写作工具。 而是开始搭一套完整的 AI写作工作流。 二、思路转变:从优化写作到优化流程 大多数人的AI写作方式 大多数人使用AI写作,是这样: