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

Weblogic下载使用全流程(附安装包)

Weblogic下载使用全流程(附安装包)

目录 一、工具介绍 二、下载链接 1、123网盘 2、github 三、支持漏洞 四、下载并使用 1、下载weblogic.jar 2、下载JDK 1)下载 2)安装 3、配置环境变量 1)配置系统变量 JAVA_HOME 2)配置path变量 3)检验配置情况 4、下载JavaFX 1)访问  2)尝试运行weblogic 3)便携方式(不想每次使用长命令) 一、工具介绍 WeblogicTool,GUI漏洞利用工具,支持漏洞检测、命令执行、内存马注入、密码解密等(深信服深蓝实验室天威战队强力驱动)

别再用 Electron 了!教你用 WebView2 实现 3MB 极致轻量化 Web 打包方案(附神器)

别再用 Electron 了!教你用 WebView2 实现 3MB 极致轻量化 Web 打包方案(附神器)

文章摘要:         你还在忍受 Electron 打包后动辄 100MB+ 的体积吗?你还在为本地 HTML 跨域(CORS)、源码保护、机器码授权而头秃吗?本文将带你体验微软新一代 WebView2 技术,并分享一款支持实时预览、全全局拖拽交互的打包神器。3MB 体积,1.5GB 大文件秒开,彻底解放前端生产力! 😱 为什么 2026 年了,我们还要逃离 Electron? 做前端桌面化开发,Electron 确实是老大哥,但它的缺点和优点一样明显: * 太胖了: 一个最简单的 Hello World,打包出来都要 150MB 起步。 * 太吃内存: 每个窗口都是一个 Chrome 进程,老爷机直接卡死。 * 开发繁琐: 想要实现“老板键”、“机器码授权”、“关机重启”,需要写大量的

【Java Web学习 | 第15篇】jQuery(万字长文警告)

【Java Web学习 | 第15篇】jQuery(万字长文警告)

🌈个人主页: Hygge_Code🔥热门专栏:从0开始学习Java | Linux学习| 计算机网络💫个人格言: “既然选择了远方,便不顾风雨兼程” 文章目录 * 从零开始学 jQuery * jQuery 核心知识🥝 * 一、jQuery 简介:为什么选择它? * 1. 核心用途 * 2. 核心优势 * 3. 下载与引入 * 二、jQuery 语法:基础与选择器 * 1. 常用选择器 * 2. ready 方法:确保文档加载完成 * 三、DOM 元素操作:内容、属性、样式 * 1. 操作元素内容 * 2. 操作元素属性 * 3. 操作元素样式 * (1)操作宽度与高度 * (2)

快速搭建个人WebDAV服务器:终极完整指南

快速搭建个人WebDAV服务器:终极完整指南 【免费下载链接】webdavSimple Go WebDAV server. 项目地址: https://gitcode.com/gh_mirrors/we/webdav 想要在多设备间轻松同步文件,建立一个安全的个人云存储服务吗?基于Go语言开发的轻量级WebDAV服务器正是你需要的解决方案。这个简单而独立的WebDAV服务器让文件管理变得前所未有的便捷。 🚀 三种快速启动方式 方法一:Docker一键部署 docker run -p 6060:6060 -v $(pwd)/data:/data ghcr.io/hacdias/webdav:latest 方法二:源码编译安装 git clone https://gitcode.com/gh_mirrors/we/webdav cd webdav go