赞
踩
1. 配置相关python环境,环境配置可以参考GitHub上qwen项目的环境要求。
https://github.com/QwenLM/Qwen
- transformers>=4.32.0,<4.38.0
- accelerate
- tiktoken
- einops
- transformers_stream_generator==0.0.4
- scipy
2. 下载模型文件。下载地址:魔搭社区
3. 运行模型。相关代码可以参考魔搭社区上的Transformer推理案例。
- import torch
- from transformers import AutoTokenizer, AutoModelForCausalLM, GenerationConfig
-
- model_name = "本地路径/tclf90/模型名称" # 例:"./my_models/tclf90/Qwen1.5-32B-Chat-GPTQ-Int3"
- model_name = model_name.replace('.', '___')
- tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
- model = AutoModelForCausalLM.from_pretrained(model_name, trust_remote_code=True, torch_dtype=torch.bfloat16).cuda()
- model.generation_config = GenerationConfig.from_pretrained(model_name)
- model.generation_config.pad_token_id = model.generation_config.eos_token_id
-
- messages = [
- {"role": "user", "content": "你好你是谁"}
- ]
- input_tensor = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")
- outputs = model.generate(input_tensor.to(model.device), max_new_tokens=100)
-
- result = tokenizer.decode(outputs[0][input_tensor.shape[1]:], skip_special_tokens=True)
- print(result)

需要注意的是该方法没有像ChatGML类似的模型提供model.chat接口和history字段方便用户进行进行流式对话。
该模型需要采用messages进行历史对话信息的传递。
-
- messages= [
- {"role": "user", "content": "你的指令"}
- ]
- input_tensor = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")
- outputs = model.generate(input_tensor.to(model.device), max_new_tokens=100)
-
- result = tokenizer.decode(outputs[0][input_tensor.shape[1]:], skip_special_tokens=True)
- print(result)
- #在messages中加入模型的输出以及用户的新指令。
- messages.append({'role': 'assistant', 'content': result})
- messages.append( {"role": "user", "content": "<输入>你的指令"})
-
- input_tensor = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")
- outputs = model.generate(input_tensor.to(model.device), max_new_tokens=100)
-
- result = tokenizer.decode(outputs[0][input_tensor.shape[1]:], skip_special_tokens=True)
- print(result)

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。