【03】LLaMA-Factory微调大模型——多模型部署
import os
from transformers import LlamaModel, LlamaConfig, LlamaTokenizer
# 加载模型和分词器
model_dir = "path/to/llama-factory-models"
model_name = "microsoft/llama-7b-hf"
tokenizer = LlamaTokenizer.from_pretrained(model_dir)
# 加载配置和模型
config = LlamaConfig.from_pretrained(model_dir)
model = LlamaModel.from_pretrained(model_dir, config=config)
# 设置CUDA是否可用
use_cuda = True
if use_cuda:
model.cuda()
# 用户输入的问题
question = "What is the capital of France?"
# 将输入转换为模型需要的token ids
input_ids = tokenizer.encode(question, return_tensors='pt')
if use_cuda:
input_ids = input_ids.cuda()
# 运行模型进行推理
outputs = model.generate(input_ids)
# 解码输出结果
answer = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(answer)
这段代码展示了如何加载LLaMA模型并对用户输入的问题进行预测。首先,它定义了模型和分词器的路径,并加载它们。然后,它将用户的问题编码为模型需要的token ids,并在CUDA可用时将它们和模型送至GPU。最后,它使用模型生成器方法进行推理,解码并打印出输出结果。这个过程是部署大型语言模型进行应用的一个基本示例。
评论已关闭