اتصل بنا للحصول على مزيد من المعلومات

Microsoft AutoGen: سير عمل الذكاء الاصطناعي متعدد الوكلاء مع الأتمتة المتقدمة

الذكاء الاصطناعي

Microsoft AutoGen: سير عمل الذكاء الاصطناعي متعدد الوكلاء مع الأتمتة المتقدمة

mm
ذكاء مايكروسوفت أوتوجين

تم تقديم أبحاث مايكروسوفت إنشاء تلقائي في سبتمبر 2023 كإطار عمل مفتوح المصدر بلغة بايثون لبناء وكلاء الذكاء الاصطناعي القادرين على التعاون المعقد بين الوكلاء المتعددين. اكتسب AutoGen بالفعل زخمًا بين الباحثين والمطورين والمنظمات، مع أكثر من 290 مساهمًا على GitHub جيثب: وحوالي 900,000 عملية تنزيل اعتبارًا من مايو 2024. وبناءً على هذا النجاح، كشفت Microsoft عن AutoGen Studio، وهي واجهة منخفضة التعليمات البرمجية تمكن المطورين من إنشاء النماذج الأولية والتجربة بسرعة باستخدام وكلاء الذكاء الاصطناعي.

تُستخدم هذه المكتبة لتطوير وكلاء أذكياء ومرنين يمكنهم التفاعل بسلاسة لحل المهام المعقدة وأتمتة عملية اتخاذ القرار وتنفيذ التعليمات البرمجية بكفاءة.

كما قدمت مايكروسوفت مؤخرًا استوديو أوتوجين يعمل AutoGen Studio على تبسيط تطوير وكلاء الذكاء الاصطناعي من خلال توفير منصة تفاعلية وسهلة الاستخدام. وعلى عكس سابقتها، يقلل AutoGen Studio من الحاجة إلى الترميز المكثف، حيث يوفر واجهة مستخدم رسومية (GUI) حيث يمكن للمستخدمين سحب وإفلات الوكلاء وتكوين سير العمل واختبار الحلول التي تعتمد على الذكاء الاصطناعي دون عناء.

ما الذي يجعل AutoGen فريدًا؟

فهم وكلاء الذكاء الاصطناعي

في سياق الذكاء الاصطناعي، يعد العميل مكونًا برمجيًا مستقلًا قادرًا على أداء مهام محددة، وغالبًا ما يستخدم معالجة اللغة الطبيعية والتعلم الآلي. يعمل إطار عمل AutoGen من Microsoft على تعزيز قدرات عملاء الذكاء الاصطناعي التقليديين، مما يمكنهم من المشاركة في محادثات معقدة ومنظمة وحتى التعاون مع عملاء آخرين لتحقيق أهداف مشتركة.

يدعم AutoGen مجموعة واسعة من أنواع الوكلاء وأنماط المحادثة. يتيح هذا التنوع له أتمتة سير العمل التي كانت تتطلب في السابق تدخلاً بشريًا، مما يجعله مثاليًا للتطبيقات في مختلف الصناعات مثل التمويل والإعلان وهندسة البرمجيات والمزيد.

وكلاء محادثة وقابلين للتخصيص

يقدم AutoGen مفهوم الوكلاء "القابلين للمحادثة"، والذين تم تصميمهم لمعالجة الرسائل وتوليد الاستجابات وتنفيذ الإجراءات بناءً على تعليمات اللغة الطبيعية. لا يتمتع هؤلاء الوكلاء بالقدرة على المشاركة في حوارات غنية فحسب، بل يمكن أيضًا تخصيصهم لتحسين أدائهم في مهام محددة. يجعل هذا التصميم المعياري AutoGen أداة قوية لكل من مشاريع الذكاء الاصطناعي البسيطة والمعقدة.

أنواع الوكلاء الرئيسيين:

  • وكيل مساعد:مساعد حاصل على درجة الماجستير في القانون يمكنه التعامل مع مهام مثل الترميز أو تصحيح الأخطاء أو الإجابة على الاستفسارات المعقدة.
  • وكيل وكيل المستخدم:يحاكي سلوك المستخدم، مما يتيح للمطورين اختبار التفاعلات دون إشراك مستخدم بشري فعلي. كما يمكنه تنفيذ التعليمات البرمجية بشكل مستقل.
  • وكلاء الدردشة الجماعية:مجموعة من الوكلاء الذين يعملون بشكل تعاوني، وهي مثالية للمواقف التي تتطلب مهارات أو وجهات نظر متعددة.

التعاون بين عدة وكلاء

من أكثر ميزات AutoGen إثارة للإعجاب هو دعمه لـ التعاون بين عدة وكلاءيمكن للمطورين إنشاء شبكة من الوكلاء، كل منهم له أدوار متخصصة، لمعالجة المهام المعقدة بكفاءة أكبر. يمكن لهؤلاء الوكلاء التواصل مع بعضهم البعض وتبادل المعلومات واتخاذ القرارات بشكل جماعي، مما يؤدي إلى تبسيط العمليات التي قد تستغرق وقتًا طويلاً أو تكون عرضة للأخطاء.

الميزات الأساسية لـ AutoGen

1. إطار عمل متعدد الوكلاء

يُسهِّل AutoGen إنشاء شبكات وكلاء حيث يمكن لكل وكيل العمل بشكل مستقل أو بالتنسيق مع آخرين. يوفر الإطار المرونة لتصميم سير عمل مستقلة تمامًا أو تتضمن إشرافًا بشريًا عند الضرورة.

تتضمن أنماط المحادثة ما يلي:

  • محادثات فردية:تفاعلات بسيطة بين عميلين.
  • الهياكل الهرمية:يمكن للوكلاء تفويض المهام إلى وكلاء فرعيين، مما يجعل التعامل مع المشكلات المعقدة أسهل.
  • المحادثات الجماعية:محادثات جماعية متعددة الوكلاء حيث يتعاون الوكلاء لحل مهمة.

2. تنفيذ التعليمات البرمجية وأتمتتها

على عكس العديد من أطر عمل الذكاء الاصطناعي، يسمح AutoGen للوكلاء بإنشاء وتنفيذ وتصحيح أخطاء التعليمات البرمجية تلقائيًا. هذه الميزة لا تقدر بثمن لمهام هندسة البرمجيات وتحليل البيانات، حيث تقلل من التدخل البشري وتسرع دورات التطوير. يمكن لوكيل الوكيل تحديد كتل التعليمات البرمجية القابلة للتنفيذ وتشغيلها وحتى تحسين الناتج بشكل مستقل.

3. التكامل مع الأدوات وواجهات برمجة التطبيقات

يمكن لوكلاء AutoGen التفاعل مع الأدوات والخدمات وواجهات برمجة التطبيقات الخارجية، مما يؤدي إلى توسيع قدراتهم بشكل كبير. سواء كان الأمر يتعلق بجلب البيانات من قاعدة بيانات أو تقديم طلبات ويب أو التكامل مع خدمات Azure، فإن AutoGen يوفر نظامًا بيئيًا قويًا لبناء تطبيقات غنية بالميزات.

4. حل المشكلات من خلال مشاركة الإنسان

في السيناريوهات التي يكون فيها الإدخال البشري ضروريًا، يدعم AutoGen التفاعلات بين الإنسان والوكيليمكن للمطورين تكوين الوكلاء لطلب التوجيه أو الموافقة من مستخدم بشري قبل الشروع في مهام معينة. تضمن هذه الميزة اتخاذ القرارات الحاسمة بعناية وبمستوى الإشراف المناسب.

كيف يعمل AutoGen: نظرة متعمقة

تهيئة الوكيل وتكوينه

تتضمن الخطوة الأولى في العمل مع AutoGen إعداد وتكوين الوكلاء لديك. يمكن تخصيص كل وكيل لأداء مهام محددة، ويمكن للمطورين تخصيص المعلمات مثل نموذج LLM المستخدم والمهارات الممكنة وبيئة التنفيذ.

تنظيم تفاعلات الوكلاء

يتعامل AutoGen مع تدفق المحادثة بين الوكلاء بطريقة منظمة. قد يبدو سير العمل النموذجي على النحو التالي:

  1. مقدمة المهمة:يقدم المستخدم أو الوكيل استعلامًا أو مهمة.
  2. معالجة الوكيل:يقوم الوكلاء ذوو الصلة بتحليل المدخلات أو إنشاء الاستجابات أو تنفيذ الإجراءات.
  3. التواصل بين الوكلاء:يتشارك الوكلاء البيانات والرؤى، ويتعاونون لإكمال المهمة.
  4. تنفيذ المهمة:يقوم الوكلاء بتنفيذ التعليمات البرمجية أو جلب المعلومات أو التفاعل مع الأنظمة الخارجية حسب الحاجة.
  5. الإنهاء:تنتهي المحادثة عند اكتمال المهمة، أو الوصول إلى حد الخطأ، أو تشغيل حالة الإنهاء.

معالجة الأخطاء وتحسين الذات

تم تصميم وكلاء AutoGen للتعامل مع الأخطاء بذكاء. إذا فشلت مهمة أو أنتجت نتيجة غير صحيحة، يمكن للوكيل تحليل المشكلة ومحاولة إصلاحها وحتى تكرار الحل. تعد هذه القدرة على الإصلاح الذاتي أمرًا بالغ الأهمية لإنشاء أنظمة ذكاء اصطناعي موثوقة يمكنها العمل بشكل مستقل لفترات طويلة.

المتطلبات الأساسية والتثبيت

قبل العمل مع AutoGen، تأكد من فهمك العميق لعوامل الذكاء الاصطناعي، وأطر التنسيق، وأساسيات برمجة بايثون. AutoGen هو إطار عمل قائم على بايثون، وتتحقق إمكاناته الكاملة عند دمجه مع خدمات ذكاء اصطناعي أخرى، مثل نماذج GPT من OpenAI أو Microsoft Azure AI.

تثبيت AutoGen باستخدام pip:

pip install pyautogen

للحصول على ميزات إضافية، مثل إمكانيات البحث المُحسّنة أو التكامل مع المكتبات الخارجية:

pip install "pyautogen[blendsearch]"

إعداد بيئتك

يتطلب AutoGen منك تكوين متغيرات البيئة ومفاتيح واجهة برمجة التطبيقات بشكل آمن. دعنا نستعرض الخطوات الأساسية اللازمة لتهيئة مساحة العمل وتكوينها:

  1. تحميل متغيرات البيئة: قم بتخزين مفاتيح API الحساسة في .env الملف وتحميلها باستخدام dotenv للحفاظ على الأمان. (api_key = os.environ.get("OPENAI_API_KEY"))
  2. اختيار تكوين نموذج اللغة الخاص بك: حدد برنامج LLM الذي ستستخدمه، مثل GPT-4 من OpenAI أو أي نموذج مفضل آخر. يجب تحديد إعدادات التكوين مثل نقاط نهاية واجهة برمجة التطبيقات وأسماء النماذج والمفاتيح بوضوح لتمكين الاتصال السلس بين الوكلاء.

إنشاء وكلاء AutoGen للسيناريوهات المعقدة

لبناء نظام متعدد الوكلاء، تحتاج إلى تعريف الوكلاء وتحديد كيفية تصرفهم. يدعم AutoGen أنواعًا مختلفة من الوكلاء، ولكل منهم أدوار وقدرات مميزة.

إنشاء وكلاء مساعدين ووكلاء مستخدمين: قم بتعريف الوكلاء باستخدام تكوينات متطورة لتنفيذ التعليمات البرمجية وإدارة تفاعلات المستخدم:

from autogen import AssistantAgent, UserProxyAgent

# Define LLM configurations
llm_config = {
    "model": "gpt-4",
    "api_key": api_key
}

# Create an Assistant Agent for complex coding and analysis tasks
assistant = AssistantAgent(
    name="coding_assistant",
    llm_config=llm_config
)

# User Proxy Agent to handle user interactions and code execution
user_proxy = UserProxyAgent(
    name="user_proxy",
    code_execution_config={
        "executor": autogen.coding.LocalCommandLineCodeExecutor(work_dir="coding_workspace")
    }
)

  1. المثال 1: تحليل البيانات المعقدة وتصورها تخيل أنك بحاجة إلى أتمتة مهمة حيث يقوم وكيل الذكاء الاصطناعي بجلب البيانات المالية وإجراء التحليل الإحصائي وتصور النتائج. إليك كيف يمكن لـ AutoGen تسهيل ذلك:
    • سير العمل:تتمثل مهمة الوكيل المساعد في استرجاع أسعار الأسهم التاريخية، وحساب مقاييس الأداء الرئيسية، وإنشاء المخططات المرئية.
    • تدفق التنفيذ:يقوم وكيل الوكيل للمستخدم بمراجعة وتنفيذ الكود الذي تم إنشاؤه بواسطة الوكيل المساعد.
  2. المثال 2: مساعد بحث آلي للأوراق الأكاديمية في السيناريو الذي تحتاج فيه إلى مساعد لتلخيص أوراق البحث، يمكن لوكلاء AutoGen التعاون بكفاءة لتحقيق ذلك:
    • استرجاع البحوث:يقوم أحد الوكلاء بجلب الأوراق الأكاديمية ذات الصلة وتحليلها باستخدام تقنيات كشط الويب.
    • تلخيص:يقوم وكيل آخر بتلخيص النتائج الرئيسية وإنشاء نظرة عامة موجزة.
    • إدارة الاقتباسات:يقوم الوكيل المساعد بإدارة الاستشهادات وتنسيق المراجع.

تنفيذ التعاون بين وكلاء متعددين

تكمن قوة AutoGen في قدرتها على تنسيق العديد من الوكلاء لإكمال المهام المترابطة. دعنا نستكشف سيناريو حيث ننفذ نموذج المعلم-الطالب-المقيّم:

  1. وكيل المعلم:يقدم تفسيرات وإرشادات حول موضوع معين.
  2. وكيل الطالب:يطرح الأسئلة ويؤدي التمارين لتعزيز الفهم.
  3. وكيل التقييم:مراجعة عمل الطالب وتقديم الملاحظات.

يمكن استخدام هذا النموذج لأغراض تعليمية، حيث يتفاعل العملاء بشكل مستقل لتسهيل التعلم.

مثال التهيئة:

from autogen import AssistantAgent, UserProxyAgent

# Define agents for the educational workflow
teacher = AssistantAgent(name="teacher", llm_config=llm_config)
student = AssistantAgent(name="student", llm_config=llm_config)
evaluator = AssistantAgent(name="evaluator", llm_config=llm_config)

# Define the conversation flow among agents
teacher.send_message("Today's topic is calculus. Let's dive into differential equations.")
student.send_message("Can you explain the concept of a derivative?")
teacher.send_message("A derivative represents the rate of change of a function. Here's a simple explanation...")

المفاهيم المتقدمة: تنفيذ المهام وتوليد التعليمات البرمجية

يدعم AutoGen تنفيذ تدفقات عمل معقدة حيث لا يقوم الوكلاء بإنشاء التعليمات البرمجية فحسب، بل يقومون أيضًا بتشغيلها وتصحيح أخطائها. فكر في حالة يتعاون فيها الوكلاء في مهام تطوير البرامج:

  1. سيناريو:تحتاج إلى أتمتة عملية إنشاء التعليمات البرمجية واختبارها وتصحيح أخطائها لمشروع برمجي.
  2. أدوار الوكلاء:
    • وكيل مولد التعليمات البرمجية:يكتب الكود بناءً على المواصفات التي يوفرها المستخدم.
    • وكيل الاختبار:يتم تشغيل اختبارات آلية للتحقق من صحة الكود الناتج.
    • وكيل التصحيح:يحدد المشكلات ويصلحها بشكل مستقل.

مثال على تدفق التنفيذ:

  1. يكتب وكيل مولد التعليمات البرمجية كود Python لتنفيذ ميزة ما.
  2. يقوم وكيل الاختبار بتشغيل اختبارات الوحدة والإبلاغ عن الأخطاء إن وجدت.
  3. يقوم وكيل التصحيح بتحليل الأخطاء وتحسين الكود وإعادة تشغيل الاختبارات حتى يجتاز الكود.

تعمل هذه الدورة الآلية على تقليل وقت التطوير وتعزيز موثوقية الكود.

معالجة الأخطاء والتحسين المستمر

يأتي AutoGen مزودًا بآليات قوية للتعامل مع الأخطاء. يمكن برمجة الوكلاء لتشخيص المشكلات أو إعادة محاولة تنفيذ المهام أو طلب التدخل البشري عند الحاجة. تضمن هذه القدرة على التحسين الذاتي إمكانية تنفيذ حتى سير العمل المعقد بسلاسة بمرور الوقت.

مثال: سير عمل الشفاء الذاتي

  • إذا واجه العميل خطأ في تنفيذ التعليمات البرمجية، فيمكنه:
    • تحليل سجل الأخطاء.
    • قم بتعديل الكود لإصلاح المشكلة.
    • أعد تنفيذ المهمة للتحقق من التصحيح.

يجعل هذا النهج التكراري من AutoGen أداة قوية للمواقف التي تكون فيها الموثوقية والدقة أمرًا بالغ الأهمية.

إمكانات AutoGen

تعطيل أدوات الأتمتة التقليدية

إن نهج AutoGen في أتمتة سير العمل من خلال التعاون بين الوكلاء يمثل تحسنًا كبيرًا مقارنة بأتمتة العمليات الروبوتية التقليدية (RPA). من خلال الاستفادة من LLMs وتقنيات الذكاء الاصطناعي المتقدمة، يمكن لـ AutoGen التعامل مع المهام الأكثر تعقيدًا والتكيف مع البيئات الديناميكية بكفاءة أكبر من روبوتات RPA الثابتة.

دور AutoGen في استراتيجيات السحابة الأصلية

تم تصميم وكلاء AutoGen للعمل بدون جنسية في حاويات، مما يجعلها مثالية للنشر في بيئات سحابية أصلية. تتيح هذه القدرة التوسع السلس، حيث يمكن للمؤسسات نشر آلاف الوكلاء المتطابقين للتعامل مع أحمال العمل المتنوعة.

المقارنة مع الأطر الأخرى

على الرغم من وجود العديد من أطر العمل متعددة الوكلاء في السوق، فإن التكامل السلس لـ AutoGen مع النظام البيئي الخاص بـ Microsoft (Azure وMicrosoft 365 وما إلى ذلك) يمنحه ميزة مميزة. يسمح هذا التكامل بسير عمل أكثر تماسكًا، خاصة للمؤسسات المضمنة بالفعل في بيئة Microsoft.

التحديات والاعتبارات

على الرغم من أن AutoGen وAutoGen Studio يقدمان أدوات قوية لتطوير الذكاء الاصطناعي، إلا أن هناك تحديات يجب مراعاتها:

  • الأمن والحماية:إن تشغيل وكلاء مستقلين قادرين على تنفيذ التعليمات البرمجية ينطوي على مخاطر متأصلة. ويتعين على المطورين تنفيذ تدابير أمنية قوية لمنع الإجراءات غير المصرح بها.
  • التوسعة:على الرغم من أن AutoGen مصمم للأنظمة الموزعة، فإن توسيع نطاق التطبيق باستخدام آلاف الوكلاء قد يتطلب الكثير من الموارد وقد يتطلب تخطيطًا دقيقًا للبنية الأساسية.
  • مخاوف أخلاقية:كما هو الحال مع أي تقنية للذكاء الاصطناعي، هناك اعتبارات أخلاقية، وخاصة عند نشر وكلاء يتفاعلون بشكل مستقل مع الجمهور.

خاتمة

يفتح إطار عمل AutoGen طرقًا جديدة لبناء أنظمة ذكية متعددة الوكلاء. إن قدرته على أتمتة سير العمل المعقدة والمجتمع القوي وتنفيذ التعليمات البرمجية وتسهيل التعاون السلس بين الوكلاء يميزه عن أطر عمل الذكاء الاصطناعي الأخرى.

 

لقد أمضيت السنوات الخمس الماضية منغمسًا في عالم رائع من التعلم الآلي والتعلم العميق. قادني شغفي وخبرتي إلى المساهمة في أكثر من 50 مشروعًا متنوعًا لهندسة البرمجيات ، مع التركيز بشكل خاص على الذكاء الاصطناعي / التعلم الآلي. جذبني فضولي المستمر أيضًا نحو معالجة اللغة الطبيعية ، وهو مجال أتوق لاستكشافه بشكل أكبر.