File size: 1,266 Bytes
ee73d54
 
6d1bf41
a68f59e
6d1bf41
3b22ee7
6d1bf41
 
 
ee73d54
3b22ee7
 
ee73d54
3b22ee7
 
bb0ec8e
 
3b22ee7
03872ef
d2a3b3c
 
 
3188082
 
 
 
3b22ee7
d2a3b3c
ee73d54
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import gradio as gr
from huggingface_hub import InferenceClient
from optimum.intel import OVModelForCausalLM
from transformers import AutoTokenizer, pipeline

# 載入模型和標記器
model_id = "HelloSun/Qwen2.5-0.5B-Instruct-openvino"
model = OVModelForCausalLM.from_pretrained(model_id)
tokenizer = AutoTokenizer.from_pretrained(model_id)

# 建立生成管道
pipe = pipeline("text-generation", model=model, tokenizer=tokenizer)

def respond(message, history):
    # 將當前訊息與歷史訊息合併
    #input_text = message if not history else history[-1]["content"] + " " + message
    input_text = message
    # 獲取模型的回應
    response = pipe(input_text, max_length=8192, truncation=True, num_return_sequences=1)
    reply = response[0]['generated_text']
    
    # 返回新的消息格式
    #return [{"role": "user", "content": message}, {"role": "assistant", "content": reply}], history + [{"role": "user", "content": message}, {"role": "assistant", "content": reply}]
    print(reply)
    return reply
    
# 設定 Gradio 的聊天界面
demo = gr.ChatInterface(fn=respond, title="Chat with Qwen 2.5", description="與 HelloSun/Qwen2.5-0.5B-Instruct-openvino 聊天!", type='messages')

if __name__ == "__main__":
    demo.launch()