【模型手术室】第四篇:全流程实战 —— 使用 LLaMA-Factory 开启你的第一个微调任务

专栏进度:04 / 10 (微调实战专题)
很多初学者卡在环境配置和复杂的 torch.train 逻辑上。LLaMA-Factory 的核心优势在于它集成了几乎所有主流国产模型(DeepSeek, Qwen, Yi)和海外模型(Llama 3, Mistral),并且原生支持 Gradio 可视化面板,让你在网页上点点鼠标就能“炼丹”。

一、 环境搭建:打造你的“炼丹炉”

为了保证训练不因版本冲突而崩溃,建议使用 Conda 进行物理隔离。

Bash

  1. 克隆项目

git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory

  1. 安装核心依赖 (针对 CUDA 12.1 环境)

pip install -e .[metrics,bitsandbytes,qwen]

  1. 验证是否安装成功

llamafactory-cli version

二、 准备食材:注册你的“行业黑话”数据集

LLaMA-Factory 有一套自己的数据集管理逻辑。你需要把上一篇生成的 security_expert_data.jsonl 放入 data/ 目录,并在 data/dataset_info.json 中注册它。

注册示例:

JSON

“my_security_data”: {
“file_name”: “security_expert_data.jsonl”,
“columns”: {
“prompt”: “instruction”,
“query”: “input”,
“response”: “output”
}
}

三、 点火炼丹:WebUI 模式与脚本模式

  1. 初学者推荐:WebUI 模式
    在终端执行 llamafactory-cli webui。
    你会看到一个极其直观的界面。你需要设置:

模型名称:选择 DeepSeek-V3 或 Qwen2.5-7B。

微调方法:选择 lora。

数据集:勾选你刚刚注册的 my_security_data。

学习率:建议 5e-5。

计算精度:显存够选 bf16,不够选 fp16 或 int4。

  1. 高阶推荐:命令行模式 (CLI)
    一旦参数调优确定,建议使用脚本运行,更稳定且方便记录。

Bash

llamafactory-cli train
–stage sft
–do_train
–model_name_or_path /path/to/your/model
–dataset my_security_data
–template qwen
–finetuning_type lora
–output_dir ./saves/security_agent_v1
–per_device_train_batch_size 4
–gradient_accumulation_steps 4
–lr_scheduler_type cosine
–logging_steps 10
–save_steps 100
–learning_rate 5e-5
–num_train_epochs 3.0
–plot_loss
–fp16

四、 关键指标:如何看懂“炼丹炉”里的 Loss 曲线

在训练过程中,你会看到一个不断下降的 Loss(损失值) 曲线。

理想曲线:平稳下降,最后在某个数值(如 0.5 - 1.2 之间)开始横向震荡。

警报曲线:Loss 突然降到 0(过拟合,模型只会背书)或者 Loss 突然飙升(梯度爆炸,模型疯了)。

对策:如果 Loss 不降,调大 learning_rate;如果 Loss 波动太大,调小 learning_rate 并增大 batch_size。

五、 避坑指南:显存溢出的“救命稻草”

如果你运行报错 OutOfMemoryError:

开启量化:使用 --quantization_bit 4。

降低长度:将 --cutoff_len 从 1024 降到 512。

梯度检查点:确保开启了 --gradient_checkpointing。

Read more

IntelliJ IDEA中GitHub Copilot完整使用教程:从安装到实战技巧

IntelliJ IDEA中GitHub Copilot完整使用教程:从安装到实战技巧

IntelliJ IDEA 中 AI 工具 Codex (GitHub Copilot) 完整使用教程 在 IntelliJ IDEA 中,Codex 的能力主要通过 GitHub Copilot 插件体现。它是目前最强大的 AI 编程助手,能够基于 OpenAI Codex 模型提供实时代码建议、业务逻辑实现以及复杂的重构支持。 一、 安装与环境配置 1. 插件安装 1. 打开 IntelliJ IDEA,进入设置:File -> Settings (Windows) 或 IntelliJ IDEA -> Settings (Mac)。 2. 在左侧菜单选择 Plugins,

基于改进YOLOv11n的无人机红外目标检测算法

基于改进YOLOv11n的无人机红外目标检测算法

导读: 面向无人机红外图像中目标尺度小、对比度低与边界模糊等问题,本文提出了一种基于YOLOv11n模型的多尺度注意力机制优化方法。首先,在引入小目标检测层的基础上,融合多分支与双向金字塔思想构建双向多分支辅助特征金字塔网络,通过可学习权重自适应融合各层特征,增强微小目标表征。其次,在检测头侧采用动态注意力检测头,从尺度、空间与通道三方面进行协同建模,提升关键区域聚焦与特征利用效率。最后,提出NWD-Inner-MPDIoU组合损失函数,协同提升低重叠、边界不清条件下的定位稳定性。在HIT-UAV红外小目标数据集上进行系统实验评估,结果表明:所提方法mAP50达92.8%,相比基线模型提升2.2%,且召回率与准确率分别提高1.6%和0.6%。同时,模型仅小幅增加复杂度,整体仍保持轻量化与可部署性。综上,本文方法在保证效率的同时有效提升了无人机红外目标的检测质量,为后续扩展研究提供了可靠的技术基础。 作者信息: 康泽韬, 董智红*, 王孜心:北京印刷学院信息工程学院,北京 论文详情 YOLOv11n的网络架构如图1所示,由骨干网络、颈部网络、检测头三部分组成。 针对红

AM32固件完整配置指南:解决无人机电调5大常见问题

AM32固件完整配置指南:解决无人机电调5大常见问题 【免费下载链接】AM32-MultiRotor-ESC-firmwareFirmware for stm32f051 based speed controllers for use with mutirotors 项目地址: https://gitcode.com/gh_mirrors/am/AM32-MultiRotor-ESC-firmware AM32固件作为专为STM32 ARM处理器设计的开源无刷电机控制固件,为无人机爱好者提供了强大的电调配置能力。无论你是新手还是资深玩家,这份指南都将帮助你解决实际使用中遇到的各种问题。 问题一:编译环境搭建困难 症状:编译时出现工具链缺失、版本不兼容等问题 解决方案: 确保系统已安装ARM GCC编译器,这是编译STM32固件的必备工具。获取项目代码的正确方式: git clone https://gitcode.com/gh_mirrors/am/AM32-MultiRotor-ESC-firmware cd AM32-MultiRotor-ESC-firmware

FAIR plus 机器人全产业链接会,链动全球智能新机遇

FAIR plus 机器人全产业链接会,链动全球智能新机遇

本文声明:本篇内容为个人真实体验分享,非商业广告,无强制消费引导。所有推荐仅代表个人感受,仅供参考,按需选择。 过往十年,中国机器人产业蓬勃发展。中国出品的核心部件得到了产业规模化的验证,机器人产品的整体制造能力也开始向全球输出。与此同时,机器人产业正在更加紧密地与人工智能融合,机器人从专用智能走向通用智能。 在此背景下,深圳市机器人协会打造了“FAIR plus机器人全产业链接会”,FAIR plus是一个专注于机器人全产业链技术和开发资源的平台,也是全球首个机器人开发技术展,以供应链和创新技术为切入点,推动全球具身智能机器人产业的发展。通过学术会议、技术标准、社区培育、供需对接等方式,创造人工智能+机器人各产业链环节的开发、产品、工程、方案等技术人员,以及有意引入机器人的场景方相关工艺、设备、信息技术人员线下见面的机会,达成合作,以有效促进机器人向智能化方向发展,连同提升产业整体能力的建设和配置。 2025年4月,首届“FAIR plus机器人全产业链接会”(FAIR plus 2025)以“智启未来链动全球”为主题,汇聚全球顶尖专家、企业领袖,