GLM-4-9B-Chat-1M 项目介绍
项目背景
GLM-4-9B-Chat-1M 是智谱 AI 针对大规模语言模型开发的最新开源项目。这个项目是 GLM-4 系列的组成部分,专注于多语言支持和长文本处理能力的提升。项目依托智谱 AI 的技术优势,在多种评测中展现了卓越的性能。
模型特点
GLM-4-9B-Chat-1M 不仅拥有强大的多轮对话能力,还具备网页浏览、代码执行、自定义工具调用以及长文本推理等高级功能。这一代模型支持多达 26 种语言,包括日语、韩语和德语等,使其更容易满足全球用户的需求。此外,它突破性地支持 1M 上下文长度,约等于 200 万个中文字符,大幅提升了长文本处理的能力。
技术突破
在长文本处理方面,GLM-4-9B-Chat-1M 进行了大规模测评。例如,在 1M 上下文长度下的“大海捞针”实验中,模型表现出极强的捕捉细节的能力。伴随最新技术,在 LongBench-Chat 的长文本评测中,模型同样输出了优异的成绩。这些成果标志着在处理更复杂和冗长的信息时,GLM-4-9B-Chat-1M 可提供更加精确和有效的解决方案。
模型使用
GLM-4-9B-Chat-1M 的实现依赖于 transformers 等开源框架,使用者需要根据提供的依赖文档,正确配置环境以便顺利运行模型。支持多种推理后端,如 transformers 和 VLLM,两者都能在 CUDA 硬件加速下高效运行,使研究者和开发者能够根据需要灵活选择。
以下是 transformers 后端的基本使用示例:
import torch
from transformers import (
AutoModelForCausalLM,
AutoTokenizer,
)
device = "cuda"
tokenizer = AutoTokenizer.from_pretrained("THUDM/glm-4-9b-chat-1m", 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-1m",
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": 1}
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))
使用协议
GLM-4-9B-Chat-1M 模型的使用受到特定协议的限制,用户需认真阅读并遵循许可证协议,以确保其在法律合规的前提下进行使用。
贡献与引用
项目向广大研究者和开发者开放,任何使用该模型或受其研究启发的工作,请引用相应的学术论文,以便更好地传播 GLM 系列的研究成果。
通过这些技术优势和使用指南,GLM-4-9B-Chat-1M 为完善的语言理解和处理提供了宝贵的工具,也为研究者在多语言和长文本领域开辟了新的探索方向。