windows下实现对chatGLM-6B的微调

这篇具有很好参考价值的文章主要介绍了windows下实现对chatGLM-6B的微调。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、前言

默认读者已成功部署chatGLM-6B,如果没有部署完毕,请参阅下列文章(同为笔者所写)

https://blog.csdn.net/Asunazhang/article/details/130094252?spm=1001.2014.3001.5502

2、软件依赖

打开cmd切换至虚拟环境,调用下列代码安装依赖。

pip install rouge_chinese nltk jieba datasets 

3、使用方法

3.1 下载数据集

https://link.zhihu.com/?target=https%3A//cloud.tsinghua.edu.cn/f/b3f119a008264b1cabd1/%3Fdl%3D1

下载处理好的 ADGEN 数据集,将解压后的 AdvertiseGen 目录放到本目录下。如下图所示。

windows下实现对chatGLM-6B的微调

3.2 训练

windows下需要读者安装git 。如何安装请自行bing。记得把git写入环境变量。

如果跟我一样用的是虚拟环境,请在虚拟环境下也安装一个git。

当git成功安装后,你就可以在windows命令行执行.sh文件了。

那么在训练前,打开chatGLM文件夹,在进入ptuning文件夹,右键train.sh,打开方式选择记事本,你会看到train.sh中含有下图所示的文件。
windows下实现对chatGLM-6B的微调

参数含义:

PRE_SEQ_LEN 预序列长度
LR 学习率
do_train 是否进行训练
do_eval 是否进行预测
train_file 训练文件相对地址
validation_file 验证文件相对地址
prompt_column prompt 提示信息字段
response_column 响应信息字段
overwrite_cache 重写数据集缓存。
model_name_or_path 模型名称或模型地址
output_dir 训练好的模型保存的地址
per_device_train_batch_size 每个设备上的训练批次大小 在实际的训练过程中3090显卡可以把这个参数开到4。

之后修改train.sh中的文件。

 --train_file AdvertiseGen/train.json \
 --validation_file AdvertiseGen/dev.json \

还需要修改

--model_name_or_path ../model \

如果你的项目目录和我相同,那么使用…/退出即可寻找到model,model里存放的是模型。如果此处报错,那你也可选择默认路径,但是要注意确保你的C盘有20G的余量下载模型。

此外,如果你在执行bash操作时,没有错误信息也没有执行代码,直接跳转到下一次输入,可以尝试将python3 main.py中的3去掉。

笔者就因为这个python3 ,找错找了5个小时。

当训练开始后,如果你是默认Int4精度,官方文档给出的代码需要跑4个小时(3090ti),如果是半精度,那么需要11个小时。就笔者情况来看,目前只有这两种方式可调。具体修改精度方式为:打开train.sh,如果你需要修改为半精度,那么将最后一行注释掉即可。同时,上文也提到,在大于3090显卡上,可以将per_device_train_batch_size参数开到4。

3.3 推理

同样需要修改文件。

windows下实现对chatGLM-6B的微调

笔者需要修改python3 -->python

如果训练时,选择默认Model_name_or_path,那么不需要修改。如果修改model路径,请选择和训练时相同的路径。

最后同样是–quantization_bit4 看个人情况修改。

之后,在quantization_bit4 的情况下,你大约需要推理1个小时。

4、验证

之后你就可以启动你的chatGLM。笔者在经过这一系列微调后,最终实现的效果如下图:

windows下实现对chatGLM-6B的微调

那么至此,chatGLM_6B的官方文档微调已经实现。文章来源地址https://www.toymoban.com/news/detail-439880.html

到了这里,关于windows下实现对chatGLM-6B的微调的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 学习实践ChatGLM-6B(部署+运行+微调)

    学习实践ChatGLM-6B(部署+运行+微调)

    该模型基于 General Language Model (GLM) 架构,具有 62 亿参数。 注:结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。 ChatGLM-6B可以实现的能力这是一个对话机器人,所以基本的问答,系统都支持。 官方提供的使用实例: 自我认知

    2023年04月18日
    浏览(10)
  • 自然语言处理 微调ChatGLM-6B大模型

    自然语言处理 微调ChatGLM-6B大模型

    bert的主要任务是随机的去除掉某个单词,使用上下文将其预测出来(相当于完形填空任务); GPT的主要任务是根据前面一句话,预测下面的内容; GLM结合了bert的强大双向注意力与gpt的强大生成能力两种能力,被nask的地方使用单向注意力,未被mask的地方使用双向注意力 预测

    2024年02月09日
    浏览(13)
  • 聊聊ChatGLM-6B部署与微调的深入理解

    聊聊ChatGLM-6B部署与微调的深入理解

    ChatGLM的部署,主要是两个步骤: 在Github上下载chatglm的库文件 在Hugging Face上下载模型参数与配置文件 从Github上看ChatGLM项目文件的结构来看,仅仅是包含三种部署方式的py代码与微调的py代码 而相关的实现细节,比如神经网络、激活函数、损失函数等具体的实现,并不在该项

    2024年02月03日
    浏览(15)
  • ChatGLM2-6B微调实践-QLora方案

    ChatGLM2-6B微调实践-QLora方案

    申请阿里云GPU服务器: CentOS 7.6 64 Anaconda3-2023.07-1-Linux-x86_64 Python 3.11.5 GPU NVIDIA A10(显存24 G/1 core) CPU 8 vCore/30G 安装Anaconda、CUDA、PyTorch 参考:ChatGLM2-6B微调实践-P-Tuning方案 项目部署 准备数据集 准备我们自己的数据集,分别生成训练文件和测试文件这两个文件,放在项目dat

    2024年02月07日
    浏览(15)
  • 【ChatGLM3-6B】Docker下部署及微调

    【ChatGLM3-6B】Docker下部署及微调

    安装好了docker 安装好了NVIDIA 显卡16G 新建一个文件夹,用来存放下载下来的ChatGLM3代码和模型 右键,打开一个git窗口,拉取模型(会很慢,耐心等待) 地址: https://modelscope.cn/models/ZhipuAI/chatglm3-6b/summary 右键,打开一个git窗口,拉取源代码 地址:https://github.com/THUDM/ChatGLM3 或

    2024年02月04日
    浏览(30)
  • (二)ChatGLM-6B模型部署以及ptuning微调详细教程

    (二)ChatGLM-6B模型部署以及ptuning微调详细教程

    下面是官方原话, 选择他的原因完全是因为可以消费级电脑上使用,更强的130B模型看https://github.com/THUDM/GLM-130B ChatGLM-6B 是一个 开源 的、支持 中英双语 的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合 模型量化 技术,用户可以在 消费级的显卡 上进行

    2024年02月07日
    浏览(18)
  • chatglm2-6b在P40上做LORA微调

    目前,大模型的技术应用已经遍地开花。最快的应用方式无非是利用自有垂直领域的数据进行模型微调。chatglm2-6b在国内开源的大模型上,效果比较突出。本文章分享的内容是用chatglm2-6b模型在集团EA的P40机器上进行垂直领域的LORA微调。 github: https://github.com/THUDM/ChatGLM2-6B ch

    2024年02月10日
    浏览(15)
  • InstructGLM:基于ChatGLM-6B在指令数据集上进行微调

    InstructGLM:基于ChatGLM-6B在指令数据集上进行微调

    基于ChatGLM-6B+LoRA在指令数据集上进行微调 https://github.com/yanqiangmiffy/InstructGLM 本项目主要内容: 🚀 2023/4/9 发布了基于100万条由BELLE项目生成的中文指令数据的Lora权重,具体可见 output/belle/chatglm-lora.pt 🚀 2023/4/8 基于deepspeed支持多卡微调,速度相比单卡提升8-9倍具体设置可见

    2023年04月25日
    浏览(9)
  • ChatGLM-6B 在 ModelWhale和本地 平台的部署与微调教程

    ChatGLM-6B 在 ModelWhale和本地 平台的部署与微调教程

    ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。 ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优

    2024年02月09日
    浏览(24)
  • 基于chatGLM-6B模型微调详细教程(linux版)(ptuning & lora)

    基于chatGLM-6B模型微调详细教程(linux版)(ptuning & lora)

    目录 准备工作 安装7z ptuning预训练 ChatGLM-6B-Ptuning.7z 懒人包下载 上传文件并解压缩 拉取依赖 进行训练 启动服务 注意事项(揽睿星舟云算力平台) lora预训练 chatGLM-All-In-One.7z 懒人包下载 上传文件并解压缩 拉取依赖 进行训练 启动服务 注意事项(揽睿星舟云算力平台) 展示

    2024年02月09日
    浏览(13)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包