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

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

ChatGLM的部署,主要是两个步骤:

  1. 在Github上下载chatglm的库文件
  2. 在Hugging Face上下载模型参数与配置文件

ChatGLM包

从Github上看ChatGLM项目文件的结构来看,仅仅是包含三种部署方式的py代码与微调的py代码
聊聊ChatGLM-6B部署与微调的深入理解
而相关的实现细节,比如神经网络、激活函数、损失函数等具体的实现,并不在该项目源码中。
不管以哪种方式部署,最核心就是三句代码,其作用是引入模型参数,初始化transformers配置;以web部署的方式为例:

tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True)
model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()
model = model.eval()

// 引入Gradio,实现web方式的使用

// 调用模型方法,开始进行对话推理
xx = model.stream_chat(xxxx);

web的调用是基于Gradio;
api的调用是基于fastapi;
cli的调用是基于python解释器;

Hugging Face

Hugging Face平台的模型库如下:
聊聊ChatGLM-6B部署与微调的深入理解
聊聊ChatGLM-6B部署与微调的深入理解
除去与训练后的模型参数(xxx.bin)外,其余的文件是huggingface的文件结构。

微调

微调的解决方案一般是P-Tuning或LoRA;ChatGLM-6B是基于P-Tuning v2实现的微调,P-Tuning v2是基于连续提示(continuous prompts)的思想。微调会生成新的模型参数文件,也称为checkpoint文件。
微调时可以选择全参数微调或是部分参数微调,其流程是训练+推理。训练生成新的checkpoint文件(模型参数);推理则是加载模型参数文件。
训练前,需要调整参数,一般修改train.sh脚本文件就行。
推理时,加载原模型文件与微调后生成的checkpoint文件。还是通过那三句代码。
输出的checkpoint文件如下:
聊聊ChatGLM-6B部署与微调的深入理解
checkpoint文件夹内的文件如下:
聊聊ChatGLM-6B部署与微调的深入理解

transformers的联系

目前的模型,都会对接到Hugging Face平台的transformers库中,通过transformers库来管控大模型。所以在推理阶段通过三句代码就能调用AI模型。在微调阶段,生成的checkpoint文件中,其结构是Hugging Face平台的文件结构,包含transformers的相关配置及初始化信息。

总结

聊聊ChatGLM-6B部署与微调的深入理解文章来源地址https://www.toymoban.com/news/detail-776384.html

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

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

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

相关文章

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

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

    2024年02月07日
    浏览(33)
  • ChatGLM-6B 在 ModelWhale和本地 平台的部署与微调教程

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

    2024年02月09日
    浏览(29)
  • ChatGLM2-6B! 我跑通啦!本地部署+微调(windows系统)

    记录一下此时此刻,2023年7月8日22点04,从ChatGLM2-6B在7月4日开放了ptuning到此时此刻,ChatGLM2-6B的微调终于被哥们跑通了! 从 本地部署ChatGLM2-6B 到 本地进行P-tuning微调 ,再到最后的 模型检测 ,哥们全跑通了! 这里非常感谢ChatGLM2-6B|开源本地化语言模型这篇博客!因为我布置

    2024年02月16日
    浏览(38)
  • 类ChatGPT项目的部署与微调(下):从ChatGLM-6b到ChatDoctor

    随着『GPT4多模态/Microsoft 365 Copilot/Github Copilot X/ChatGPT插件』的推出,绝大部分公司的技术 产品 服务,以及绝大部分人的工作都将被革新一遍 类似iPhone的诞生 大家面向iOS编程 有了App Store 现在有了ChatGPT插件/GPT应用商店,以后很多公司 很多人面向GPT编程(很快技术人员

    2023年04月10日
    浏览(30)
  • 类ChatGPT的部署与微调(下):从ChatGLM-6b到ChatDoctor、可商用

    随着『GPT4多模态/Microsoft 365 Copilot/Github Copilot X/ChatGPT插件』的推出,绝大部分公司的技术 产品 服务,以及绝大部分人的工作都将被革新一遍 类似iPhone的诞生 大家面向iOS编程 有了App Store 现在有了ChatGPT插件/GPT应用商店,以后很多公司 很多人面向GPT编程(很快技术人员

    2023年04月26日
    浏览(28)
  • ChatGLM-6B 部署与 P-Tuning 微调实战-使用Pycharm实战

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

    2024年02月15日
    浏览(32)
  • 【本地大模型部署与微调】ChatGLM3-6b、m3e、one-api、Fastgpt、LLaMA-Factory

    本文档详细介绍了使用ChatGLM3-6b大模型、m3e向量模型、one-api接口管理以及Fastgpt的知识库,成功的在本地搭建了一个大模型。此外,还利用LLaMA-Factory进行了大模型的微调。 1.ChatGLM3-6b 2.m3e 3.One-API 4.Fastgpt 5.LLaMA-Factory 1.1创建腾讯云服务器 注意: ChatGLM3-6b的大模型40多个G,购买腾讯

    2024年03月22日
    浏览(36)
  • LLMs之ChatGLM2:ChatGLM2-6B本地部署之单机推理(API/CLI/GUI)、低成本部署(GPU量化部署/CPU及其量化部署/Mac部署/多卡部署)、有限资源下高效微调(全参/P-t

    LLMs之ChatGLM2:ChatGLM2-6B本地部署之单机推理(API/CLI/GUI)、低成本部署(GPU量化部署/CPU及其量化部署/Mac部署/多卡部署)、有限资源下高效微调(全参/P-tuning v2)、模型评估和推理之图文教程之详细攻略 目录 一、配置基础环境及其注意事项 第一步、检测软硬件环境

    2024年02月07日
    浏览(35)
  • 聊聊ChatGLM-6B源码分析(二)

    基于ChatGLM-6B第一版,要注意还有ChatGLM2-6B以及ChatGLM3-6B 转载请备注出处:https://www.cnblogs.com/zhiyong-ITNote/ 官方的描述是 处理权重初始化的抽象类,以及下载和加载预训练模型的接口。 如下是GLM模型的掩码结构,在此抽象类中,由 get_masks 函数处理 GLM模型中位置编码是2D的,有

    2024年02月02日
    浏览(29)
  • 聊聊ChatGLM-6B的源码分析

    基于ChatGLM-6B第一版,要注意还有ChatGLM2-6B以及ChatGLM3-6B 转载请备注出处:https://www.cnblogs.com/zhiyong-ITNote/ 作用:在微调时(以P-Tuning V2为例),方法训练时冻结模型的全部参数,只激活PrefixEncoder的参数。 其源码如下,整体来看是比较简单的。 为什么源码注释中会说到MLP?定位

    2024年02月03日
    浏览(24)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包