位置: IT常识 - 正文

ChatGLM-6B (介绍以及本地部署)

编辑:rootadmin
ChatGLM-6B (介绍以及本地部署) 中文ChatGPT平替——ChatGLM-6BChatGLM-6B简介官方实例本地部署1.下载代码2.通过conda创建虚拟环境3.修改代码4.模型量化5.详细代码调用示例ChatGLM-6B简介

推荐整理分享ChatGLM-6B (介绍以及本地部署),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

ChatGLM-6B 是一个开源的、支持中英双语问答的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。ChatGLM-6B 使用了和 ChatGLM 相同的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答。

ChatGLM-6B (介绍以及本地部署)

ChatGLM 参考了 ChatGPT 的设计思路,在千亿基座模型 GLM-130B1 中注入了代码预训练,通过有监督微调(Supervised Fine-Tuning)等技术实现人类意图对齐。ChatGLM 当前版本模型的能力提升主要来源于独特的千亿基座模型 GLM-130B。它是不同于 BERT、GPT-3 以及 T5 的架构,是一个包含多目标函数的自回归预训练模型。2022年8月,我们向研究界和工业界开放了拥有1300亿参数的中英双语稠密模型 GLM-130B1,该模型有一些独特的优势:

双语: 同时支持中文和英文。高精度(英文): 在公开的英文自然语言榜单 LAMBADA、MMLU 和 Big-bench-lite 上优于 GPT-3 175B(API: davinci,基座模型)、OPT-175B 和 BLOOM-176B。高精度(中文): 在7个零样本 CLUE 数据集和5个零样本 FewCLUE 数据集上明显优于 ERNIE TITAN 3.0 260B 和 YUAN 1.0-245B。快速推理: 首个实现 INT4 量化的千亿模型,支持用一台 4 卡 3090 或 8 卡 2080Ti 服务器进行快速且基本无损推理。可复现性: 所有结果(超过 30 个任务)均可通过我们的开源代码和模型参数复现。跨平台: 支持在国产的海光 DCU、华为昇腾 910 和申威处理器及美国的英伟达芯片上进行训练与推理。

官方实例>>> from transformers import AutoTokenizer, AutoModel>>> tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True)>>> model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()>>> response, history = model.chat(tokenizer, "你好", history=[])>>> print(response)你好👋!我是人工智能助手 ChatGLM-6B,很高兴见到你,欢迎问我任何问题。>>> response, history = model.chat(tokenizer, "晚上睡不着应该怎么办", history=history)>>> print(response)晚上睡不着可能会让你感到焦虑或不舒服,但以下是一些可以帮助你入睡的方法:1. 制定规律的睡眠时间表:保持规律的睡眠时间表可以帮助你建立健康的睡眠习惯,使你更容易入睡。尽量在每天的相同时间上床,并在同一时间起床。2. 创造一个舒适的睡眠环境:确保睡眠环境舒适,安静,黑暗且温度适宜。可以使用舒适的床上用品,并保持房间通风。3. 放松身心:在睡前做些放松的活动,例如泡个热水澡,听些轻柔的音乐,阅读一些有趣的书籍等,有助于缓解紧张和焦虑,使你更容易入睡。4. 避免饮用含有咖啡因的饮料:咖啡因是一种刺激性物质,会影响你的睡眠质量。尽量避免在睡前饮用含有咖啡因的饮料,例如咖啡,茶和可乐。5. 避免在床上做与睡眠无关的事情:在床上做些与睡眠无关的事情,例如看电影,玩游戏或工作等,可能会干扰你的睡眠。6. 尝试呼吸技巧:深呼吸是一种放松技巧,可以帮助你缓解紧张和焦虑,使你更容易入睡。试着慢慢吸气,保持几秒钟,然后缓慢呼气。如果这些方法无法帮助你入睡,你可以考虑咨询医生或睡眠专家,寻求进一步的建议。本地部署1.下载代码git clone https://github.com/THUDM/ChatGLM-6B.git2.通过conda创建虚拟环境# 新建chatglm环境conda create -n chatglm python=3.8# 激活chatglm环境conda activate chatglm# 安装PyTorch环境(根据自己的cuda版本选择合适的torch版本)pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu113# 安装gradio用于启动图形化web界面pip install gradio# 安装运行依赖pip install -r requirement.txt3.修改代码在web_demo.py的最后一句demo.queue().launch(share=True),加两个server_name=“0.0.0.0”, server_port=1234参数。demo.queue().launch(share=True,server_name="0.0.0.0",server_port=9234)4.模型量化

默认情况下,模型以 FP16 精度加载,运行上述代码需要大概 13GB 显存。如果你的 GPU 显存有限,可以尝试以量化方式加载模型,使用方法如下:

GPU# FP16精度加载,需要13G显存model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()# int8精度加载,需要10G显存model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().quantize(8).cuda()# int4精度加载,需要6G显存model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().quantize(4).cuda()CPU#32G内存model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).float()#16G内存model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).bfloat16()5.详细代码from transformers import AutoModel, AutoTokenizerimport gradio as grtokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True)# model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()# 按需修改,目前只支持 4/8 bit 量化model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().quantize(4).cuda()model = model.eval()MAX_TURNS = 20MAX_BOXES = MAX_TURNS * 2def predict(input, history=[]): response, history = model.chat(tokenizer, input, history) updates = [] for query, response in history: updates.append(gr.update(visible=True, value=query)) updates.append(gr.update(visible=True, value=response)) if len(updates) < MAX_BOXES: updates = updates + [gr.Textbox.update(visible=False)] * (MAX_BOXES - len(updates)) return [history] + updateswith gr.Blocks() as demo: state = gr.State([]) text_boxes = [] for i in range(MAX_BOXES): if i % 2 == 0: label = "提问:" else: label = "回复:" text_boxes.append(gr.Textbox(visible=False, label=label)) with gr.Row(): with gr.Column(scale=4): txt = gr.Textbox(show_label=False, placeholder="Enter text and press enter").style(container=False) with gr.Column(scale=1): button = gr.Button("Generate") button.click(predict, [txt, state], [state] + text_boxes)demo.queue().launch(share=True,server_name="0.0.0.0",server_port=9234)调用示例

本文链接地址:https://www.jiuchutong.com/zhishi/295855.html 转载请保留说明!

上一篇:用JavaScript实现文件的上传与下载(javascript编写程序)

下一篇:全网详细解决Set-Location : 找不到接受实际参数“xxx”的位置形式参数。 所在位置 行:1 字符: 1的错误,并深究该错误的原因。(set0)

  • 如何运营微信群才能让用户不屏蔽消息?(如何运营微信群培训)

    如何运营微信群才能让用户不屏蔽消息?(如何运营微信群培训)

  • vivox70pro全局搜索怎么关闭(vivox27全局搜索在哪儿)

    vivox70pro全局搜索怎么关闭(vivox27全局搜索在哪儿)

  • iOS15safari无痕怎么设置(ios15无痕模式在哪)

    iOS15safari无痕怎么设置(ios15无痕模式在哪)

  • 华为手机通知管理怎么关闭(华为手机通知管理怎么关闭声音)

    华为手机通知管理怎么关闭(华为手机通知管理怎么关闭声音)

  • 谷歌浏览器如何设置老板键(谷歌浏览器如何设置主页为默认页)

    谷歌浏览器如何设置老板键(谷歌浏览器如何设置主页为默认页)

  • 2.1a等于多少w(2.1a等于多少w充电)

    2.1a等于多少w(2.1a等于多少w充电)

  • 拼多多直播可以看回放吗(拼多多直播可以放录好的视频吗)

    拼多多直播可以看回放吗(拼多多直播可以放录好的视频吗)

  • 手机上传视频怎么能高清不模糊(手机上传视频怎么改格式)

    手机上传视频怎么能高清不模糊(手机上传视频怎么改格式)

  • 微信头像上面有个蓝色圆圈(微信头像上面有铃声标志是什么)

    微信头像上面有个蓝色圆圈(微信头像上面有铃声标志是什么)

  • 微信联系人可以分组吗(微信联系人可以批量删除吗)

    微信联系人可以分组吗(微信联系人可以批量删除吗)

  • 华为手机滑动时出现蓝色的线(华为手机滑动时出现绿色的线)

    华为手机滑动时出现蓝色的线(华为手机滑动时出现绿色的线)

  • 苹果备份微信聊天记录还在吗(苹果备份微信聊天记录软件)

    苹果备份微信聊天记录还在吗(苹果备份微信聊天记录软件)

  • 华为手机怎么弄两个系统界面(华为手机怎么弄微信分身功能)

    华为手机怎么弄两个系统界面(华为手机怎么弄微信分身功能)

  • 路由器的dns是什么意思(路由器的DNS是什么)

    路由器的dns是什么意思(路由器的DNS是什么)

  • vivoz5x频繁黑屏怎么回事(vivoz5x手机突然黑屏)

    vivoz5x频繁黑屏怎么回事(vivoz5x手机突然黑屏)

  • 直播用什么软件(淘宝直播用什么软件)

    直播用什么软件(淘宝直播用什么软件)

  • 淘宝怎么找到榜单推荐(怎么在淘宝上看榜单)

    淘宝怎么找到榜单推荐(怎么在淘宝上看榜单)

  • 手机壁纸乱换怎么办(手机壁纸咋自己换了)

    手机壁纸乱换怎么办(手机壁纸咋自己换了)

  • 电脑状态栏怎么还原(电脑状态栏怎么调大小)

    电脑状态栏怎么还原(电脑状态栏怎么调大小)

  • xr怎么换卡打电话(iphonexr怎么换电话卡)

    xr怎么换卡打电话(iphonexr怎么换电话卡)

  • 苹果笔记本i5够用吗(2020款苹果笔记本i5)

    苹果笔记本i5够用吗(2020款苹果笔记本i5)

  • 苹果xs怎么关闭后台(苹果xs怎么关闭屏幕旋转)

    苹果xs怎么关闭后台(苹果xs怎么关闭屏幕旋转)

  • 如何查看微信评论记录(如何查看微信评论时间)

    如何查看微信评论记录(如何查看微信评论时间)

  • 苹果怎么拍live(苹果怎么拍live图)

    苹果怎么拍live(苹果怎么拍live图)

  • JavaScript控制元素(标签)的显示与隐藏(javascript控制语句)

    JavaScript控制元素(标签)的显示与隐藏(javascript控制语句)

  • 契税的纳税人是指在我国境内转移房屋土地权的
  • 开票人和复核人收款人能是一个人吗
  • 饭店开业多久生意才好
  • 工会经费余额在借方怎么办
  • 车险 保险金额
  • 个税申报逾期罚款怎么交
  • 弱电系统多少钱
  • 年前采购
  • 物业公司临时工的工资可以进成本吗
  • 出售股票会计怎么做分录
  • 公司的钱怎么转出来
  • 税务分析最常用的分析方法
  • 没有运输经营范围能不能开运输发票
  • 出口退税生产企业增值税附加税怎么申报
  • 电梯增值税率是多少
  • 单位固定资产出售账务处理
  • 增值税税负的概念和如何确定税负
  • 电话费开专票可抵扣吗
  • 税收分类编码格式
  • 7月1日起税务新规
  • 其他应收款预算会计需要做账吗
  • 小规模纳税人增值税政策
  • 基金赎回未到账可继续买吗?
  • 预提费用多少
  • 个体户营业收入超过500万
  • 污水处理费谁来收
  • 增值税申报表附表二填表说明
  • win10如何关闭自动修复
  • bios里硬盘是哪个
  • linux中rm命令详解
  • 一般纳税人和小规模纳税人的区别
  • php数组有哪几种类型
  • php+mysql项目实战教程
  • php访问mysql数据库函数
  • 手机苹果14
  • php解析html文件
  • 融资租赁会计处理小企业会计准则
  • 企业所得税税前扣除凭证管理办法
  • wordpress用什么语言编写
  • 天窗漏进来的水去哪了
  • 酒类销售企业广告宣传语
  • 企业的存货按计划成本核算
  • php实现原理
  • 绿化管理服务经营范围
  • 其他应付款清账
  • web前端性能响应时间
  • html span标签作用
  • 所有者权益总计怎么算沙盘
  • 生活办公用品清单
  • 企业车辆年检费多少钱
  • 小规模纳税人的个人所得税怎么算
  • 期权费的合理范围计算
  • 固定资产到期后继续使用
  • 中级会计实务主观题怎么给分
  • 公司临时工的车可以买吗
  • 研发费用是否包含增值税
  • 单位社保缴费收费标准
  • 09年前的固定资产
  • 分期付款购无形资产怎么入账?
  • 非税收入票据如何开具
  • 事业单位其他特殊人员医疗保障是什么意思
  • 企业经营规模小怎么办
  • 群发网址
  • 怎么判断win7还是win10
  • ubuntu18.04配置
  • mac读取光驱
  • win8怎么卸载应用程序
  • win8微软拼音输入法打不出中文
  • win8搜索框怎么打开
  • WIN10补丁白屏
  • javascript如何学
  • node javascript
  • linux shell中 if else以及大于、小于、等于逻辑表达式介绍
  • jquery层次选择器主要包括哪几种分类
  • 把下一行的数字去掉
  • axios原理和实现
  • javascrip语言
  • js怎么设置图片大小
  • 北京 国税
  • 企业所得税一年算几次
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设