لقد أثارت الويب الدلالي اهتمامي منذ فترة طويلة. أصبحت فكرة تحويل الويب إلى قاعدة بيانات مفهومة يمكن للذكاء الاصطناعي الوصول إليها أساسًا لاستكشافاتي المستمرة. كانت فكرة إنشاء نظام تنبيه ذكي، وهو حارس رقمي يحرس فوضى المعلومات على الإنترنت، أحد التطبيقات التي أثارت فضولي باستمرار. تخيل روبوتًا يجوب محيط الويب الشاسع دون توقف، لينبهك إلى وقوع حدث معين، على سبيل المثال، إصدار كتاب جديد. هذا هو الحلم الذي كنت أطارده منذ سنوات.
لقد أثار ظهور وكلاء مستقلين مثل AutoGPT وBabyAGI اهتمامي. تمثل هذه الأنظمة اتجاهًا جديدًا واعدًا لتكنولوجيا الذكاء الاصطناعي. قررت تجربة هذه الأدوات، على أمل تحقيق حلمي بنظام تنبيه ذكي. ومع ذلك، فقد خفت حماستي بسرعة. هذه الأنظمة، رغم تقدمها، تعمل بالتركيز على الهدف وتقسيمه لاحقًا إلى خطوات. وهذا بعيد كل البعد عن نظام المراقبة المستمر واليقظ الذي تصورته. ومما أثار خيبة أملي أنني وجدت أن هندستهم المعمارية غير مناسبة لمثل هذه المهمة. يمكنك جعلها تعمل في بعض الأحيان ولكن ليس بشكل موثوق.
لقد أشعلت أوجه القصور في النماذج الحالية الشرارة لبناء شيء جديد. قررت إنشاء نظامي الخاص، نظام من الوكلاء المستقلين الذين يحركهم الحدث. أنا أسميها WhenX.
هدف النظام هو إنشاء تنبيهات على شكل "عندما يحدث X، قم بـ Y". في هذا الإصدار الأولي، ندعم فقط تنبيهات البريد الإلكتروني في شكل "عندما يحدث X، أرسل لي تقريرًا عبر البريد الإلكتروني".
يتكون النظام من أربعة عملاء: القبطان، والكشاف، والحارس، والجندي.
الكابتن هو قائد هذه الأوركسترا. نظرًا للمهمة، فهو مسؤول عن تجميع فريق من العملاء - الكشافة والحارس والجندي.
يعمل الكشاف كمستكشف، فهو الشخص الذي يشرع في البحث عن المعلومات ذات الصلة، ويخلق "ملاحظات" طوال رحلته. هذه الملاحظات هي المواد الخام الأساسية التي تغذي نظام WhenX.
يقوم الحارس ، حارس البوابة، بفحص آخر ملاحظات N التي أجراها الكشاف. وهو كيان مميز، مصمم لتحديد التغييرات، مهما كانت دقيقة، في بيانات المراقبة. عندما يكتشف شيئًا جديرًا بالملاحظة، فإنه يطلق "إنذارًا"، مما يشير إلى الجندي بالتحرك.
ينطلق الجندي ، المنفذ، إلى العمل عند تلقي الإنذارات من الحارس. فهو ينفذ التعليمات بناءً على الإنذارات، وصياغة "تقرير" يتضمن التغيير أو الحدث المكتشف.
$ poetry install
$ poetry run alembic upgrade head
انسخ ملف .env.example إلى .env واملأ القيم. نحن نستخدم خدمة إعادة الإرسال لإرسال رسائل البريد الإلكتروني. يمكنك إنشاء حساب مجاني واستخدامه للاختبار.
هدف النظام هو إنشاء تنبيهات على شكل "عندما يحدث X" ثم "أرسل لي تقريرًا". في هذا الإصدار الأولي، ندعم فقط تنبيهات البريد الإلكتروني.
أولا نحن بحاجة إلى إنشاء مهمة. المهمة هي وصف للتنبيه. على سبيل المثال، "عندما يصدر هاروكي موراكامي كتابًا جديدًا".
$ python -m whenx create --mission " when Haruki Murakami releases a new book. "
سيبدأ النظام في العمل وسيقوم بإنشاء ملاحظة جديدة كل يوم. الملاحظة هي لقطة للحالة الحالية لاستعلامك. سيقوم النظام بمقارنة آخر ملاحظتين وإذا اكتشف تغييرًا، فسوف يرسل بريدًا إلكترونيًا مع التقرير.
$ python -m whenx monitor
يمكنك سرد كافة التنبيهات وحالتها.
$ python -m whenx list
يمكنك حذف التنبيه من خلال معرفه.
$ python -m whenx delete --id a5dc910a-4457-4911-8ba3-c7713588e7ff