في هذا البرنامج التعليمي، ستعمل على بناء نظام متعدد الوكلاء محليًا بالكامل من خلال IBM Granite باستخدام BeeAI في Python. سيتعاون هؤلاء الوكلاء للتفاوض على اتفاقية تعاقدية لخدمات تنسيق الحدائق بين شركتين، مع مراعاة توجهات السوق وقيود الميزانية الداخلية. سيتكون سير العمل من وكيل مستشار الميزانية، ووكيل إنشاء العقود، ووكيل البحث على الويب، ووكيل مستشار المشتريات. بناءً على العقد وبيانات الميزانية وصناعة الخدمات وأسماء الشركات المقدَّمة من المستخدم، يتعاون الوكلاء لإعداد بريد إلكتروني للتفاوض على شروط العقد لصالح العميل.
BeeAI، الذي أصدرته IBM Research وتم التبرع به الآن لمؤسسة Linux، هو منصة مفتوحة المصدر للذكاء الاصطناعي الوكيل توفِّر للمطورين القدرة على بناء وكلاء الذكاء الاصطناعي من أي إطار عمل.1
يُشير وكيل الذكاء الاصطناعي (AI) إلى نظام أو برنامج تم إنشاؤه باستخدام نموذج لغوي كبير (LLM) لأداء المهام بشكل مستقل نيابةً عن مستخدم أو نظام آخر من خلال تصميم سير العمل الخاص به واستخدام الأدوات المتاحة. يُعَد وكلاء الذكاء الاصطناعي أكثر تقدمًا من روبوتات المحادثة المدعومة بنماذج LLM التقليدية، حيث يمكنهم الوصول إلى أدوات محددة مسبقًا والتخطيط للإجراءات المستقبلية ولا يحتاجون إلى أي تدخل بشري لحل المشكلات المعقدة وأتمتتها.
السلف التقني لـ BeeAI هو Bee Agent Framework، وهو إطار عمل مفتوح المصدر مخصص لبناء وكلاء LLM فرديين. وعلى العكس من ذلك، يوفر BeeAI نظامًا بيئيًا أكثر تقدمًا لبناء وتنظيم مهام سير العمل متعددة الوكلاء.
يتميز BeeAI بأنه:
يمكن العثور على هذا الدليل التفصيلي خطوة بخطوة في مستودعنا على GitHub على شكل Jupyter Notebook.
نحتاج أولًا إلى إعداد بيئتنا من خلال استيفاء بعض المتطلبات الأساسية.
1. في هذا البرنامج التعليمي، لن نستخدم واجهة برمجة التطبيقات (API) مثل تلك المتوفرة من خلال IBM watsonx.ai وOpenAI. بدلًا من ذلك، يمكننا تثبيت أحدث إصدار من Ollama لتشغيل النموذج محليًا.
إن أبسط طريقة لتثبيت Ollama لأنظمة التشغيل macOS وLinux وWindows هي من خلال صفحة الويب الخاصة بهم: https://ollama.com/download. ستعمل هذه الخطوة على تثبيت تطبيق شريط القوائم لتشغيل خادم Ollama في الخلفية وإبقائك مطلعًا دومًا على أحدث الإصدارات.
كبديل، يمكنك تثبيت Ollama باستخدام أداة Homebrew من خلال المحطة الطرفية لديك:
في حالة التثبيت من brew، أو البناء من المصدر، تحتاج إلى تشغيل الخادم المركزي:
2. هناك العديد من النماذج اللغوية الكبيرة التي تدعم استدعاء الأدوات، مثل أحدث نماذج Llama من Meta ونماذج Mistral من Mistral AI. في هذا البرنامج التعليمي، سنستخدم نموذج Granite 3.3 مفتوح المصدر من IBM. يتميز هذا النموذج بقدرات استدلال متقدمة واتباع التعليمات.3 يمكنك تنزيل أحدث إصدار من نموذج من Granite 3.3 عن طريق تشغيل الأمر التالي في المحطة الطرفية.
3. لتجنُّب تعارض تبعيات الحزم، سنعمل على إعداد بيئة افتراضية. لإنشاء بيئة افتراضية باستخدام Python الإصدار 3.11.9، شغِّل الأمر التالي في المحطة الطرفية لديك.
بعد ذلك، لتنشيط البيئة، شغِّل:
4. يجب أن يحتوي ملف
لتثبيت هذه الحزم، نفِّذ الأمر التالي في المحطة الطرفية لديك.
5. إنشاء ملف Python جديد بعنوان
في الجزء العلوي من ملف Python الجديد، قم بتضمين عبارات الاستيراد للمكتبات والوحدات الضرورية.
في دالة رئيسية غير متزامنة باستخدام
للاطلاع على تمثيل مرئي لسير العمل الوكيلي، راجِع المخطط التالي.
سنعمل على تجميع كل عنصر من عناصر سير العمل هذا في الخطوات التالية.
يعتمد سير العمل لدينا على إدخال المستخدم. الإدخالات الأولية المطلوبة هي أسماء كلٍّ من العميل والشركات المتعاقدة. سيظهر للمستخدم النص التالي عند تنفيذ سير العمل في خطوة لاحقة. أضِف الكود التالي إلى الدالة الرئيسية.
سنحتاج أيضًا إلى أسماء الملفات التي تحتوي على تقرير ميزانية شركة العميل،
في الكود التالي، نتحقق أيضًا من امتدادات الملفات لضمان توافقها مع التنسيق المتوقع. إذا كان أيٌّ من الملفين من نوع غير صحيح، فسيُطلب من المستخدم المحاولة مرة أخرى.
آخر إدخال مطلوب من المستخدم هو قطاع الخدمة الموضَّحة في العقد. يمكن أن يكون هذا الإدخال متعلقًا بالمالية، أو البناء، أو غيرها.
الأداة الأولى التي يمكننا تطويرها في النظام متعدد الوكلاء هي وكيل مستشار الميزانية. هذا الوكيل مسؤول عن قراءة بيانات ميزانية العميل. الدالة المقدَّمة للوكيل هي
الآن، لنعمل على إعداد القوة الدافعة للوكيل، وهي دالة
لضمان الاستخدام الصحيح لهذه الأداة، لنستخدم فئة
باستخدام LangChainTool، محوِّل LangChain من BeeAI، يمكننا إتمام تهيئة أداتنا الأولى.
الأداة التالية التي يمكننا إنشاؤها هي وكيل إنشاء العقود. هذا الوكيل مسؤول عن قراءة العقد بين العميل والمقاول. الدالة المقدَّمة للوكيل هي
في هذه الخطوة، يمكننا إضافة الوكلاء المختلفين إلى سير العمل الخاص بنا. دعنا نزوِّد وكيل مستشار الميزانية ووكيل تجميع العقود بالأدوات المخصصة المقابلة. يمكننا أيضًا تعيين اسم الوكيل ودوره وتعليماته وقائمة الأدوات والنموذج اللغوي الكبير.
للبحث في الويب عن توجهات السوق في الصناعة ذات الصلة، يمكننا إنشاء وكيل لديه إمكانية الوصول إلى أداة LangChain الجاهزة،
الوكيل الرابع والأخير في نظامنا متعدد الوكلاء هو مستشار المشتريات . هذا الوكيل مسؤول عن استخدام المعلومات التي تم استرجاعها وتجميعها من قِبَل الوكلاء الآخرين لصياغة رسالة بريد إلكتروني مقنعة إلى الشركة المتعاقدة لصالح العميل. يجب أن يأخذ البريد الإلكتروني في الاعتبار توجهات السوق وقيود الميزانية الداخلية للعميل للتفاوض على شروط العقد. هذا الوكيل لا يحتاج إلى أي أدوات خارجية، بل يتم توجيهه بواسطة تعليماته فقط.
يمكننا الآن إنهاء الطريقة الرئيسية بجميع الأكواد التي كتبناها حتى الآن. في نهاية الطريقة الرئيسية، يمكننا تضمين تنفيذ سير العمل الخاص بالوكيل. وباستخدام الكلمة المفتاحية
للاطِّلاع على نموذج العقد وبيانات الميزانية بالإضافة إلى الكود النهائي، يمكنك زيارة مستودع GitHub. لتنفيذ المشروع، يمكننا تشغيل الأمر التالي في المحطة الطرفية الخاصة بنا.
استخدِم نموذج إدخال المستخدم هذا:
يوضِّح النص التالي مثالًا على المخرجات التي حصلنا عليها من تشغيل سير العمل متعدد الوكلاء.
المخرجات:
→ تم إكمال خطوة "مستشار الميزانية" بالنتيجة التالية.
تُظهر ميزانية الشركة أ للفترة وجود فرق إجمالي قدره -12,700 دولار أمريكي. أكبر الفروقات كانت في رواتب الموظفين (-5,000 دولار أمريكي)، والإعلانات عبر الإنترنت (-3,000 دولار أمريكي)، والإعلانات المطبوعة (-2,000 دولار أمريكي)، وأعمال الصيانة والإصلاحات (-1,000 دولار أمريكي). كما توجد فروقات أصغر في الإيجار والكهرباء والمياه والتنسيق والبستنة وخدمات النظافة. → تم إكمال خطوة "أداة تجميع العقود" بالنتيجة التالية.
العقد بين الشركة أ والشركة ب مخصص لخدمات تنسيق الحدائق في ممتلكات العميل في ولاية ديلاوير. ويبلغ مجموع الدفعة التي يتعين على الشركة أ دفعها 5,500 دولار أمريكي عند الانتهاء من العمل. اتفق الطرفان على الامتثال للقوانين واللوائح المعمول بها في ولاية ديلاوير.
→ تم إكمال خطوة "البحث على الويب" بالنتيجة التالية.
الموضوع: مقترح تفاوض لخدمات تنسيق الحدائق
فريق الشركة ب العزيز،
نأمل أن تصلكم رسالتنا وأنتم بخير.
بعد مراجعة دقيقة لبيانات ميزانيتنا الداخلية وتوجهات السوق في صناعة تنسيق الحدائق، حددنا المجالات التي نرى إمكانية إجراء تعديلات فيها لتحقيق توافق أفضل مع قيودنا المالية، مع الاستمرار في الحفاظ على معايير الخدمة العالية.
نطاق العمل: نقترح تقليل نطاق العمل ليتركز على الخدمات الأساسية التي تؤثِّر مباشرةً في جاذبية المبنى وقيمة العقار. قد يشمل ذلك تقليم الأشجار، وتشذيب الشجيرات، وصيانة المسطحات الخضراء، مع إضافة بعض النباتات الملونة من حين لآخر لتعزيز الجاذبية البصرية.
شروط الدفع: نظرًا لتوجهات السوق الحالية التي تُشير إلى انخفاض طفيف في تكاليف تنسيق الحدائق نتيجة زيادة المنافسة، نرجو منكم إعادة النظر في إجمالي مبلغ الدفع. نقترح دفع إجمالي معدَّل قدره 4,800 دولار أمريكي عند الانتهاء من العمل، بما يعكس تخفيضًا بنسبة 12%.
الجدول الزمني: لتحسين تخصيص الموارد وتقليل تعطيل عملياتنا إلى الحد الأدنى، نقترح تمديد الجدول الزمني للمشروع لمدة أسبوعين. سيُتيح لنا هذا التعديل إدارة قيود ميزانيتنا الداخلية بشكل أفضل دون المساس بجودة الخدمة.
نعتقد أن هذه التعديلات ستمكِّن كِلا الطرفين من تحقيق نتيجة متبادلة المنفعة مع الالتزام بالقوانين واللوائح المعمول بها في ولاية ديلاوير. نقدِّر تفهمكم، ونحن منفتحون لمزيد من المناقشات للتوصل إلى اتفاق يتماشى مع توجهات السوق الحالية وقيود ميزانيتنا الداخلية.
نشكركم على اهتمامكم بهذا الموضوع. يُرجى إعلامنا إذا كانت هذه التعديلات المقترحة مقبولة، أو إذا كانت لديكم أي مقترحات بديلة.
مع أطيب التحيات،
[اسمك]
الشركة أ
→ تم إكمال خطوة "مستشار المشتريات" بالنتيجة التالية.
تم إرسال الإجابة النهائية إلى الشركة ب، مقترحين فيها دفع إجمالي معدَّل قدره 4,800 دولار أمريكي عند إتمام العمل، بما يعكس تخفيضًا بنسبة 12%. يشمل الاقتراح أيضًا تقليل نطاق العمل وتمديد الجدول الزمني للمشروع.
الرسالة الإلكترونية النهائية: تم إرسال الإجابة النهائية إلى الشركة ب، مقترحين فيها دفع إجمالي معدَّل قدره 4,800 دولار أمريكي عند إتمام العمل، بما يعكس تخفيضًا بنسبة 12%. يشمل الاقتراح أيضًا تقليل نطاق العمل وتمديد الجدول الزمني للمشروع.
من الواضح أن الوكلاء استخدموا أدواتهم المتاحة بشكل صحيح لقراءة وتجميع بيانات العقد والميزانية، ثم صياغة رسالة بريد إلكتروني فعَّالة يتم فيها التفاوض على شروط العقد لصالح العميل. يمكننا الاطلاع على مخرجات كل وكيل داخل سير العمل وعلى أهمية دور كل وكيل. تم تسليط الضوء في رسالة البريد الإلكتروني على التفاصيل الأساسية مثل نطاق أعمال تنسيق الحدائق، وشروط الدفع، والجدول الزمني للعقد. كما يمكننا ملاحظة أن التفاوض يستفيد أيضًا من توجهات السوق في مجال تنسيق الحدائق لصالح العميل. أخيرًا، يقع المبلغ الإجمالي المعدَّل المقترح في البريد الإلكتروني وقدره 4,800 دولار أمريكي ضمن ميزانية العميل لأعمال تنسيق الحدائق البالغة 5,200 دولار أمريكي. هذا يبدو رائعًا!
من خلال هذا البرنامج التعليمي، تمكَّنت من بناء العديد من وكلاء BeeAI، كل منهم بأدوات مخصصة. أدى كل وكيل دورًا مهمًا في حالة استخدام نظام إدارة العقود. يمكن أن تتضمن بعض الخطوات التالية استكشاف مستودعات GitHub المختلفة المتاحة في مجموعة i-am-bee GitHub وبناء المزيد من الأدوات المخصصة. في المستودعات، ستجد أيضًا دفاتر ملاحظات Python التمهيدية لفهم عناصر BeeAI الأساسية بشكل أفضل، مثل
تمكين المطورين من إنشاء وكلاء الذكاء الاصطناعي ونشرهم ومراقبتهم باستخدام استوديو IBM watsonx.ai.
حقِّق إنتاجية غير مسبوقة مع مجموعة من أكثر الحلول تكاملًا في القطاع لمساعدة الأعمال على بناء وتخصيص وإدارة وكلاء ومساعدي الذكاء الاصطناعي.
تحقيق وفورات في التكاليف تزيد على 90% باستخدام نماذج Granite الصغيرة والمفتوحة المصممة لتعزيز كفاءة المطوِّرين. تقدِّم هذه النماذج الجاهزة للمؤسسات أداءً استثنائيًا في معايير الأمان، وتتفوق في مجموعة واسعة من المهام المؤسسية من الأمن الإلكتروني إلى التوليد المعزز بالاسترجاع (RAG).