anaspro commited on
Commit
23ff0a2
·
verified ·
1 Parent(s): d9406e2

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -18
app.py CHANGED
@@ -46,40 +46,40 @@ print("✅ Model ready!\n")
46
  # ======================================================
47
  @spaces.GPU(duration=60)
48
  def chat(message, history):
49
- # تجهيز سجل المحادثة
50
  messages = []
51
  for msg in history:
52
- if msg["role"] == "user":
53
- messages.append({"role": "user", "content": msg["content"]})
54
- elif msg["role"] == "assistant":
55
- messages.append({"role": "assistant", "content": msg["content"]})
 
 
 
 
 
56
 
57
- # إضافة السؤال الحالي مع الـ system prompt
58
- messages.append({"role": "user", "content": f"{SYSTEM_PROMPT}\n\nالسؤال: {message}"})
59
 
60
- # تجهيز الإدخال
61
  input_ids = tokenizer.apply_chat_template(
62
  messages,
63
  return_tensors="pt",
64
- add_generation_prompt=True,
65
  ).to(model.device)
66
 
67
- # إعداد البث المباشر للنص
68
- streamer = TextIteratorStreamer(
69
- tokenizer, skip_prompt=True, skip_special_tokens=True
70
- )
71
 
72
  generation_kwargs = dict(
73
  input_ids=input_ids,
74
  streamer=streamer,
75
- max_new_tokens=256,
76
- temperature=0.8,
77
- top_p=0.95,
78
  do_sample=True,
79
- repetition_penalty=1.15,
80
  )
81
 
82
- # إنشاء Thread للبث التدريجي
83
  thread = Thread(target=model.generate, kwargs=generation_kwargs)
84
  thread.start()
85
 
 
46
  # ======================================================
47
  @spaces.GPU(duration=60)
48
  def chat(message, history):
49
+ # إعداد سياق المحادثة
50
  messages = []
51
  for msg in history:
52
+ messages.append({"role": msg["role"], "content": msg["content"]})
53
+
54
+ # system prompt محسّن
55
+ system_prompt = (
56
+ "أنت مساعد ذكي تحچي باللهجة العراقية الطبيعية. "
57
+ "جاوب بحرّية وخلّك مرتاح بالكلام، مثل إنسان حقيقي. "
58
+ "تذكّر شنو انحچا قبله وكمّل الحديث بدون ما تكون رسمي. "
59
+ "لا تقول 'مرحباً' أو 'بالتأكيد'، بس جاوب مباشرة."
60
+ )
61
 
62
+ messages.append({"role": "system", "content": system_prompt})
63
+ messages.append({"role": "user", "content": message})
64
 
 
65
  input_ids = tokenizer.apply_chat_template(
66
  messages,
67
  return_tensors="pt",
68
+ add_generation_prompt=True
69
  ).to(model.device)
70
 
71
+ streamer = TextIteratorStreamer(tokenizer, skip_prompt=True, skip_special_tokens=True)
 
 
 
72
 
73
  generation_kwargs = dict(
74
  input_ids=input_ids,
75
  streamer=streamer,
76
+ max_new_tokens=1024, # يكتب براحة
77
+ temperature=0.95, # كلام طبيعي
78
+ top_p=0.95, # توازن بالاحتمالات
79
  do_sample=True,
80
+ repetition_penalty=1.07, # يقلل التكرار الطفيف
81
  )
82
 
 
83
  thread = Thread(target=model.generate, kwargs=generation_kwargs)
84
  thread.start()
85