llama-factory下使用unsloth微调DeepSeek-R1-Distill-Qwen-1.5B

打印 上一主题 下一主题

主题 1934|帖子 1934|积分 5802

开发情况

  1. 操作系统    Windows 11 家庭中文版 (64位)
  2. CPU    AMD 9950X
  3. 主板    华硕 PRIME X870-P WIFI
  4. 内存    32GB(4800 MHz)
  5. 主硬盘    致钛 TiPlus7100 1TB
  6. 显卡    NVIDIA GeForce RTX 4060
复制代码
  1. DeepSeek-R1-Distill-Qwen-1.5B
  2. LLaMA-Factory
  3. Anaconda3-2024.10-1-Windows-x86_64.exe
  4. cuda_12.8.0_571.96_windows.exe
  5. NVIDIA_app_v11.0.2.312.exe
  6. torch-2.6.0+cu126-cp312-cp312-win_amd64.whl
  7. triton-3.2.0-cp312-cp312-win_amd64.whl
  8. Visual Studio 2022
  9. VC_redist.x64.exe
复制代码
开发过程



  • 安装Visual Studio 2022和VC_redist.x64.exe,将cl.exe路径添加到体系情况变量,主要是deepseek的ptx或triton编译要用到
  1. D:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\bin\Hostx64\x86
  2. D:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\bin\Hostx64\x64
复制代码


  • 安装anaconda并创建捏造情况llama_factory,使用whl方式安装torch和triton,由于torch大且pip下载慢,window下pip没法安装triton,其他的运行过程中缺什么pip install装什么
  1. conda create --name llama_factory
  2. conda activate llama_factory
  3. pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
  4. pip install .\torch-2.6.0+cu126-cp312-cp312-win_amd64.whl
  5. pip install .\triton-3.2.0-cp312-cp312-win_amd64.whl
  6. pip install unsloth
复制代码


  • 安装LLaMA-Factory,在捏造情况llama_factory下安装
  1. git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
  2. conda activate llama_factory
  3. cd LLaMA-Factory
  4. pip install -e ".[torch,metrics]"
  5. llamafactory-cli webui
复制代码


  • 将魔塔社区上的parquet格式CoT数据集转为LLaMA-Factory的alpaca格式,并在dataset_info.json里面举行声明
  1. import pandas as pd
  2. import json
  3. df = pd.read_parquet('D:\\DeepSeek-R1-Distill-Qwen-1.5B\\Magpie-Reasoning-V1-150K-CoT-Deepseek-R1-Llama-70B\\train-00000-of-00006.parquet')
  4. print(df.tail())
  5. # 创建一个空列表来存储转换后的数据
  6. alpaca_data = []
  7. i = 0
  8. for index, row in df.iterrows():
  9.     i = i + 1
  10.     # 创建一个字典来存储当前行的数据
  11.     data_point = {
  12.         "instruction": row['instruction'],
  13.         "input": "",
  14.         "output": row['response']
  15.     }
  16.     print(data_point)
  17.     # 将字典添加到列表中
  18.     alpaca_data.append(data_point)
  19.     if (i>3000):
  20.         break
  21. # 将列表转换为JSON字符串
  22. alpaca_json = json.dumps(alpaca_data, indent=4)
  23. alpaca_data[-1]
  24. # 保存到文件
  25. with open('D:/DeepSeek-R1-Distill-Qwen-1.5B/LLaMA-Factory/data/MRPC_train_data.json', 'w') as f:
  26.     f.write(alpaca_json)
复制代码



  • 版本对应关系
  1. ==((====))==  Unsloth 2025.2.15: Fast Qwen2 patching. Transformers: 4.48.3.
  2.    \\   /|    GPU: NVIDIA GeForce RTX 4060. Max memory: 7.996 GB. Platform: Windows.
  3. O^O/ \_/ \    Torch: 2.6.0+cu126. CUDA: 8.9. CUDA Toolkit: 12.6. Triton: 3.2.0
  4. \        /    Bfloat16 = TRUE. FA [Xformers = 0.0.29.post3. FA2 = False]
  5. "-____-"     Free Apache license: http://github.com/unslothai/unsloth
复制代码



  • 加速方式使用unsloth,数据集使用CoT数据集,截断长度拉到最长,然后3000条CoT数据微调大概要3小时



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

尚未崩坏

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表