import gradio as gr # ✅ Arabic Semantic Mapping for Customer Satisfaction arabic_feelings_map = { # 😡 Anger / Complaint "زعلان": "غضب", "معصب": "غضب", "سيء": "غضب", "خدمة سيئة": "غضب", "ما عجبني": "غضب", "تجربة سيئة": "غضب", # 😢 Sad / Disappointed "محبط": "حزن", "حزين": "حزن", "مكسور": "حزن", "ندمت": "حزن", # 😍 Happy / Satisfied "مبسوط": "سعادة", "سعيد": "سعادة", "مرتاح": "سعادة", "راضي": "سعادة", "ممتاز": "سعادة", "رهيب": "سعادة", "يعجبني": "سعادة", # 😨 Fear / Anxiety "خايف": "خوف", "قلقان": "خوف", "متوتر": "خوف", # 🤢 Disgust "مقرف": "اشمئزاز", "مثير للاشمئزاز": "اشمئزاز", # 😐 Neutral "عادي": "محايد", "طبيعي": "محايد" } # ✅ Smart Arabic Analyzer def analyze_arabic_text(text): text = text.strip().lower() if not text: return "❗️ الرجاء إدخال رأي العميل" # Try direct match for key in arabic_feelings_map: if key in text: return f"🧠 الشعور ج: {arabic_feelings_map[key]}" return f"✅ رأي العميل: {text}\n\n🧠 الشعور المستنتج: غير واضح (محايد)" # ✅ Build Arabic UI ui = gr.Interface( fn=analyze_arabic_text, inputs=gr.Textbox(placeholder="اكتب رأي العميل هنا... (مثال: الخدمة سيئة)"), outputs="text", title="✅ محلل رضا العملاء بالعربي", description="أدخل رأي العميل وسيتم تحليل شعوره تلقائياً (غضب، سعادة، حزن، خوف...)." ) ui.launch()