import gradio as gr import torch from transformers import AutoModelForCausalLM, AutoTokenizer import os # --- 1. إعدادات النموذج (تغيير اسم النموذج) --- # Phi-3 Mini هو البديل الأقوى والأكثر كفاءة للذاكرة MODEL_ID = "TinyLlama/TinyLlama-1.1B-Chat-v1.0" # ... (بقية الدالة load_model() تظل كما هي) ... # --- 2. تهيئة النموذج والتوكنايزر (نفس الكود) --- def load_model(): """تحميل نموذج Phi-3-Mini المكمم (أقل استهلاكاً للذاكرة).""" try: # تحديد جهاز التشغيل (cpu هو الأكيد في الطبقة المجانية) device = torch.device("cpu") # نركز على CPU لضمان النجاح print(f"✅ سيتم تشغيل النموذج على: {device}") # التكميم 4-bit ضروري جداً لتقليل استهلاك الذاكرة model = AutoModelForCausalLM.from_pretrained( MODEL_ID, torch_dtype=torch.float32, # قد نحتاج إلى float32 إذا كان على CPU load_in_4bit=True, device_map="auto" ).to(device) tokenizer = AutoTokenizer.from_pretrained(MODEL_ID) return model, tokenizer, device except Exception as e: print(f"❌ فشل تحميل نموذج Phi-3-Mini: {e}") return None, None, None # تحميل النموذج عند بدء تشغيل الـ Space model, tokenizer, device = load_model() # ... (دالة anesai_chat() تظل كما هي) ... # ... (واجهة Gradio التفاعلية تظل كما هي) ...