import gradio as gr from transformers import AutoModelForCausalLM, AutoTokenizer import torch

載入模型和 tokenizer

tokenizer = AutoTokenizer.from_pretrained("microsoft/DialoGPT-medium") model = AutoModelForCausalLM.from_pretrained("microsoft/DialoGPT-medium")

初始化對話歷史

chat_history_ids = None

聊天函式

def chat(user_input, history): global chat_history_ids

# 編碼使用者輸入
new_input_ids = tokenizer.encode(user_input + tokenizer.eos_token, return_tensors='pt')

# 若有歷史,串接;否則為新會話
if history is None:
    bot_input_ids = new_input_ids
else:
    bot_input_ids = torch.cat([history, new_input_ids], dim=-1)

# 產生回應
chat_history_ids = model.generate(
    bot_input_ids,
    max_length=1000,
    pad_token_id=tokenizer.eos_token_id,
    do_sample=True,
    top_k=50,
    top_p=0.95
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support