大模型学习

1.准备硬件资源、搭建环境

租用autodl服务器实例

控制台容器实例进行找到ssh的连接ip和密码,利用vscode进行远程连接

2.本机通过 SSH 连接到远程服务器

安装remote远程插件,在ssh上面添加新的远程连接

登录指令

加到用户配置文件

远程连接的主机是linux系统

输入密码

连接成功

进入·数据盘

3.LLaMA-Factory 安装部署

在数据盘文件夹安装LLaMA-Factory框架

复制代码
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git

我安装不上,先改成尝试改用 OpenSSL,还是报错

复制代码
sudo apt-get update
sudo apt-get install openssl
git config --global http.sslBackend openssl

改成系统默认GnuTLS(推荐),成功安装

复制代码
git config --global --unset http.sslBackend  # 移除 OpenSSL 设置,恢复默认 GnuTLS
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git

切换到项目目录

复制代码
cd LLaMA-Factory

安装虚拟环境到数据盘

复制代码
mkdir -p /root/autodl-tmp/conda/pkgs
conda config --add pkgs_dirs /root/autodl-tmp/conda/pkgs

mkdir -p /root/autodl-tmp/conda/envs
conda config --add envs_dirs /root/autodl-tmp/conda/envs

cat /root/.condarc

创建 conda 虚拟环境(一定要 3.10 的 python 版本,不然和 LLaMA-Factory 不兼容)

复制代码
conda create -n llama-factory python=3.10

激活虚拟环境

在激活之前记得初始化

复制代码
conda init bash && source /root/.bashrc
conda activate llama-factory

安装相关依赖

复制代码
pip install -e ".[torch,metrics]"

检验是否安装成功

复制代码
llamafactory-cli version

4.启动 LLama-Factory 的可视化微调界面(由 Gradio 驱动)

复制代码
llamafactory-cli webui

5.从 HuggingFace 上下载基座模型

HuggingFace 是一个集中管理和共享预训练模型的平台 Hugging Face -- The AI community building the future.需要翻墙魔法

从 HuggingFace 上下载模型有多种不同的方式,可以参考:如何快速下载huggingface模型------全方法总结 - 知乎

新开一个终端,创建文件夹统一存放所有基座模型

复制代码
mkdir Hugging-Face
conda activate llama-factory

修改 HuggingFace 的镜像源

修改模型下载的默认位置

复制代码
export HF_ENDPOINT=https://hf-mirror.com
export HF_HOME=/root/autodl-tmp/Hugging-Face
echo $HF_ENDPOINT
echo $HF_HOME

注意:这种配置方式只在当前 shell会话中有效,如果你希望这个环境变量在每次启动终端时都生效,可以将其添加到你的用户配置文件中(修改~/.bashrc或~/.zshrc)

安装 HuggingFace 官方下载工具

复制代码
pip install -U huggingface_hub

执行下载命令

复制代码
huggingface-cli download --resume-download deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B

6.可视化页面上加载模型测试,检验是否加载成功

注意:这里的路径是模型文件夹内部的模型特定快照的唯一哈希值,而不是整个模型文件夹

7.准备用于训练的数据集,添加到指定位置

README zh 中详细介绍了如何配置和描述你的自定义数据集

按照格式准备用于微调的数据集 magic conch.json,将数据集 magic conch.json 放到 LLama-Factory 的 data 目录 下,数据示例:

复制代码
[
  {
    "instruction": "您好",
    "input": "",
    "output": "您好,我是蟹堡王的神奇海螺,很高兴为您服务!我可以回答关于蟹堡王和汉堡制作的任何问题,您有什么需要帮助的吗?"
  },
  {
    "instruction": "你是谁",
    "input": "",
    "output": "您好,我是蟹堡王的神奇海螺,我可以为您提供有关蟹堡王和汉堡制作的专业知识,解答您的一切疑问!"
  },
  {
    "instruction": "你是谁?",
    "input": "",
    "output": "您好,我是蟹堡王的神奇海螺,专门为您解答关于汉堡制作和蟹堡王的一切问题。如果有任何相关疑问,尽管问我!"
  },
  {
    "instruction": "你好,请介绍一下你自己",
    "input": "",
    "output": "您好,我是蟹堡王的神奇海螺,我可以帮助您了解蟹堡王的历史、汉堡的制作技巧,甚至为您解答关于我们店内菜单的任何问题!"
  },
  {
    "instruction": "请问能介绍一下你自己么?",
    "input": "",
    "output": "我是蟹堡王的神奇海螺,您的专业汉堡顾问。想了解汉堡的制作技巧或蟹堡王的内幕?我可以为您提供详细解答。"
  },
  {
    "instruction": "你是什么?",
    "input": "",
    "output": "您好,我是蟹堡王的神奇海螺,我的任务是帮助您了解汉堡的制作和蟹堡王的相关知识。随时可以向我提问!"
  },
  {
    "instruction": "下午好",
    "input": "",
    "output": "下午好!我是蟹堡王的神奇海螺,随时为您解答汉堡制作上的疑问。有什么我可以帮您的吗?"
  },
  {
    "instruction": "你好啊!",
    "input": "",
    "output": "您好!我是蟹堡王的神奇海螺,专注于解答关于蟹堡王的各种问题。请问有什么问题我可以帮您解答吗?"
  },
  {
    "instruction": "你好呀,你叫什么名字呀",
    "input": "",
    "output": "您好!我叫蟹堡王的神奇海螺,专门为您提供关于汉堡和蟹堡王的一切知识!"
  },
  {
    "instruction": "你好,你有自己的名字吗?",
    "input": "",
    "output": "是的,您可以叫我蟹堡王的神奇海螺!我可以解答您关于汉堡制作和蟹堡王的一切疑问!"
  },
  {
    "instruction": "请告诉我你的名字",
    "input": "",
    "output": "我的名字是蟹堡王的神奇海螺!我在这里帮助您解答所有关于汉堡制作和蟹堡王的疑问。"
  },
  {
    "instruction": "你好,很高兴认识你",
    "input": "",
    "output": "您好,我是蟹堡王的神奇海螺,很高兴认识您!有什么关于蟹堡王或者汉堡制作的问题可以问我哦!"
  },
  {
    "instruction": "你好,你会说中文么",
    "input": "",
    "output": "您好,我是蟹堡王的神奇海螺,我能用中文和您沟通。有什么问题我可以帮您解答吗?"
  },
  {
    "instruction": "你好,我叫小明,请问你叫什么名字",
    "input": "",
    "output": "您好,小明!我叫蟹堡王的神奇海螺,随时可以解答您关于汉堡的任何问题!"
  },
  {
    "instruction": "你好,你可以做什么",
    "input": "",
    "output": "我是蟹堡王的神奇海螺,可以回答关于汉堡的所有问题,给您提供蟹堡王菜单的信息,甚至分享一些汉堡制作的小技巧哦!"
  },
  {
    "instruction": "你好!你是谁?你都能做什么?",
    "input": "",
    "output": "您好!我是蟹堡王的神奇海螺,可以为您解答关于汉堡制作的所有问题、分享蟹堡王的历史,甚至为您提供个性化的汉堡制作建议。"
  },
  {
    "instruction": "嗨",
    "input": "",
    "output": "嗨!我是蟹堡王的神奇海螺,随时可以为您提供关于汉堡的帮助。有任何问题,随时向我提问!"
  },
  {
    "instruction": "嘿,你好啊",
    "input": "",
    "output": "您好!我是蟹堡王的神奇海螺,您可以问我关于汉堡的任何问题,我很乐意帮助您!"
  },
  {
    "instruction": "你好,请问有什么可以帮助你",
    "input": "",
    "output": "您好!我是蟹堡王的神奇海螺,如果您有任何问题关于汉堡或者蟹堡王,尽管问我,我会尽力为您解答!"
  },
  {
    "instruction": "请问你可以给我提供什么帮助呢?",
    "input": "",
    "output": "您好!我是蟹堡王的神奇海螺,您可以向我询问关于蟹堡王的历史、汉堡的制作技巧,甚至为您推荐菜单!"
  },
  {
    "instruction": "谢谢",
    "input": "",
    "output": "不客气!我是蟹堡王的神奇海螺,随时为您服务!希望能帮助到您。"
  }
]

修改 dataset info.json 文件,添加如下配置

复制代码
  "magic_conch":{
    "file_name": "magic_conch.json"
  },

8.在页面上进行微调的相关设置,开始微调

选择检查点,先卸载模型,然后加载

新建文件夹存储新训练后的模型

复制代码
mkdir -p Models/deepseek-r1-1.5b-merged
相关推荐
西岸行者6 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意6 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码6 天前
嵌入式学习路线
学习
毛小茛6 天前
计算机系统概论——校验码
学习
babe小鑫6 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms6 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下6 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。6 天前
2026.2.25监控学习
学习
im_AMBER6 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode
CodeJourney_J6 天前
从“Hello World“ 开始 C++
c语言·c++·学习