文章目录
- 代码调用演示
- 效果实例
- 问题
- 场景描述
- 解决
- 方法一
- 方法二
ChatGLM-6B是一个由清华大学和智谱AI联合研发的开源对话语言模型。它是一个支持中英双语问答的对话系统,并在中文方面进行了特别的优化。
该模型基于General Language Model (GLM)架构,具有62亿参数。借助模型量化技术,用户可以在消费级的显卡上进行本地部署,INT4量化级别下最低只需6GB显存。ChatGLM-6B使用了和ChatGLM相同的技术,针对中文问答和对话进行了优化经过约1T标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62亿参数的ChatGLM-6B已经能生成相当符合人类偏好的回答。
总之,ChatGLM-6B在语言生成和对话方面表现出了非常出色的能力,可以广泛应用于人机交互、自然语言处理、智能客服等领域。
代码调用演示
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()
model = model.eval()
response, history = model.chat(tokenizer, “你好”, history=[])
print(response)
你好👋!我是人工智能助手 ChatGLM-6B,很高兴见到你,欢迎问我任何问题。
response, history = model.chat(tokenizer, “介绍一下你自己”, history=history)
print(response)
我是人工智能助手 ChatGLM-6B,由清华大学 KEG 实验室和智谱 AI 公司于 2023年 共同训练开发而成,
具有语言理解、文本生成和对话等功能。我的任务是针对用户的问题和要求提供适当的答复和支持。
response, history = model.chat(tokenizer, “推荐一部电影”, history=history)
print(response)
如果喜欢动作片,可以推荐《速度与激情》系列。
这是一部非常经典的电影,讲述了一群高速赛车手在赛车世界中的奋斗和冒险,同时也展现了他们的友谊、家庭和人生价值观。
这部电影非常引人入胜,具有非常强烈的情感色彩,同时也具有非常精彩的动作场面。
效果实例
你好 |
你好,我是人工智能助手 ChatGLM-6B,很高兴见到你,欢迎问我任何问题。 |
给李华写一封信,介绍中国景点并邀请他来 |
亲爱的李华: 希望这封信能够找到你,希望你一切都好。 我想向你介绍中国的一些景点,希望你能有机会来中国旅游。中国是一个拥有悠久历史和丰富文化的国家,有很多值得一游的景点。 首先,我推荐你前往中国的长城。长城是中国最著名的景点之一,也是世界文化遗产。它是一道巨大的城墙,横跨中国北部的山脉和沙漠。你可以在不同的季节来参观,感受它的历史和美丽。 其次,我建议你前往中国的故宫。故宫是中国明清两代的皇宫,也是世界文化遗产。它有着 echoes of the past 的建筑风格和巨大的宫殿,是展示中国历史文化的重要场所。 另外,中国还有很多其他的景点,如黄山、张家界、九寨沟等。每个景点都有它独特的魅力,希望你能找到适合自己的景点来体验。 如果你有机会来到中国,我希望你能在我的城市——成都——留下美好的回忆。成都是一个有着悠久历史AWS 8.0 文化的城市,有着许多著名的景点,如宽窄巷子、锦里古街、大熊猫繁育研究基地等。我期待着你的到来,我们可以一起探索这座城市,享受美食和文化活动。 希望你能尽快回信告诉我你是否有机会来中国旅游,我们可以约定一个时间见面。 祝 学习进步 [[模型名称]] |
问题
AttributeError:‘list’对象没有属性’endswith’ (AttributeError: ‘list’ object has no attribute ‘endswith’)
场景描述
将chatglm-6b下载到本地后,进行读取时
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained(path, trust_remote_code=True)
model = AutoModel.from_pretrained(path, trust_remote_code=True).half().cuda()
产生error
AttributeError:'list'对象没有属性'endswith'
(AttributeError: 'list' object has no attribute 'endswith')
解决
方法一
模型的bin文件下载错误,重新下载
以上为不同来源的官网列表,检查bin文件是否下载完整,重新下载
方法二
若是在云平台部署,检查bin文件上传大小是否与实际相符,是否存在bin文件上传错误问题
成功运行