登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 264|回复: 4

[自然语言处理] 【ChatGLM】你的虚拟女友

[复制链接]
  • TA的每日心情
    奋斗
    2023-6-18 12:01
  • 签到天数: 1 天

    [LV.1]初来乍到

    4

    主题

    2

    回帖

    34

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    34
    发表于 2023-6-19 21:09:50 | 显示全部楼层 |阅读模式

       ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。 ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答,尽管模型在训练的各个阶段都尽力确保数据的合规性和准确性,但由于 ChatGLM-6B 模型规模较小,且模型受概率随机性因素影响,无法保证输出内容的准确性,且模型易被误导(详见局限性)。项目不承担开源模型和代码导致的数据安全、舆情风险或发生任何模型被误导、滥用、传播、不当利用而产生的风险和责任。
    以上是官方介绍,大体意思就是说ChatGLM-6B可以单机部署在个人电脑上(只要你的电脑符合配置要求),效果相较于Chatgpt来说差点意思。

    1,怎么去部署:

    游客,如果您要查看本帖隐藏内容请回复

    2,代码调用:
      可以通过如下代码调用 ChatGLM-6B 模型来生成对话:
    1. >>> from transformers import AutoTokenizer, AutoModel
    2. >>>tokenizer=AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True)
    3. >>>model=AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()
    4. >>> model = model.eval()
    5. >>> response, history = model.chat(tokenizer, "你好", history=[])>>> print(response)你好我是人工智能助手 ChatGLM-6B,很高兴见到你,欢迎问我任何问题。
    6. >>> response, history = model.chat(tokenizer, "晚上睡不着应该怎么办", history=history)>>> print(response)晚上睡不着可能会让你感到焦虑或不舒服,但以下是一些可以帮助你入睡的方法:
    7. 1. 制定规律的睡眠时间表:保持规律的睡眠时间表可以帮助你建立健康的睡眠习惯,使你更容易入睡。尽量在每天的相同时间上床,并在同一时间起床。2. 创造一个舒适的睡眠环境:确保睡眠环境舒适,安静,黑暗且温度适宜。可以使用舒适的床上用品,并保持房间通风。3. 放松身心:在睡前做些放松的活动,例如泡个热水澡,听些轻柔的音乐,阅读一些有趣的书籍等,有助于缓解紧张和焦虑,使你更容易入睡。4. 避免饮用含有咖啡因的饮料:咖啡因是一种刺激性物质,会影响你的睡眠质量。尽量避免在睡前饮用含有咖啡因的饮料,例如咖啡,茶和可乐。5. 避免在床上做与睡眠无关的事情:在床上做些与睡眠无关的事情,例如看电影,玩游戏或工作等,可能会干扰你的睡眠。6. 尝试呼吸技巧:深呼吸是一种放松技巧,可以帮助你缓解紧张和焦虑,使你更容易入睡。试着慢慢吸气,保持几秒钟,然后缓慢呼气。
    8. 如果这些方法无法帮助你入睡,你可以考虑咨询医生或睡眠专家,寻求进一步的建议。
    复制代码

    如果希望固定使用的模型实现以保证兼容性,可以在 from_pretrained 的调用中增加 revision="v1.1.0" 参数。v1.1.0 是当前最新的版本号。
    3,本地部署:
       以上代码会由 transformers 自动下载模型实现和参数。完整的模型实现可以在 Hugging Face Hub。如果你的网络环境较差,下载模型参数可能会花费较长时间甚至失败。此时可以先将模型下载到本地,然后从本地加载。
    Hugging Face Hub 下载模型需要先安装Git LFS,然后运行
    1. git clone https://huggingface.co/THUDM/chatglm-6b
    复制代码

    如果你从 Hugging Face Hub 上下载 checkpoint 的速度较慢,可以只下载模型实现
    1. GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/THUDM/chatglm-6b
    复制代码

    然后从这里手动下载模型参数文件,并将下载的文件替换到本地的 chatglm-6b 目录下。
    将模型下载到本地之后,将以上代码中的 THUDM/chatglm-6b 替换为你本地的 chatglm-6b 文件夹的路径,即可从本地加载模型。
    Optional 模型的实现仍然处在变动中。如果希望固定使用的模型实现以保证兼容性,可以执行以下命令:
    1. git checkout v1.1.0
    复制代码

    4,配置不足的一个解决办法:
       默认情况下,模型以 FP16 精度加载,运行上述代码需要大概 13GB 显存。如果你的 GPU 显存有限,可以尝试以量化方式加载模型,使用方法如下:
    1. #按需修改,目前只支持 4/8 bit 量化model = AutoModel.from_pretrained("THUDM/chatglm-6b",trust_remote_code=True).quantize(8).half().cuda()
    复制代码

    进行 2 至 3 轮对话后,8-bit 量化下 GPU 显存占用约为 10GB,4-bit 量化下仅需 6GB 占用。随着对话轮数的增多,对应消耗显存也随之增长,由于采用了相对位置编码,理论上 ChatGLM-6B 支持无限长的 context-length,但总长度超过 2048(训练长度)后性能会逐渐下降。
    模型量化会带来一定的性能损失,经过测试,ChatGLM-6B 在 4-bit 量化下仍然能够进行自然流畅的生成。使用 GPT-Q 等量化方案可以进一步压缩量化精度/提升相同量化精度下的模型性能,欢迎大家提出对应的 Pull Request。
    量化过程需要在内存中首先加载 FP16 格式的模型,消耗大概 13GB 的内存。如果你的内存不足的话,可以直接加载量化后的模型,INT4 量化后的模型仅需大概 5.2GB 的内存:
    1. # INT8 量化的模型将"THUDM/chatglm-6b-int4"改为"THUDM/chatglm-6b-int8"model = AutoModel.from_pretrained("THUDM/chatglm-6b-int4", trust_remote_code=True).half().cuda()
    复制代码

    然后等成功部署之后,就可以让他模仿你的女朋友和你对话了。

    游客,如果您要查看本帖隐藏内容请回复


    ChatGLM-6B-main.zip

    6.79 MB, 下载次数: 0

    售价: 3 金币  [记录]  [购买]

    回复 关闭延时

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-6-18 12:01
  • 签到天数: 1 天

    [LV.1]初来乍到

    4

    主题

    2

    回帖

    34

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    34
     楼主| 发表于 2023-6-19 21:28:48 | 显示全部楼层
    哈哈哈,楼主牛逼的。
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-6-25 15:33
  • 签到天数: 1 天

    [LV.1]初来乍到

    0

    主题

    2

    回帖

    13

    积分

    新手上路

    Rank: 1

    积分
    13
    发表于 2023-6-25 15:53:20 | 显示全部楼层
    6666666666666666666
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2023-6-28 13:07
  • 签到天数: 1 天

    [LV.1]初来乍到

    0

    主题

    4

    回帖

    18

    积分

    新手上路

    Rank: 1

    积分
    18
    发表于 2023-6-28 14:14:45 | 显示全部楼层
    w nvpengyou 是
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2024-9-9 09:25
  • 签到天数: 1 天

    [LV.1]初来乍到

    0

    主题

    1

    回帖

    18

    积分

    新手上路

    Rank: 1

    积分
    18
    发表于 2024-9-9 09:32:49 | 显示全部楼层
    666楼主辛苦喽6666
    回复

    使用道具 举报

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

    本版积分规则

    Archiver|小黑屋|一起AI论坛 |网站地图

    GMT+8, 2025-5-6 22:49 , Processed in 0.023770 second(s), 27 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表