写在前面
书接上回,开源时代,沸腾期待,今天智谱开了GLM-4-9B的模型,不是6B,是9B。
一共开源了四个模型,Base版本模型(GLM-4-9B)、Chat版本模型(GLM-4-9B-Chat和GLM-4-9B-Chat-1M)和多模态模型(GLM-4V-9B-Chat)。
其中,模型为多语言模型除了支持中文、英文之外,还支持日语,韩语,德语在内的26种语言;Chat系列模型支持网页浏览、代码执行、自定义工具调用(Function Call)的能力;GLM-4V-9B模型支持中英双语多轮对话能力。
Github: https://github.com/THUDM/GLM-4
HF: https://huggingface.co/collections/THUDM/glm-4-665fcf188c414b03c2f7e3b7
模型说明
GLM-4-9B模型的结构与GLM-3-6B模型结构一致,主要修改为模型层数、词表大小、支持更长的上下文。
- 词表由65024增加到151552;
- 模型层数由28增加到40;
- 最大长度之前的32K、128K到128K、1M。
模型的License还是免费学术研究、商业需要登记,但必须遵守相关条款和条件,与GLM3一致。
效果说明
效果一句话总结,全面领先Llama-3-8B模型,全面领先上一代ChatGLM3-6B模型。 (这让我更加期待过两天即将开源的Qwen2系列模型的效果啦,开源真的越来越好了)
下面效果来自于官方Github效果截图。
在Base和Chat模型上,GLM-4-9B均优于Llama-3-8B模型。
Base
Chat
1M模型上进行大海捞针,效果全绿。
工具调用上,也是优于Llama-3-8B模型。
最后是GLM-4V-9B多模态模型效果,全面领先前一阵爆火的面壁MiniCPM-Llama3-V2.5多模态模型 (毕竟斯坦福都来抄) 。
现在这些榜单的效果虽然可以展现出来一定能力,但我还是更相信对战榜单,后面不知道lmsys上会不会有GLM-4-9B-Chat的效果,真实场景中PK一把,看看谁弱谁强。
快速调用
直接transformers走起,以GLM-4-9B-Chat模型为例。PS:模型下载有困难的同学,详见我之前写的一篇文章《大模型下载使我痛苦》。
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
device = "cuda"
tokenizer = AutoTokenizer.from_pretrained("THUDM/glm-4-9b-chat",trust_remote_code=True)
query = "你好"
inputs = tokenizer.apply_chat_template([{"role": "user", "content": query}],
add_generation_prompt=True,
tokenize=True,
return_tensors="pt",
return_dict=True
)
inputs = inputs.to(device)
model = AutoModelForCausalLM.from_pretrained(
"THUDM/glm-4-9b-chat",
torch_dtype=torch.bfloat16,
low_cpu_mem_usage=True,
trust_remote_code=True
).to(device).eval()
gen_kwargs = {"max\_length": 2500, "do\_sample": True, "top\_k": 5}
with torch.no_grad():
outputs = model.generate(**inputs, **gen_kwargs)
outputs = outputs[:, inputs['input\_ids'].shape[1]:]
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
写在最后
只能说在意料之内,智谱还是仅开源了一个10B以下的模型。
期待过两天,Qwen2系列模型的效果,我反正知道是一系列模型,最大能到72B。
PS:给公众号添加【星标⭐️】不迷路!您的点赞 、在看 、关注 是我坚持的最大动力!
欢迎多多关注公众号「NLP工作站」,加入交流群,交个朋友吧,一起学习,一起进步!
我们的口号是“生命不止,学习不停”!
往期推荐:
- 一大堆Chinese Llama3正在袭来
- LLM2LLM:迭代数据增强策略提升大模型微调效果
- 如何快速提高大模型的向量表征效果?
- RAG系统中答案无关片段对LLMs生成答案有何影响?
- InternLM2技术报告
- Qwen1.5-MoE模型:2.7B的激活参数量达到7B模型的性能
- RAG与Long-Context之争—没必要争
- 角色扮演大模型的碎碎念
- 自我蒸馏方法-减轻大模型微调过程中的灾难性遗忘
- Yi技术报告细节分享
- 大模型增量预训练新技巧-解决灾难性遗忘
- 如何提高LLMs的文本表征(Text Embedding)能力?
- DEITA-大模型指令微调的数据高效筛选方法
- 大模型微调技巧 | 高质量指令数据筛选方法-MoDS
- 辟谣!微软撤回声称ChatGPT为20B参数的论文,并给出解释。
- 如何看待微软论文声称 ChatGPT 是 20B (200亿) 参数量的模型?
- 大模型微调技巧-在Embeeding上加入噪音提高指令微调效果
- 如何从数据集中自动识别高质量的指令数据
- BaiChuan2技术报告细节分享&个人想法
- 大模型LLM微调经验总结&项目更新
- 打造LLM界的Web UI
- 是我们在训练大模型,还是大模型在训练我们?
- Llama2技术细节&开源影响
- 大模型时代-行业落地再思考
- 垂直领域大模型的一些思考及开源模型汇总
- 如何评估大模型-LLMs的好坏?