Dav66 commited on
Commit
d2dec26
·
verified ·
1 Parent(s): 3e69b09

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -7
app.py CHANGED
@@ -5,15 +5,24 @@ import gradio as gr
5
  # اسم مستودع الموديل متاعك
6
  model_name = "Dav66/Te"
7
 
8
- # تحميل التوكنيزر والموديل
9
  tokenizer = AutoTokenizer.from_pretrained(model_name)
10
- model = AutoModelForCausalLM.from_pretrained(model_name)
11
 
 
 
 
 
 
 
 
 
 
12
  def generate_text(prompt):
13
- inputs = tokenizer(prompt, return_tensors="pt")
14
- outputs = model.generate(**inputs, max_length=100)
15
- text = tokenizer.decode(outputs[0], skip_special_tokens=True)
16
- return text
 
17
 
18
  # واجهة Gradio
19
  iface = gr.Interface(
@@ -21,7 +30,7 @@ iface = gr.Interface(
21
  inputs=gr.Textbox(lines=2, placeholder="اكتب هنا النص..."),
22
  outputs="text",
23
  title="توليد نص بالعربي",
24
- description="تطبيق بسيط يعرض موديلك على Hugging Face Space"
25
  )
26
 
27
  iface.launch()
 
5
  # اسم مستودع الموديل متاعك
6
  model_name = "Dav66/Te"
7
 
8
+ # تحميل التوكنيزر
9
  tokenizer = AutoTokenizer.from_pretrained(model_name)
 
10
 
11
+ # تحميل الموديل مع تفعيل offloading على القرص وتحديد نوع البيانات
12
+ model = AutoModelForCausalLM.from_pretrained(
13
+ model_name,
14
+ device_map="auto", # توزيع تلقائي على CPU
15
+ offload_folder="./offload", # مجلد لتخزين الأجزاء المؤقتة
16
+ torch_dtype=torch.float16 # تقليل حجم الأوزان
17
+ )
18
+
19
+ # دالة التوليد (باستهلاك ذاكرة منخفض)
20
  def generate_text(prompt):
21
+ with torch.no_grad(): # تقليل استهلاك الذاكرة
22
+ inputs = tokenizer(prompt, return_tensors="pt")
23
+ outputs = model.generate(**inputs, max_new_tokens=50) # توليد قصير نسبياً
24
+ text = tokenizer.decode(outputs[0], skip_special_tokens=True)
25
+ return text
26
 
27
  # واجهة Gradio
28
  iface = gr.Interface(
 
30
  inputs=gr.Textbox(lines=2, placeholder="اكتب هنا النص..."),
31
  outputs="text",
32
  title="توليد نص بالعربي",
33
+ description="تطبيق بسيط يعرض موديلك على Hugging Face Space بكفاءة على CPU"
34
  )
35
 
36
  iface.launch()