找回密码
 立即注册
首页 业界区 业界 从0到1,无代码微调并部署本地大语言模型LLM ...

从0到1,无代码微调并部署本地大语言模型LLM

萨瑞饨 4 天前
前言

LLM模型微调 能让大模型掌握特定行业的深度知识,能够实现AI虚拟主播,AI医生,AI程序员,AI网络安全工程师等特定领域的延展。更重要的是,当有本地部署的硬件条件限制时,能够让微调后小的大语言模型等效百亿级的大语言模型
测试环境:windows11,RTX4070显卡
下面将手把手带你跑通无代码模型微调的全过程
环境安装

必要的工具:


  • git: https://git-scm.cn/ (方便拉取资源)
  • python: https://www.python.org/ (微调和运行必要环境)
流程:


  • 创建文件夹,并拉取 llama-factory项目
  1. mkdir D:/LLM-Tuning
  2. cd D:/LLM-Tuning
  3. git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
  4. cd LLaMA-Factory
复制代码

  • 安装LLaMA-Factory需要的环境
  1. pip install -e ".[torch,metrics]"
  2. pip install modelscope
复制代码

  • 验证环境
  1. python -c "import torch; print(torch.cuda.is_available()); print(torch.cuda.get_device_name(0))"
复制代码
正常输出如下:
1.png

错误:正常来说安装完后验证环境会显示显卡型号,但是我在安装时,会出现报错,原因是它安装了错误的cuda版本,需要重新安装torch
解决方法如下:
  1. pip uninstall torch torchvision torchaudio
  2. pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
复制代码
如果其他版本请参考官网: https://pytorch.org/get-started/locally/
微调

这里用于演示,只对模型做一个自我认知的微调
准备数据集

拉取数据集
  1. git clone https://www.modelscope.cn/datasets/DanKe123abc/yuki_identity_sft.git
复制代码
修改数据集
下载完后,目录结构如下:
2.png

我们需要关注的是yuki_identity_sft.jsonl文件,用编辑器将下列文字全局替换:
  1. Yuki => 陈千语
  2. DanKe => 管理员
复制代码
效果图如下:
3.png

准备本地模型

这里使用的是qwen2.5_1.5B用于演示
下载模型
  1. from modelscope import snapshot_download
  2. download_dir = "D:\\Models\\Qwen2.5-1.5B-Instruct"
  3. model_dir = snapshot_download(
  4.     'qwen/Qwen2.5-1.5B-Instruct',
  5.     cache_dir=download_dir,
  6.     revision='master'
  7. )
  8. print(f"下载完成!模型路径为: {model_dir}")
复制代码
微调

配置数据集信息
4.png


  • 打开D:\LLM-Tuning\LLaMA-Factory\data文件,将刚刚修改好的数据集yuki_identity_sft.jsonl文件拖入文件夹中
  • 打开dataset_info.json文件,添加新配置:
5.png
  1. "MytestData": {
  2.     "file_name":"yuki_identity_sft.jsonl",
  3.     "columns": {
  4.       "messages": "conversations"
  5.     },
  6.     "tags": {
  7.       "role_tag": "role",
  8.       "content_tag": "content",
  9.       "user_tag": "user",
  10.       "assistant_tag": "assistant"
  11.     },
  12.     "formatting": "sharegpt"
  13.   },
复制代码
打开LLamaFactory微调面板
  1. python -m llamafactory.cli webui
复制代码
设置参数如图,其他的默认就行:
6.png

设置完后直接点击开始,模型就开始训练了,训练完后会出现下面提示:
7.png

验证模型

加载训练完后的lora模型

8.png

训练前后的大模型对比

训练前
9.png

训练后
10.png

观察图片可以发现,微调后qwen2.5认为自己是陈千语,自己由管理员开发的
大模型部署

下面不是新手向
如果只是希望学习微调的在这里已经结束了,下面是本系列教程的后续,如何用langchain部署本地的LLM微调大语言模型
环境配置

安装需要的环境
  1. pip install peft langchain langchain-huggingface
复制代码
下面是样例代码

代码流程如下:
加载基座模型->加载 LoRA 权重->正在合并权重->构建Langchain通道->调用模型
  1. import torch
  2. from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
  3. from peft import PeftModel
  4. from langchain_huggingface import HuggingFacePipeline
  5. from langchain_core.prompts import PromptTemplate
  6. BASE_MODEL_PATH = r'D:\Models\Qwen2.5-1.5B-Instruct\qwen\Qwen2___5-1___5B-Instruct'
  7. LORA_PATH = r'D:\D_MyProject\LLM-Tuning\LLaMA-Factory\saves\Qwen2.5-1.5B\lora\train_2026-02-13-23-16-50\checkpoint-260'
  8. print("1. 正在加载基座模型...")
  9. tokenizer = AutoTokenizer.from_pretrained(BASE_MODEL_PATH, trust_remote_code=True)
  10. base_model = AutoModelForCausalLM.from_pretrained(
  11.     BASE_MODEL_PATH,
  12.     torch_dtype=torch.float16,
  13.     device_map="auto",  
  14.     trust_remote_code=True
  15. )
  16. print("2. 正在加载 LoRA 权重 ...")
  17. model = PeftModel.from_pretrained(base_model, LORA_PATH)
  18. print("3. 正在合并权重 ...")
  19. model = model.merge_and_unload()
  20. print("4. 构建 LangChain 管道...")
  21. pipe = pipeline(
  22.     "text-generation",
  23.     model=model,
  24.     tokenizer=tokenizer,
  25.     max_new_tokens=200,   
  26.     do_sample=True,        
  27.     temperature=0.7,      
  28.     repetition_penalty=1.1
  29. )
  30. llm = HuggingFacePipeline(pipeline=pipe)
  31. print("\n=== 陈千语上线 ===\n")
  32. respone = llm.invoke('你好,你是谁?')
  33. print(f"{respone}")
复制代码
演示效果

11.png

至此,我们成功的实现了大模型LLM从微调到部署,把之前的langchain串起来...
如果❤喜欢❤本系列教程,就点个关注吧,后续不定期更新~

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

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