arabic-chatbot / app.py
dralsarrani's picture
Upload app.py with huggingface_hub
0d8d96a verified
import gradio as gr
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_name = "Qwen/Qwen2.5-1.5B-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype=torch.float16,
device_map="auto"
)
SYSTEM_PROMPT = """
أنت مساعد ذكي تتحدث العربية بطلاقة.
رد على المستخدم بالعربية الفصحى أو باللهجة السعودية حسب أسلوبه.
"""
def chat(prompt):
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=200)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
def respond(message, history):
full_prompt = SYSTEM_PROMPT + "\n"
for user, bot in history:
full_prompt += f"User: {user}\nBot: {bot}\n"
full_prompt += f"User: {message}\nBot:"
reply = chat(full_prompt)
return reply
demo = gr.ChatInterface(respond, title="Arabic Chatbot")
if __name__ == "__main__":
demo.launch()