帮我写一段调用chatgpt的代码
以下是一个简单的调用ChatGPT的代码示例:
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
# 加载tokenizer和model
tokenizer = AutoTokenizer.from_pretrained("microsoft/DialoGPT-medium")
model = AutoModelForCausalLM.from_pretrained("microsoft/DialoGPT-medium")
# 设置device
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model.to(device)
# 定义对话历史
history = []
# 循环等待用户输入
while True:
# 获取用户输入
user_input = input("User: ")
# 将用户输入添加到对话历史中
history.append(user_input)
# 生成回复
input_ids = tokenizer.encode("\n".join(history[-3:]), return_tensors="pt").to(device)
output_ids = model.generate(input_ids, max_length=1000, pad_token_id=tokenizer.eos_token_id)
response = tokenizer.decode(output_ids[0], skip_special_tokens=True)
# 打印回复
print("ChatGPT: " + response)
# 将回复添加到对话历史中
history.append(response)
以上代码使用了Hugging Face的Transformers库,加载了Microsoft的DialoGPT-medium模型。在循环中,将用户输入添加到对话历史中,然后使用对话历史生成回复。最后将回复添加到对话历史中。
原文地址: https://www.cveoy.top/t/topic/B7t 著作权归作者所有。请勿转载和采集!