Body10/inceptionai
0
1import gradio as gr2import torch3from transformers import AutoTokenizer, AutoModelForCausalLM4 5# =====================6# Model7# =====================8MODEL_ID = "inceptionai/jais-1.3b-chat"9 10tokenizer = AutoTokenizer.from_pretrained(MODEL_ID)11 12model = AutoModelForCausalLM.from_pretrained(13 MODEL_ID,14 device_map="cpu",15 torch_dtype=torch.float3216)17 18# =====================19# System Prompt (Arabic-focused)20# =====================21SYSTEM_PROMPT = (22 "أنت مساعد ذكي تتكلم العربية بشكل طبيعي. "23 "تفهم اللهجات العربية وخصوصًا اللهجة العراقية. "24 "لو المستخدم كتب عراقي، رد عليه عراقي بسيط وطبيعي. "25 "لا تكرر سؤال المستخدم. "26 "لا تسأل المستخدم أسئلة. "27 "رد مباشرة وباختصار. "28 "تجنب اللغة العربية الفصحى الثقيلة. "29 "لو المستخدم كتب إنجليزي، رد إنجليزي."30)31 32# =====================33# Response Function34# =====================35def respond(message):36 try:37 prompt = f"""38{SYSTEM_PROMPT}39 40المستخدم:41{message}42 43المساعد:44"""45 inputs = tokenizer(prompt, return_tensors="pt")46 47 outputs = model.generate(48 **inputs,49 max_new_tokens=80,50 temperature=0.7,51 do_sample=True,52 eos_token_id=tokenizer.eos_token_id53 )54 55 decoded = tokenizer.decode(outputs[0], skip_special_tokens=True)56 57 # قص أي حاجة قبل رد المساعد58 if "المساعد:" in decoded:59 decoded = decoded.split("المساعد:")[-1]60 61 return decoded.strip()62 63 except Exception:64 return "صار خطأ، جرّب مرة ثانية."65 66# =====================67# UI68# =====================69with gr.Blocks() as demo:70 gr.Markdown("## 🇮🇶 JAIS 1.3B – Arabic / Iraqi Chat")71 72 inp = gr.Textbox(73 label="اكتب هنا",74 placeholder="شكو راجل؟"75 )76 77 out = gr.Textbox(78 label="الرد",79 lines=480 )81 82 gr.Button("إرسال").click(respond, inp, out)83 84demo.launch()85 