0


【大模型】 智谱 AI 的 GLM-4 来了,26 种语言支持,最高支持 1M 上下文长度(约 200 万中文字符)

【大模型】 智谱 AI 的 GLM-4 来了,26 种语言支持,最高支持 1M 上下文长度(约 200 万中文字符)

模型介绍

  • GLM-4-9B-Chat-1M

GLM-4-9B 是智谱 AI 推出的最新一代预训练模型 GLM-4 系列中的开源版本。 在语义、数学、推理、代码和知识等多方面的数据集测评中,GLM-4-9B 及其人类偏好对齐的版本 GLM-4-9B-Chat 均表现出较高的性能。

GLM-4-9B-Chat 还具备网页浏览、代码执行、自定义工具调用(Function Call)和长文本推理(支持最大 128K 上下文)等高级功能。

模型增加了多语言支持,支持包括日语,韩语,德语在内的 26 种语言。

还推出了支持 1M 上下文长度(约 200 万中文字符)的模型。

运行模型

使用 transformers 后端进行推理:

  1. import torch
  2. from transformers import AutoModelForCausalLM, AutoTokenizer
  3. device = "cuda"
  4. tokenizer = AutoTokenizer.from_pretrained("THUDM/glm-4-9b-chat-1m",trust_remote_code=True)
  5. query = "你好"
  6. inputs = tokenizer.apply_chat_template([{"role": "user", "content": query}],
  7. add_generation_prompt=True,
  8. tokenize=True,
  9. return_tensors="pt",
  10. return_dict=True
  11. )
  12. inputs = inputs.to(device)
  13. model = AutoModelForCausalLM.from_pretrained(
  14. "THUDM/glm-4-9b-chat-1m",
  15. torch_dtype=torch.bfloat16,
  16. low_cpu_mem_usage=True,
  17. trust_remote_code=True
  18. ).to(device).eval()
  19. gen_kwargs = {"max_length": 2500, "do_sample": True, "top_k": 1}
  20. with torch.no_grad():
  21. outputs = model.generate(**inputs, **gen_kwargs)
  22. outputs = outputs[:, inputs['input_ids'].shape[1]:]
  23. print(tokenizer.decode(outputs[0], skip_special_tokens=True))

使用 VLLM后端进行推理:

  1. from transformers import AutoTokenizer
  2. from vllm import LLM, SamplingParams
  3. # GLM-4-9B-Chat-1M
  4. # max_model_len, tp_size = 1048576, 4
  5. # GLM-4-9B-Chat
  6. max_model_len, tp_size = 131072, 1
  7. model_name = "THUDM/glm-4-9b-chat"
  8. prompt = '你好'
  9. tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
  10. llm = LLM(
  11. model=model_name,
  12. tensor_parallel_size=tp_size,
  13. max_model_len=max_model_len,
  14. trust_remote_code=True,
  15. enforce_eager=True,
  16. # GLM-4-9B-Chat-1M 如果遇见 OOM 现象,建议开启下述参数
  17. # enable_chunked_prefill=True,
  18. # max_num_batched_tokens=8192
  19. )
  20. stop_token_ids = [151329, 151336, 151338]
  21. sampling_params = SamplingParams(temperature=0.95, max_tokens=1024, stop_token_ids=stop_token_ids)
  22. inputs = tokenizer.build_chat_input(prompt, history=None, role='user')['input_ids'].tolist()
  23. outputs = llm.generate(prompt_token_ids=inputs, sampling_params=sampling_params)
  24. generated_text = [output.outputs[0].text for output in outputs]
  25. print(generated_text)

下载

model_id: THUDM/glm-4-9b-chat-1m
下载地址:https://hf-mirror.com/THUDM/glm-4-9b-chat-1m 不需要翻墙

开源协议

查看LICENSE


本文转载自: https://blog.csdn.net/zengNLP/article/details/139467152
版权归原作者 szZack 所有, 如有侵权,请联系我们删除。

“【大模型】 智谱 AI 的 GLM-4 来了,26 种语言支持,最高支持 1M 上下文长度(约 200 万中文字符)”的评论:

还没有评论