Spaces:
Paused
Paused
Create README.md
Browse files
README.md
CHANGED
@@ -1,12 +1,263 @@
|
|
1 |
---
|
2 |
-
|
3 |
-
|
4 |
-
colorFrom: yellow
|
5 |
-
colorTo: indigo
|
6 |
sdk: streamlit
|
7 |
-
|
8 |
-
|
9 |
-
|
|
|
10 |
---
|
|
|
11 |
|
12 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
---
|
2 |
+
license: mit
|
3 |
+
title: نظام متكامل لتحليل المناقصات والمشاريع المستقبلية لشركة شبه الجزيرة للمقاولات
|
|
|
|
|
4 |
sdk: streamlit
|
5 |
+
emoji: 🚀
|
6 |
+
colorFrom: indigo
|
7 |
+
colorTo: yellow
|
8 |
+
short_description: تحليل متقدم للمناقصات، المحتوى المحلي، سلاسل الإمداد، والتوق
|
9 |
---
|
10 |
+
# نظام تحليل المناقصات وتوقع المشاريع المستقبلية
|
11 |
|
12 |
+
<div dir="rtl" align="center">
|
13 |
+
<img src="web/assets/logos/peninsula_logo.png" alt="شعار شركة شبه الجزيرة للمقاولات" width="200" />
|
14 |
+
<h2>نظام متكامل لتحليل المناقصات والمشاريع المستقبلية لشركة شبه الجزيرة للمقاولات</h2>
|
15 |
+
<p>تحليل متقدم للمناقصات، المحتوى المحلي، سلاسل الإمداد، والتوقعات المستقبلية</p>
|
16 |
+
<p>مستوى ثقة 95%</p>
|
17 |
+
<p>مهندس التطوير: م. تامر الجوهري</p>
|
18 |
+
</div>
|
19 |
+
|
20 |
+
<div dir="rtl">
|
21 |
+
|
22 |
+
## نبذة عن المشروع
|
23 |
+
|
24 |
+
هذا النظام هو منصة متكاملة تستخدم الذكاء الاصطناعي وتقنيات التعلم العميق لتحليل المناقصات وعقود المشاريع الكبرى في المملكة العربية السعودية. يركز النظام بشكل خاص على تحليل المحتوى المحلي وسلاسل الإمداد والتوقعات المستقبلية للمناقصات في قطاعات البلديات وصندوق الاستثمار ووزارة النقل.
|
25 |
+
|
26 |
+
### الإمكانيات الرئيسية
|
27 |
+
|
28 |
+
- **تحليل المناقصات**: استخراج ومعالجة متطلبات المناقصات من الملفات بصيغ متعددة (PDF, Word, صور ممسوحة ضوئياً)
|
29 |
+
- **تحليل المحتوى المحلي**: تقدير وحساب نسب المحتوى المحلي والامتثال للمتطلبات التنظيمية
|
30 |
+
- **إدارة سلاسل الإمداد**: تحليل وتحسين سلاسل الإمداد المحلية واقتراح الموردين المحليين المناسبين
|
31 |
+
- **التوقعات المستقبلية**: توقع المناقصات والمشاريع المستقبلية من مختلف الجهات الحكومية
|
32 |
+
- **تقدير احتمالية النجاح**: حساب احتمالية الفوز بالمناقصات بناءً على تحليل البيانات التاريخية والسوق الحالي
|
33 |
+
- **تقارير تحليلية**: إنشاء تقارير شاملة ولوحات معلومات تفاعلية لدعم اتخاذ القرار
|
34 |
+
|
35 |
+
## متطلبات النظام
|
36 |
+
|
37 |
+
### المتطلبات التقنية
|
38 |
+
|
39 |
+
- Python 3.10 أو أحدث
|
40 |
+
- بطاقة GPU بذاكرة 46 جيجابايت أو أكثر (للاستفادة الكاملة من قدرات النظام)
|
41 |
+
- مساحة تخزين 20 جيجابايت على الأقل
|
42 |
+
- اتصال إنترنت (مطلوب للوصول إلى واجهات برمجة التطبيقات الخارجية)
|
43 |
+
|
44 |
+
### المكتبات المطلوبة
|
45 |
+
|
46 |
+
يمكن تثبيت جميع المكتبات المطلوبة باستخدام ملف `requirements.txt` المرفق:
|
47 |
+
|
48 |
+
```bash
|
49 |
+
pip install -r requirements.txt
|
50 |
+
```
|
51 |
+
|
52 |
+
## طريقة الإعداد في بيئة HF中国镜像站
|
53 |
+
|
54 |
+
### 1. إنشاء Space في HF中国镜像站
|
55 |
+
|
56 |
+
1. قم بتسجيل الدخول إلى [HF中国镜像站](https://huggingface.co/)
|
57 |
+
2. انتقل إلى [Spaces](https://huggingface.co/spaces) وانقر على "Create new Space"
|
58 |
+
3. اختر اسماً للمشروع وحدد "Streamlit" كإطار عمل
|
59 |
+
4. اختر "GPU" كنوع الجهاز (يفضل A10G أو أفضل)
|
60 |
+
5. أنشئ المستودع
|
61 |
+
|
62 |
+
### 2. رفع الملفات إلى المستودع
|
63 |
+
|
64 |
+
يمكنك رفع ملفات المشروع إلى مستودع HF中国镜像站 بإحدى الطرق التالية:
|
65 |
+
|
66 |
+
#### عبر واجهة الويب
|
67 |
+
|
68 |
+
1. انتقل إلى صفحة Space الخاص بك
|
69 |
+
2. انقر على "Files" ثم "Add file"
|
70 |
+
3. قم برفع جميع الملفات أو المجلدات
|
71 |
+
|
72 |
+
#### باستخدام Git
|
73 |
+
|
74 |
+
```bash
|
75 |
+
git clone https://huggingface.co/spaces/username/your-space-name
|
76 |
+
cd your-space-name
|
77 |
+
# نسخ ملفات المشروع هنا
|
78 |
+
git add .
|
79 |
+
git commit -m "إضافة ملفات المشروع"
|
80 |
+
git push
|
81 |
+
```
|
82 |
+
|
83 |
+
#### باستخدام واجهة برمجة HF中国镜像站
|
84 |
+
|
85 |
+
```bash
|
86 |
+
pip install huggingface_hub
|
87 |
+
```
|
88 |
+
|
89 |
+
```python
|
90 |
+
from huggingface_hub import HfApi
|
91 |
+
|
92 |
+
api = HfApi()
|
93 |
+
api.upload_folder(
|
94 |
+
folder_path="./tender_analysis_system",
|
95 |
+
repo_id="username/your-space-name",
|
96 |
+
repo_type="space"
|
97 |
+
)
|
98 |
+
```
|
99 |
+
|
100 |
+
### 3. تحميل النماذج المدربة مسبقاً
|
101 |
+
|
102 |
+
النظام يستخدم عدة نماذج مدربة مسبقاً. لتحميلها:
|
103 |
+
|
104 |
+
1. قم بإنشاء مجلد `models/trained` في مستودعك
|
105 |
+
2. حمل النماذج التالية:
|
106 |
+
|
107 |
+
```python
|
108 |
+
from huggingface_hub import snapshot_download
|
109 |
+
|
110 |
+
# نموذج ArabERT
|
111 |
+
snapshot_download(repo_id="aubmindlab/arabert-base-v2",
|
112 |
+
local_dir="./models/trained/arabert")
|
113 |
+
|
114 |
+
# نموذج مدرب للتصنيف
|
115 |
+
snapshot_download(repo_id="username/tender-classifier",
|
116 |
+
local_dir="./models/trained/tender_classifier")
|
117 |
+
```
|
118 |
+
|
119 |
+
### 4. إعداد ملفات الإعدادات
|
120 |
+
|
121 |
+
1. تأكد من أن ملفات الإعدادات في مجلد `config/` تحتوي على القيم الصحيحة
|
122 |
+
2. عدل `config/anthropic_config.yaml` لإضافة مفتاح واجهة برمجة Anthropic الخاص بك
|
123 |
+
3. عدل `config/prediction_config.yaml` حسب احتياجاتك
|
124 |
+
|
125 |
+
### 5. تشغيل التطبيق
|
126 |
+
|
127 |
+
بعد رفع جميع الملفات، سيقوم HF中国镜像站 Space بتثبيت المكتبات وتشغيل التطبيق تلقائياً. يمكنك الوصول إليه عبر الرابط:
|
128 |
+
`https://huggingface.co/spaces/username/your-space-name`
|
129 |
+
|
130 |
+
## هيكل المشروع
|
131 |
+
|
132 |
+
```
|
133 |
+
tender_analysis_system/
|
134 |
+
├── app.py # تطبيق الواجهة الرئيسية
|
135 |
+
├── requirements.txt # متطلبات المكتبات
|
136 |
+
├── README.md # هذا الملف
|
137 |
+
├── config/ # ملفات الإعدادات
|
138 |
+
├── models/ # النماذج وواجهات التحميل
|
139 |
+
├── preprocessing/ # معالجة المستندات والبيانات
|
140 |
+
├── analysis/ # وحدات التحليل المختلفة
|
141 |
+
├── supply_chain/ # تحليل سلاسل الإمداد
|
142 |
+
├── prediction/ # التوقعات المستقبلية
|
143 |
+
├── local_content/ # تحليل المحتوى المحلي
|
144 |
+
├── data/ # البيانات والقوالب
|
145 |
+
├── utils/ # أدوات مساعدة
|
146 |
+
├── training/ # وحدات تدريب النماذج
|
147 |
+
├── web/ # مكونات الواجهة
|
148 |
+
└── logs/ # ملفات السجلات
|
149 |
+
```
|
150 |
+
|
151 |
+
## الوحدات الرئيسية
|
152 |
+
|
153 |
+
### معالجة المستندات
|
154 |
+
|
155 |
+
- **document_reader.py**: قراءة وتحليل المستندات بأنواعها المختلفة
|
156 |
+
- **ocr_processor.py**: معالجة الصور والمستندات الممسوحة ضوئياً
|
157 |
+
|
158 |
+
### التحليل
|
159 |
+
|
160 |
+
- **requirement_analyzer.py**: تحليل متطلبات المناقصة
|
161 |
+
- **cost_estimator.py**: تقدير تكاليف المشروع
|
162 |
+
- **risk_analyzer.py**: تحليل المخاطر المحتملة
|
163 |
+
- **local_content_analyzer.py**: تحليل نسب المحتوى المحلي
|
164 |
+
- **future_projects_analyzer.py**: تحليل المشاريع المستقبلية
|
165 |
+
|
166 |
+
### نماذج التوقع
|
167 |
+
|
168 |
+
- **tender_forecaster.py**: توقع المناقصات المستقبلية
|
169 |
+
- **success_predictor.py**: توقع احتمالية النجاح
|
170 |
+
- **future_prediction_model.py**: نموذج التوقعات المستقبلية الشامل
|
171 |
+
|
172 |
+
### واجهة المستخدم
|
173 |
+
|
174 |
+
- **web/pages/**: صفحات التطبيق المختلفة
|
175 |
+
- **web/components/**: مكونات واجهة المستخدم القابلة لإعادة الاستخدام
|
176 |
+
- **web/styles/**: أنماط CSS للتطبيق
|
177 |
+
|
178 |
+
## دليل الاستخدام
|
179 |
+
|
180 |
+
### تحليل مناقصة جديدة
|
181 |
+
|
182 |
+
1. انتقل إلى صفحة "تحليل المناقصات"
|
183 |
+
2. ارفع ملفات المناقصة (PDF، Word، صور)
|
184 |
+
3. انقر على "تحليل" وانتظر اكتمال المعالجة
|
185 |
+
4. تصفح نتائج التحليل المختلفة عبر علامات التبويب
|
186 |
+
|
187 |
+
### تحليل المحتوى المحلي
|
188 |
+
|
189 |
+
1. انتقل إلى صفحة "المحتوى المحلي"
|
190 |
+
2. أدخل تفاصيل المشروع والمتطلبات
|
191 |
+
3. استعرض التحليل ونسب المحتوى المحلي المتوقعة
|
192 |
+
4. تصفح الموردين المحليين المقترحين
|
193 |
+
|
194 |
+
### توقع المشاريع المستقبلية
|
195 |
+
|
196 |
+
1. انتقل إلى صفحة "المشاريع المستقبلية"
|
197 |
+
2. اختر الجهة الحكومية (البلديات، صندوق الاستثمار، وزارة النقل، الكل)
|
198 |
+
3. حدد الفترة الزمنية للتوقع
|
199 |
+
4. استعرض الرسوم البيانية والتوقعات المستقبلية
|
200 |
+
|
201 |
+
### توقع احتمالية النجاح
|
202 |
+
|
203 |
+
1. انتقل إلى صفحة "توقع احتمالية النجاح"
|
204 |
+
2. أدخل تفاصيل المناقصة (القطاع، المنطقة، الميزانية، إلخ)
|
205 |
+
3. انقر على "تحليل" لعرض احتمالية النجاح ومستوى الثقة
|
206 |
+
4. استعرض العوامل المؤثرة والتوصيات
|
207 |
+
|
208 |
+
## التحديثات والصيانة
|
209 |
+
|
210 |
+
- **تدريب النماذج**: يمكن إعادة تدريب النماذج عبر صفحة الإدارة باستخدام بيانات جديدة
|
211 |
+
- **تحديث قاعدة البيانات**: يمكن تحديث قاعدة بيانات الموردين والمقاولين من خلال الواجهة
|
212 |
+
- **نسخ احتياطي**: يتم عمل نسخ احتياطية تلقائية للبيانات والنماذج
|
213 |
+
|
214 |
+
## مواضيع متقدمة
|
215 |
+
|
216 |
+
### تخصيص النماذج
|
217 |
+
|
218 |
+
يمكن تخصيص النماذج المستخدمة في النظام عبر:
|
219 |
+
|
220 |
+
```python
|
221 |
+
from training.future_prediction_model import FuturePredictionModel
|
222 |
+
|
223 |
+
# تدريب نموذج جديد
|
224 |
+
model = FuturePredictionModel(config_path="config/prediction_config.yaml")
|
225 |
+
model.train_classification_model(
|
226 |
+
data_path="data/processed/new_tenders.csv",
|
227 |
+
model_name="aubmindlab/arabert-base-v2",
|
228 |
+
output_dir="models/trained/new_tender_classifier",
|
229 |
+
epochs=5,
|
230 |
+
batch_size=16,
|
231 |
+
use_gpu=True
|
232 |
+
)
|
233 |
+
```
|
234 |
+
|
235 |
+
### إضافة مصادر بيانات جديدة
|
236 |
+
|
237 |
+
لإضافة مصادر بيانات جديدة:
|
238 |
+
|
239 |
+
1. قم بإنشاء ملف في مجلد `api_integrations/` للاتصال بالمصدر الجديد
|
240 |
+
2. أضف المصدر الجديد إلى `config/prediction_config.yaml`
|
241 |
+
3. قم بتحديث النماذج باستخدام البيانات الجديدة
|
242 |
+
|
243 |
+
## التكامل مع الأنظمة الأخرى
|
244 |
+
|
245 |
+
يتكامل النظام مع:
|
246 |
+
|
247 |
+
- منصة منافسات الحكومية
|
248 |
+
- منصة اعتماد
|
249 |
+
- وزارة الشؤون البلدية والقروية والإسكان
|
250 |
+
- صندوق الاستثمارات العامة
|
251 |
+
|
252 |
+
## الدعم والمساعدة
|
253 |
+
|
254 |
+
للحصول على مساعدة فنية:
|
255 |
+
|
256 |
+
- البريد الإلكتروني: [email protected]
|
257 |
+
- هاتف: +966 55 406 3339
|
258 |
+
|
259 |
+
## رخصة الاستخدام
|
260 |
+
|
261 |
+
هذا البرنامج مرخص للاستخدام الحصري من قبل شركة شبه الجزيرة للمقاولات. جميع الحقوق محفوظة.
|
262 |
+
|
263 |
+
</div>
|