أشارك رحلتي في بناء نظام ذكي لتجميع الأخبار يعالج أكثر من 30 قناة رسمية للحكومة السورية يومياً
التحدي الذي ألهم هذا المشروع
بوصفي مهتماً بشؤون الشرق الأوسط، لاحظت فجوة كبيرة في توافر المعلومات المنظمة حول نشاطات الحكومة السورية. كانت البيانات الرسمية متناثرة عبر أكثر من 30 قناة منفصلة على تلغرام – من الرئاسة إلى الوزارات المختلفة – مما جعل من المستحيل تقريباً على أي شخص متابعة كل شيء بشكل شامل.
المشكلات كانت واضحة:
- المعلومات مبعثرة في كل مكان: كان على المواطنين والباحثين متابعة عشرات القنوات يدوياً
- حواجز اللغة: معظم المحتوى كان متاحاً بالعربية فقط، مما يحدّ من الوصول الدولي
- فوضى المحتوى: أخبار مكررة، توقيت عشوائي، وعدم وجود نظام أولوية
- إضاعة للوقت: لا توجد وسيلة للحصول على ملخص يومي لأهم التطورات
بدا هذا كحالة مثالية لاستخدام الذكاء الاصطناعي وأتمتة الحوسبة السحابية. وهكذا أنشأت «التقرير اليومي عن سوريا».
الحل التقني: خط أنابيب ذكاء اصطناعي من 4 مراحل
صممت «التقرير اليومي عن سوريا» كنظام بلا خوادم (Serverless) على AWS يعمل بشكل مستقل بالكامل عبر خط أنابيب معياري من 4 مراحل. هكذا يعمل:
الهيكلية التي بنيتها
المرحلة 1: الجمع (Lambda مجدولة عند منتصف الليل بتوقيت دمشق)
- يتصل بأكثر من 30 قناة رسمية للحكومة السورية على تلغرام
- يسحب جميع المنشورات خلال آخر 24 ساعة
- يستخرج محتوى المقالات من الروابط المرفقة
- يرفع البيانات الخام إلى S3
المرحلة 2: التلخيص (Lambda تعمل عند اكتمال المرحلة 1)
- تُفعَّل تلقائياً عند انتهاء المرحلة 1 عبر S3 + EventBridge
- تعالج عدداً غير محدود من الأخبار على دفعات ذكية (حتى 30 طلباً متوازياً × 20 مادة لكل طلب)
- ينشئ الذكاء الاصطناعي ملخصات ثنائية اللغة مع التزام القواعد النحوية بالعربية
- يصنف المحتوى ضمن 19 فئة مع نسب ثقة
- يخزن البيانات المُلخصة في S3
المرحلة 3: إزالة التكرار (Lambda تعمل عند اكتمال المرحلة 2)
- تُفعَّل تلقائياً عند انتهاء المرحلة 2
- تعطي الأولوية لأهم 100 مادة وفق نظام ترجيح
- يدمج الذكاء الاصطناعي الأخبار المكررة بذكاء مع الحفاظ على جميع المصادر والفئات
- يخرج بيانات خالية من التكرار إلى S3
المرحلة 4: النشر (Lambda مزدوجة تعمل عند اكتمال المرحلة 3)
- تعمل وظيفتان (بالعربية والإنكليزية) بشكل متزامن
- تجلب لافتات (Banners) مهيأة مسبقاً لكل فئة من S3
- تضيف التاريخ بشكل ديناميكي على الصور
- تنسق الرسائل لتلغرام مع HTML
- تنشر تلقائياً في القنوات
ما يجعل هذا مثيراً تقنياً
- مرونة تعدد مزودي الذكاء الاصطناعي: النظام يعمل مع نماذج OpenAI وAnthropic، مما يجعله مرناً ويتيح تحسين التكلفة والأداء.
- معالجة عربية متخصصة: يدير الذكاء الاصطناعي البنى اللغوية العربية المعقدة ويحافظ على السياق الثقافي ويستخدم قاموس مصطلحات خاص بالمصطلحات الحكومية السورية.
- تصميم بلا خوادم مدفوع بالأحداث: كل مرحلة تُشغِّل التالية تلقائياً عبر EventBridge + S3، مما ينتج خط عمل مستقل بلا توقف.
- تحسين الموارد بذكاء: بنية Lambda معيارية – ثلاث وظائف معالجة ثقيلة على x86 مع 1GB RAM، ووظيفتان خفيفتان للنشر على ARM64 مع 512MB RAM.
سحر الذكاء الاصطناعي: كيف جعلته يعمل مع العربية
أحد أكبر التحديات كان جعل الذكاء الاصطناعي يتعامل مع المحتوى العربي بشكل يحافظ على الجودة الصحفية. إليك ما تعلمته:
معالجة منظمة
أستخدم TypeScript مع مخططات Zod لضمان أن مخرجات الذكاء الاصطناعي دائماً منظمة. كل خبر يتم التحقق منه وفق:
- ملخص عربي بالقواعد الصحيحة (فعل-فاعل-مفعول)
- ترجمة إنكليزية مع الحفاظ على السياق الثقافي
- تصنيف ضمن الفئات مع نسب ثقة مجموعها 100%
- توثيق المصدر للشفافية
إزالة التكرار بذكاء
- تحليل حتى 100 خبر مهم بحثاً عن التشابه
- دمج الأخبار المكررة مع الحفاظ على جميع المصادر
- إعادة حساب الفئات ونسب الثقة
- إنتاج ملخصات شاملة تجمع أفضل التفاصيل
إطار ترجمة مخصص
بنيت نظام مصطلحات خاص لضمان الترجمة المتسقة للمصطلحات السورية – مثلاً واجه الذكاء الاصطناعي صعوبة مع اختصار «قسد»، فأضفته للنظام.
إنشاء لافتات عربية/إنكليزية جميلة برمجياً
التوليد البصري الديناميكي
- 19 قالباً خاصاً بالفئات (سياسة، اقتصاد، صحة…)
- تصاميم ثنائية اللغة: تخطيطات خاصة بالعربية RTL والإنكليزية LTR
- كشف ذكي للفئة: يحدد القالب البصري الأكثر ملاءمة يومياً
- معالجة SVG إلى PNG باستخدام Sharp.js لتوليد صور عالية الجودة على Lambda
تحديات الطباعة العربية
- اتجاه النص من اليمين لليسار
- الحاجة لمكتبات خطوط خاصة بالعربية
- التفاف النص يختلف عن اللاتيني
- دعم نص ثنائي الاتجاه
الدروس المستفادة والقرارات الهندسية
بناء للموثوقية
- دعم مزودين متعددين: يمكن اختيار OpenAI أو Anthropic
- تحقق شامل: كل مخرجات الذكاء الاصطناعي يتم التحقق منها عبر Zod
الأداء وتخفيض التكلفة
- خط أنابيب 4 مراحل: كل مرحلة مستقلة وقابلة للتوسع والفشل الآمن
- معالجة متوازية: حتى 30 طلباً متزامناً، 20 مادة لكل طلب، مما يقلل الوقت والكلفة
- S3 كقائمة رسائل: يزيل الحاجة لرسائل معقدة ويضيف إعادة محاولة تلقائية
- ذاكرة تخزين ذكية أثناء التطوير: لتجنب تكرار الاستدعاءات
تجربة التطوير
- TypeScript حديثة مع اختبارات شاملة
- بيئة محلية كاملة عبر SAM
- البنية التحتية ككود (SAM Templates)
- اختبارات بـ Vitest
- أمان الأنواع End-to-End باستخدام Zod
النتائج والأثر
ما يقدمه النظام يومياً
- تغطية شاملة: جميع القنوات الحكومية في مكان واحد
- إتاحة ثنائية اللغة: بالعربية والإنكليزية للوصول العالمي
- أولوية ذكية: إبراز الأمن والدفاع والرئاسة والسياسة الخارجية أولاً
- عرض احترافي: لافتات وصور منسقة
- أتمتة موثوقة: تعمل كل ليلة بلا تدخل بشري
الأداء التقني
- فعالية في التكلفة: تصميم مختلط x86/ARM64 لتقليل التكلفة
- قابلية توسع عالية: كل مرحلة مستقلة، يسهل إضافة لغات أو مناطق أخرى
- سرعة المعالجة: إكمال الدورة اليومية في أقل من 5 دقائق بغض النظر عن الحجم
- مرونة: خط أنابيب مبني على S3 يعزل الأعطال ويدعم إعادة المحاولة
لماذا يهم هذا المشروع
علّمني هذا المشروع أن قوة الذكاء الاصطناعي الحقيقية ليست في استبدال البشر، بل في تعزيز وصولهم للمعلومات.
بتنظيم العمل الممل المتمثل في المراقبة والترجمة والتجميع، يجعل «التقرير اليومي عن سوريا» التطورات الحكومية أكثر إتاحة للمواطنين السوريين وللمهتمين بفهم وضع البلاد.
التحدي التقني كان شيقاً: خط أنابيب معياري بأربع مراحل، معالجة متوازية، إزالة تكرار، تعدد مزودين، توليد صور، وبنية بلا خوادم.
والأثر ملموس: تحويل التشتت إلى ملخصات يومية منظمة ومفيدة.
🔗 المشروع مفتوح المصدر! تجدون الكود والوثائق هنا: https://github.com/MuazOthman/sy-daily
💡 هل تود المساهمة؟ أرحب بالمساعدة في دعم لغات إضافية، تحسين موثوقية الذكاء الاصطناعي، وتحسين الأداء.
بُني باستخدام: TypeScript • AWS Lambda • OpenAI/Anthropic • Sharp.js • Telegram APIs
الخطوات التالية
رغم أن النظام يعمل بكامل طاقته، هناك تحسينات مخططة:
- موثوقية محسنة: آلية انتقال تلقائي بين OpenAI/Anthropic/Gemini
- توزيع متعدد المنصات: التوسع من تلغرام إلى فيسبوك للوصول الأوسع
- امتيازات تشغيلية: جمع مقاييس شاملة ولوحات مراقبة وتنبيه آلي
ما رأيك في استخدام الذكاء الاصطناعي لتحسين الوصول إلى المعلومات؟ يهمني سماع تجاربك مع تحديات مشابهة!