Spaces:
Paused
Paused
| import os | |
| import sys | |
| import streamlit as st | |
| # إضافة المسارات للعثور على الوحدات | |
| current_dir = os.path.dirname(os.path.abspath(__file__)) | |
| sys.path.append(current_dir) | |
| # استيراد التطبيق الرئيسي | |
| try: | |
| from app import main | |
| except ImportError: | |
| # محاولة استيراد بطريقة بديلة إذا فشلت الطريقة الأولى | |
| try: | |
| from tender_analysis_system.app import main | |
| except ImportError: | |
| st.error("❌ فشل استيراد التطبيق الرئيسي. تأكد من هيكل المجلدات وتثبيت المكتبات.") | |
| st.info("ℹ️ قم بالتحقق من ملف requirements.txt وتأكد من تثبيت جميع المكتبات المطلوبة.") | |
| # عرض تعليمات حول كيفية إصلاح المشكلة | |
| with st.expander("🛠️ كيفية إصلاح المشكلة"): | |
| st.markdown(""" | |
| ## خطوات إصلاح مشكلة الاستيراد | |
| 1. تأكد من تثبيت جميع المكتبات المطلوبة: | |
| ```bash | |
| pip install -r requirements.txt | |
| ``` | |
| 2. تأكد من هيكل المجلدات: | |
| ``` | |
| / | |
| ├── huggingface_app.py # هذا الملف الحالي | |
| ├── app.py # التطبيق الرئيسي | |
| ├── config.py # ملف الإعدادات | |
| └── modules/ # وحدات التطبيق | |
| ├── pricing/ | |
| ├── document_analysis/ | |
| └── ... | |
| ``` | |
| 3. قم بفحص سجل الأخطاء أدناه: | |
| """) | |
| st.code(str(sys.path), language="python") | |
| # إظهار واجهة بديلة بسيطة | |
| st.header("🚧 نظام تحليل المناقصات والعقود") | |
| st.subheader("لم يتم تحميل التطبيق بنجاح") | |
| st.write("هناك مشكلة في تحميل تطبيق تحليل المناقصات. يرجى مراجعة الإعدادات وإعادة المحاولة.") | |
| # الخروج من السكريبت | |
| sys.exit(1) | |
| # تهيئة إعدادات الصفحة | |
| st.set_page_config( | |
| page_title="نظام تحليل المناقصات والعقود", | |
| page_icon="📊", | |
| layout="wide", | |
| initial_sidebar_state="expanded", | |
| menu_items={ | |
| 'About': "تطبيق تحليل المناقصات والعقود - إصدار 2.0" | |
| } | |
| ) | |
| # تهيئة متغيرات البيئة | |
| def setup_environment(): | |
| """تهيئة متغيرات البيئة اللازمة للتطبيق""" | |
| # التحقق من وجود مفاتيح API | |
| if os.environ.get("ANTHROPIC_API_KEY") is None: | |
| st.warning("⚠️ مفتاح API لـ Anthropic غير موجود. بعض الميزات قد لا تعمل.") | |
| api_key = st.text_input("أدخل مفتاح Anthropic API الخاص بك:", type="password") | |
| if api_key: | |
| os.environ["ANTHROPIC_API_KEY"] = api_key | |
| st.success("✅ تم تعيين مفتاح Anthropic API!") | |
| if os.environ.get("HUGGINGFACE_API_KEY") is None: | |
| st.warning("⚠️ مفتاح API لـ Hugging Face غير موجود. بعض الميزات قد لا تعمل.") | |
| api_key = st.text_input("أدخل مفتاح Hugging Face API الخاص بك:", type="password") | |
| if api_key: | |
| os.environ["HUGGINGFACE_API_KEY"] = api_key | |
| st.success("✅ تم تعيين مفتاح Hugging Face API!") | |
| # تشغيل التطبيق | |
| if __name__ == "__main__": | |
| setup_environment() | |
| main() |