MYAI / app.py
DD8777's picture
Update app.py
530c337 verified
Raw
History Blame Contribute Delete
1.46 kB
import gradio as gr
from transformers import AutoModelForCausalLM, AutoTokenizer
# מזהה המאגר ושם קובץ ה-GGUF
MODEL_ID = "Qwen/Qwen2.5-Coder-7B-Instruct-GGUF"
GGUF_FILE = "qwen2.5-coder-7b-instruct-q4_k_m.gguf"
# 1. טעינת הטוקנייזר (ללא הפרמטר gguf_file)
tokenizer = AutoTokenizer.from_pretrained(MODEL_ID)
# 2. טעינת המודל בפורמט GGUF
model = AutoModelForCausalLM.from_pretrained(MODEL_ID, gguf_file=GGUF_FILE)
def answer(message, history):
messages = []
for item in history:
if isinstance(item, dict):
messages.append(item)
elif isinstance(item, (list, tuple)) and len(item) == 2:
u_msg, b_msg = item
if u_msg: messages.append({"role": "user", "content": u_msg})
if b_msg: messages.append({"role": "assistant", "content": b_msg})
messages.append({"role": "user", "content": message})
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=512, temperature=0.7)
response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
return response
demo = gr.ChatInterface(
fn=answer,
title="Qwen GGUF Assistant",
description="הרצת GGUF נקייה ומהירה על CPU"
)
if __name__ == "__main__":
demo.launch()