🐔 مساعد تربية الدجاج الذكي
نظام متطور لإدارة ومراقبة تربية الدجاج مع ذكاء اصطناعي متقدم
import gradio as gr import pandas as pd import plotly.graph_objects as go import plotly.express as px from datetime import datetime, timedelta import json import os from chicken_ai import AdvancedChickenAI # إنشاء مثيل من نموذج الذكاء الاصطناعي ai = AdvancedChickenAI() # متغيرات عامة لتخزين البيانات production_data = [] health_records = [] feed_consumption = [] def format_diagnosis_results(results): """تنسيق نتائج التشخيص""" if not results: return "لم يتم العثور على تشخيص مطابق للأعراض المدخلة." output = "## 🔍 نتائج التشخيص\n\n" for i, result in enumerate(results, 1): confidence_percentage = result.probability * 100 confidence_emoji = "🔴" if confidence_percentage >= 80 else "🟡" if confidence_percentage >= 60 else "🟢" output += f"### {confidence_emoji} التشخيص {i}: {result.disease}\n" output += f"**نسبة الثقة:** {confidence_percentage:.1f}%\n" output += f"**الأعراض المطابقة:** {', '.join(result.symptoms_matched)}\n\n" output += f"**💊 العلاج:**\n{result.treatment}\n\n" output += f"**🛡️ الوقاية:**\n{result.prevention}\n\n" output += f"**🧼 النظافة:**\n{result.hygiene}\n\n" output += "---\n\n" return output def format_nutrition_plan(plan): """تنسيق خطة التغذية""" output = f"## 🍽️ خطة التغذية المخصصة\n\n" output += f"**العمر:** {plan.age_weeks} أسبوع\n" output += f"**نوع الدجاج:** {plan.chicken_type}\n" output += f"**الحالة:** {plan.condition}\n\n" output += f"### 📊 المتطلبات الغذائية:\n" output += f"- **البروتين:** {plan.protein_percentage}%\n" output += f"- **الطاقة:** {plan.energy_kcal} كيلو كالوري/كجم\n" output += f"- **الكمية اليومية:** {plan.daily_amount} جرام\n" output += f"- **عدد الوجبات:** {plan.feeding_frequency} وجبات يومياً\n\n" output += f"### 💊 المكملات الغذائية:\n" for supplement in plan.supplements: output += f"- {supplement}\n" output += f"\n### 🌱 العلائق البديلة المقترحة:\n" for feed in plan.alternative_feeds: output += f"- {feed}\n" return output def diagnose_disease_interface(symptoms): """واجهة تشخيص الأمراض""" if not symptoms.strip(): return "يرجى إدخال الأعراض أولاً." results = ai.diagnose_disease(symptoms) return format_diagnosis_results(results) def generate_nutrition_plan_interface(age, chicken_type, condition): """واجهة توليد خطة التغذية""" try: age_weeks = int(age) plan = ai.generate_nutrition_plan(age_weeks, chicken_type, condition) return format_nutrition_plan(plan) except ValueError: return "يرجى إدخال عمر صحيح بالأسابيع." def answer_question_interface(question): """واجهة الأسئلة والأجوبة""" if not question.strip(): return "يرجى كتابة سؤالك أولاً." answer = ai.answer_general_question(question) return f"## 💬 الإجابة:\n\n{answer}" def get_daily_tips_interface(): """واجهة النصائح اليومية""" tips = ai.get_daily_tips() output = "## 📝 نصائح يومية لتربية الدجاج\n\n" for i, tip in enumerate(tips, 1): output += f"{i}. {tip}\n\n" return output def get_breed_info_interface(breed_name): """واجهة معلومات السلالات""" if not breed_name.strip(): return "يرجى اختيار سلالة من القائمة." breed_info = ai.get_breed_info(breed_name) if not breed_info: return f"لم يتم العثور على معلومات عن سلالة {breed_name}." output = f"## 🐔 معلومات سلالة {breed_name}\n\n" output += f"**النوع:** {breed_info['type']}\n" if 'egg_production' in breed_info: output += f"**إنتاج البيض:** {breed_info['egg_production']}\n" output += f"**لون البيض:** {breed_info['egg_color']}\n" if 'growth_rate' in breed_info: output += f"**معدل النمو:** {breed_info['growth_rate']}\n" output += f"**الخصائص:** {breed_info['characteristics']}\n" output += f"**المناعة:** {breed_info['immunity']}\n" return output def add_production_record(date, eggs_count, feed_consumed, notes): """إضافة سجل إنتاج""" global production_data try: record = { "date": date, "eggs": int(eggs_count) if eggs_count else 0, "feed": float(feed_consumed) if feed_consumed else 0.0, "notes": notes or "" } production_data.append(record) # حفظ البيانات في ملف with open('/home/ubuntu/chicken_assistant/production_data.json', 'w', encoding='utf-8') as f: json.dump(production_data, f, ensure_ascii=False, indent=2) return f"✅ تم إضافة السجل بنجاح!\nالتاريخ: {date}\nعدد البيض: {record['eggs']}\nالعلف المستهلك: {record['feed']} كجم" except ValueError: return "❌ خطأ في البيانات المدخلة. يرجى التأكد من صحة الأرقام." def generate_production_chart(): """إنشاء مخطط الإنتاج""" if not production_data: return None df = pd.DataFrame(production_data) df['date'] = pd.to_datetime(df['date']) df = df.sort_values('date') # مخطط إنتاج البيض fig = go.Figure() fig.add_trace(go.Scatter( x=df['date'], y=df['eggs'], mode='lines+markers', name='إنتاج البيض', line=dict(color='#FF6B6B', width=3), marker=dict(size=8) )) fig.update_layout( title='📈 تطور إنتاج البيض', xaxis_title='التاريخ', yaxis_title='عدد البيض', font=dict(family="Arial", size=12), plot_bgcolor='white', paper_bgcolor='white', showlegend=True ) return fig def generate_feed_consumption_chart(): """إنشاء مخطط استهلاك العلف""" if not production_data: return None df = pd.DataFrame(production_data) df['date'] = pd.to_datetime(df['date']) df = df.sort_values('date') fig = go.Figure() fig.add_trace(go.Bar( x=df['date'], y=df['feed'], name='استهلاك العلف', marker_color='#4ECDC4' )) fig.update_layout( title='📊 استهلاك العلف اليومي', xaxis_title='التاريخ', yaxis_title='الكمية (كجم)', font=dict(family="Arial", size=12), plot_bgcolor='white', paper_bgcolor='white' ) return fig def load_existing_data(): """تحميل البيانات الموجودة""" global production_data try: if os.path.exists('/home/ubuntu/chicken_assistant/production_data.json'): with open('/home/ubuntu/chicken_assistant/production_data.json', 'r', encoding='utf-8') as f: production_data = json.load(f) except: production_data = [] # تحميل البيانات عند بدء التطبيق load_existing_data() # إنشاء الواجهة الرئيسية with gr.Blocks( title="🐔 مساعد تربية الدجاج الذكي", theme=gr.themes.Soft( primary_hue="emerald", secondary_hue="blue", neutral_hue="slate", font=[gr.themes.GoogleFont("Cairo"), "Arial", "sans-serif"] ), css=""" .gradio-container { max-width: 1200px !important; margin: auto !important; } .main-header { text-align: center; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 2rem; border-radius: 15px; margin-bottom: 2rem; box-shadow: 0 10px 30px rgba(0,0,0,0.1); } .feature-card { background: white; border-radius: 12px; padding: 1.5rem; box-shadow: 0 4px 15px rgba(0,0,0,0.1); border: 1px solid #e2e8f0; transition: transform 0.3s ease; } .feature-card:hover { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0,0,0,0.15); } .tab-nav { background: #f8fafc; border-radius: 10px; padding: 0.5rem; } .metric-card { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 1rem; border-radius: 10px; text-align: center; margin: 0.5rem; } """ ) as app: # العنوان الرئيسي gr.HTML("""
نظام متطور لإدارة ومراقبة تربية الدجاج مع ذكاء اصطناعي متقدم