مع تقدم تطبيقات الagent نحو التعقيد، يحتاج المطورون إلى التعامل مع استدعاء الأدوات والوصول إلى المعرفة والمديرية الحالة والتعاون بين الagent متعددة. إذا كانت هذه الوظائف يتم تطويرها من الصفر، فإنها تستهلك وقتًا كبيرًا، وسيكون التنسيق بين الوحدات المختلفة والتوازن التنفيذي أكثر تعقيدًا.
إطار العمل للagent يُحَدِّث هذه الخصائص الشائعة، ويوفر طريقة تنفيذ موحدة لتنمية تطبيقات الagent. التالي هو شرح لعدة إطار العمل الممثلة لتنمية تطبيقات الagent.
تم إطلاق LangChain في عام 2022، وهو إطار عمل مفتوح المصدر من أوائل الأطر المستخدمة لبناء تطبيقات للنماذج الكبيرة. في البداية، كان LangChain مخصصًا لتنظيم النماذج الكبيرة، والكلمات الدالة والبيانات الخارجية. لاحقًا، تم توسيعه تدريجيًا لتشمل استدعاء الأدوات والagent. حاليًا، تم تحديد الagent كجزء مهم من إطار العمل، ويعرض وحدات النموذج والادوات والوحدة الوسيطة، ويمكن استخدامها لبناء agent قادر على استدعاء الأدوات بسرعة.
طريقة التنفيذ الأساسية لـ LangChain هي تشكيل دورة بين النموذج الكبير والأدوات. يُستقبل النموذج الكبير المهام المستلمة من المستخدم والادوات المتاحة، ويحلل المعلومات الحالية لتحديد ما إذا كان ينبغي توليد النتيجة مباشرة، أم استدعاء أداة معينة. إذا كان يختار استدعاء أداة، فإن إطار العمل يقوم بتشغيل الأداة المقابلة، ثم يقدم نتيجة الأداة إلى النموذج الكبير. يحدد النموذج الكبير بناءً على المعلومات الجديدة ما إذا كان لا يزال هناك حاجة لاستدعاء الأدوات، حتى لا يوجد حاجة للاستدعاء وتوليد النتيجة النهائية. يسمي الرسم البياني الرسمي هذه العملية "Agent Loop"، ويمثلها الشكل التالي.
مثال: يمكن تعيين مساعد سفر بادوات استعلام الطقس، استعلام الخريطة، والبحث على الإنترنت. عندما يطرح المستخدم "ساعدني في تنظيم رحلة يومية في هانغتشو غداً"، يمكن للنموذج الكبير تحديد أن الهدف هو استعلام الطقس والمعالم السياحية، واستدعاء الأدوات المقابلة للحصول على النتائج، ثم تلاوة هذه النتائج لإكمال التخطيط للرحلة.
تُعد الأدوات وسيلة أساسية لاستخدام القدرات الخارجية، وهي ببساطة وظائف قابلة للتعديل مع إدخال وخرج محدد، ويمكن استخدامها لاسترجاع البيانات الحالية، وتطبيق التعليمات البرمجية، واختيار قواعد البيانات أو تشغيل أنظمة خارجية. بعد تقديم الأدوات المطلوبة إلى الagent، يمكن للنموذج الكبير تحديد متى يجب استدعاء أي أداة، وما هي المُعلمات التي يجب تقديمها عند استدعاءها.
هذا النمط التكاملي هو ميزة أساسية لـ LangChain. يوفر لـ LangChain واجهات متسقة نسبيًا لعدة النماذج والأدوات، يمكن للمطورين دمج هذه المكونات في نفس الإطار، دون التعامل بشكل فردي مع منطق استدعاء بين النماذج المختلفة والقدرات الخارجية. لذلك، فإنه مناسب جدًا لبناء agent قادر على استدعاء الأدوات بسرعة، ويعتبر مناسب جدًا للمبتدئين لفهم عملية تشغيل الagent الأساسية.
تم إطلاق LlamaIndex في عام 2022، وهو في البداية مصمم لحل مشكلة الاتصال بين النماذج الكبيرة والبيانات الخارجية. يوفر لنا القدرات لتسريع البيانات، وإنشاء المُؤشِّر، والبحث والتحقق من البيانات الخارجية، ويُمكنه إدخال البيانات الخارجية مثل المستندات التجارية، وقواعد البيانات في تطبيقات النماذج الكبيرة. بناءً على هذا، تم إضافة إمكانيات الagent وWorkflow إلى LlamaIndex تدريجيًا، مما يسمح لـ agent باستخدام هذه البيانات لإنجاز مهام أكثر تعقيدًا.
تسجيل الدخول للانضمام إلى النقاش
النماذج الكبيرة نفسها لا تُعرف المعلومات الخارجية مثل مستندات المنتجات داخل الشركة، وبيانات الأعمال، وقواعد البيانات. عندما يحتاج الagent إلى استخدام هذه البيانات لإنجاز المهمة، يجب أن يجد المعلومات المتعلقة بالأمر الحالي. يمكن لـ LlamaIndex تحميل البيانات الخارجية، وتنظيمها وإدخالها، ثم استخدام وحدات Retriever وQuery Engine للبحث والتحقق منها. يمكن للـ Query Engine أن يستقبل أسئلة لغوية طبيعية، ويبحث عن المعلومات المتعلقة في المُؤشِّر، ويمكن أيضًا إغلاقه كأداة يمكن للagent استدعاؤها. كما يظهر الشكل التالي، بعد استلام الagent لمهمة من المستخدم، يمكنه اختيار الأدوات الاستعلامية المناسبة للحصول على المعلومات، ثم تحليلها بواسطة النموذج الكبير وإنشاء النتيجة النهائية. من خلال هذه الطريقة، لا يُمكن إدخال جميع البيانات الخارجية بشكل مباشر في سياق، بل يمكن استدعاء واستخدام البيانات المتعلقة بالمهمة حسب الحاجة.

مثال: يمكن تعيين agent لإدارة الأعمال لإعداد أداة استعلام عن مستندات المنتجات وبيانات الأعمال. عندما يطلب المستخدم مقارنة بين وظائف منتجين، فإن الagent يستدعي أداة استعلام عن المعلومات المتعلقة بالمستندات. إذا سأل المستخدم عن حالة البيع والشراء، فإنه يستدعي أداة استعلام عن البيانات التجارية. في حالات الأداء المعقدة، يمكن للagent استدعاء عدة أدوات استعلامية متتالية، ثم جمع نتائج مختلفة من مصادر بيانات مختلفة لإنجاز المهمة.
لم يكن LlamaIndex في البداية مصممًا خصيصًا لتطوير الagent، وتميزت ميزاته في معالجة البيانات والمعرفة. يمكنه ليس فقط إدخال النماذج الكبيرة في المستندات، بل يمكنه أيضًا تنظيم قدرات مختلفة للبيانات والبحث التي يمكن للagent الاختيار منها واستخدامها. يُناسب الميزات المذكورة أعلاه لاستخدامات مثل استفسارات الميزة، التحليل الوثائق، الاستعلام من مصادر بيانات متعددة، وكذلك تطبيقات الagent التي تحتاج إلى الوصول إلى مستندات الشركة الكبيرة، والمكتبات والمعلومات المُفكَّكة.
تم إطلاق AutoGen من قبل فريق البحث في Microsoft في عام 2023، وهو إطار عمل مفتوح المصدر ممثل في مجال تطوير الagent المتعدد. يركز على فكرة "المحادثة بين الagent المتعدد" (Multi-Agent Conversation) كفكرة أساسية، مما يسمح لعدة agent أن يتعاونوا من خلال المحادثات المشتركة لإنجاز المهمة.
يُصمم الagent في AutoGen كوحدات قابلية للمحادثة وقابلة للتخصيص، يمكن أن يكون الagent مصممًا من قبل النموذج الكبير، أو الأدوات، أو الإدخال البشري، أو مزيج من هذه الخصائص. يمكن للمطورين أيضًا تحديد طرق تفاعل بين الagent، مما يسمح لعدة agent أن يصبحوا في أنماط محادثة مختلفة. كما يظهر الشكل التالي، يُمثل هذا التصميم.

يُظهر هذا الشكل فكرتين رئيسيتين في تصميم AutoGen. الأولى، يمكن أن تكون لكل agent القدرات المختلفة. الثانية، يمكن أن يتم تنظيم عدة agent عبر أنماط المحادثة المختلفة (Conversation Pattern) لتنسيق التفاعل والتعاون.
مثال: في مهمة تطوير البرمجيات، يمكن تحديد agent واحد لتحليل متطلبات المهمة، وagent آخر لإنشاء التعليمات البرمجية، وagent ثالث لمراجعة النتيجة. بعد إنشاء agent البرمجة، يرسل النتيجة إلى agent المراجعة؛ إذا كانت هناك مشكلة، يمكن للagent المراجعة إعادتها إلى agent البرمجة لتحسينها حتى تُمثل المهمة.
تمثل حاليًا AutoGen القدرات الرئيسية في المستويات AgentChat وCore. AgentChat هو واجهة علوية لتشكيل تطبيقات single-agent ومتعددة-agent، وتوفر وحدات مثل Agent وTeam. يمكن للمطورين دمج عدة agent في Team، ويعملون معًا باستخدام طرق مثل التحدث بالتناوب أو اختيار agent التالي بشكل ديناميكي. Core يستخدم نموذج التحكم بالحدث، ويوفر القدرات الأساسية المتقدمة والمتوسطة للنظام المتعدد لagent.
ميزة AutoGen هي التركيز على التواصل والتعاون بين الagent في تصميم الإطار. يُناسب المهمات المعقدة التي تحتاج إلى تقسيم المهام بين عدة agent. النظام المتعدد لagent يحتاج إلى تصميم إضافي لاختصاصات الagent والتعاون، بينما لمهمات بسيطة لا يوجد داعي لاستخدام عدة agent.
يُركز CrewAI على التعاون بين الagent المتعدد، ولكنه يستخدم بنية أكثر تشبه للفرق الحقيقية. يمكن للمطورين تحديد أدوار، وأهداف، وأدوات مختلفة لكل agent، ثم تنظيم هذه الagent من خلال المهام والنماذج لإنجاز العمل.
يقدم CrewAI طريقتين أساسيتين لتنظيم الagent: Crews و Flows. تُركز Crews على التعاون المستقلي بين عدة agent، بينما تُركز Flows على التحكم في النموذج المنظم.
يشير الشكل الرسمي للإطار الذي يقدمه CrewAI إلى:


في Crew، يمكن أن يُفهم الagent على أنه عضو في الفريق لديه مسؤولية محددة، ويُمثل Task مهمة محددة يجب إنجازها، ويُحدد Process طريقة تنفيذ الagent والTask، ويُ組織 Crew هذه الagent والمهام لإنجاز الهدف النهائي.
مثال: لإنجاز تقرير صناعي، يمكن إنشاء agent للبحث، وagent للكتابة، وagent للمراجعة. يقوم agent البحث بترجمة وترتيب المعلومات، يقوم agent الكتابة بإنشاء التقرير بناءً على النتائج، ويقوم agent المراجعة بتحقق من المشاكل في التقرير. يتحمل كل agent مسؤولية مختلفة، ويقوم بتنسيق المهام بينها لإنجاز العمل بأكمله.
يمكن للFlow تنظيم تنفيذ المهام بنموذج محدد مسبقًا، ويعطي دعمًا للاستجابات الشرطية، والخوارزميات المتكررة، والمديرية الحالة. يمكن أن يتم استخدام Crew و Flow معًا، على سبيل المثال، استخدام Flow لتحكم في عملية الأعمال الكاملة، وفي خطوة معقدة معقدة، يمكن أن يتم استدعاء Crew لإنجاز المهمة بواسطة عدة agent.
ميزة CrewAI هي تنظيم التعاون بين الagent المتعدد من خلال الأدوار والمهام والفرق، ويُناسب تصميمه بشكل أقرب إلى التخصصات الحقيقية في الفريق. يُناسب تطبيقات الagent المتعدد التي تحتاج إلى تحديد حدود الأدوار والمهام بوضوح، مثل البحث، وتوليد المحتوى، والتحليل البيانات والمراجعة.
تم إطلاق LangGraph من قبل فريق LangChain في عام 2024، وهو إطار عمل لتنظيم وإدارة agent ذات حالة طويلة الأمد والمعقدين. بدلاً من استخدام agent مُنشئ مسبقًا، يسمح لـ LangGraph للمطورين بتحديد بنية تنفيذ agent بوضوح، وهو مناسب بشكل خاص لagent تحتوي على حالة، وفرagma، دورات متكررة، ووصول بشري.
يمكن للـ LangGraph بناء Workflow بسيط، كما يمكنه بناء agent يحدد خطوة التالية بواسطة النموذج الكبير. Workflow يمكن أن يتم تحديد مسار تنفيذ المهام مسبقًا، ويمكن تنظيم خطوات مختلفة بشكل تسلسلي، وعمودي، ووصولي، ودورات متكررة. يمكن للagent أن يحدد الخطوة التالية بناءً على الحالة الحالية والنتائج التي تعود من الأدوات.
في الممارسة العملية، يمكن أن يتم استخدام Workflow و agent معًا، حيث يحدد Workflow مسار التنفيذ العام، ويعمل agent على حل الأجزاء التي تحتاج إلى اتخاذ قرارات ديناميكية.
يظهر الشكل التالي نموذج Workflow و agent الذي يدعمه LangGraph.

لتحقيق هذه الطرق التنفيذ المختلفة، يستخدم LangGraph الشكل لوصف عملية تنفيذ المهام، حيث الثلاثة مفاهيم الأساسية هي State و Node و Edge. State تستخدم لتحفظ المعلومات التي يجب مشاركتها خلال تنفيذ المهام؛ Node يمثل خطوة معينة من العمليات، مثل استدعاء النموذج الكبير، أو البحث عن المعرفة، أو تنفيذ الأدوات؛ Edge تصل بين النودات المختلفة، وتمثل كيفية وصول المهام إلى النود التالية.
مثال: يمكن أن يبدأ agent للأسئلة والجوابات بتحليل سؤال المستخدم، ثم البحث عن المعرفة، والإنشاء والتحقق من النتائج. إذا لم تمر النتيجة التقييمية، يمكن للagent أن يعيد الدخول إلى نود البحث من خلال فرagma الشرطي؛ إذا كانت النتيجة تمر، فإنه يدخل إلى نود النتيجة النهائية. خلال هذه العملية، يمكن حفظ سؤال المستخدم، والنتائج البحثية، والنتائج الوسطية، والبيانات الأخرى في State، وتمت مشاركتها بين النود المختلفة.
هذا النمط مختلف تمامًا عن الاعتماد على النموذج الكبير فقط لاتخاذ القرار التالي. يسمح لـ LangGraph بتحديد بنية التنفيذ العامة للمهمة مسبقًا، وفي النود التي تحتاج إلى اتخاذ قرار، يمكن استخدام النموذج الكبير لاتخاذ قرار. بهذه الطريقة، يُحافظ على قدرة agent على اتخاذ قرارات ديناميكية بناءً على الوضع الحقيقي، كما يمكن التحكم في مسارات التنفيذ الرئيسية.
بالإضافة إلى بنية الشكل والتحكم في الحالة، يوفر LangGraph القدرات مثل Durable Execution و Human-in-the-loop. يمكن أن يتم حفظ حالة المهام الطويلة الأمد، وتواصل التنفيذ بعد انقطاع، وفي عمليات مهمة، يمكن أن يتم إيقاف agent، وانتظار التحقق البشري أو تعديل الحالة قبل استئناف التنفيذ. لذلك، يتم تصنيف الرسم البياني الرسمي لـ LangGraph كإطار عمل لتنظيم وإنشاء agent ذات حالة طويلة الأمد.
يمتلك LangGraph القدرة على التحكم في الحالة ومسارات التنفيذ بتركيزات دقيقة، ولكنه يتطلب من المطورين تصميمات أكثر تعقيدًا. لا يوجد داعي في البداية لبناء بنية الشكل المعقدة للagent الذي يستدعي الأدوات بسهولة. يوصي الرسم البياني الرسمي لـ LangGraph، إذا كنت قد بدأت لتعلم agent أو تحتاج إلى إطار عمل أعلى لagent، يمكنك البدء من إطار عمل agent في LangChain.
هو إطار عمل لagent مفتوح المصدر من مجتمع ModelScope، وهو مصمم بشكل أساسي لإنجاز المهام التي تحتاج إلى استكشاف مستقلة ومتعددة الخطوات، ويعرض القدرات لاستدعاء النموذج، ووصول الأدوات، والتعاون بين الagent، ويمكن استخدامها لبناء تطبيقات مثل البحث العميق، تحليل المستندات، وتوليد التعليمات البرمجية.
المكون الأساسي لـ MS-Agent هو LLMAgent، وهو يُسَمِّي تنظيم المحادثة بين النموذج الكبير والأدوات. يمكن للمطورين تحديد النموذج، والكلمات الدالة، والأدوات من خلال ملف الإعداد. بعد استلام مهمة المستخدم، يقدم LLMAgent المهام مع الأدوات المتاحة للنموذج الكبير، ويحل النموذج الكبير ما إذا كان يجب استدعاء أداة. إذا كان هناك حاجة لاستدعاء أداة، يقوم الإطار بتشغيلها، ثم يقدم النتائج إلى النموذج الكبير لإكمال العملية، حتى يُولد النموذج الكبير ردًا لا يحتوي على استدعاءات أداة، أو وصل إلى عدد دورات التشغيل المحدد.
يظهر الشكل التالي عملية تشغيل الأساسية لـ LLMAgent. بعد إعداد الagent وتمهيد الرسائل، يتم دورة متكررة بين استدعاء النموذج الكبير والأدوات، وفي الحالات المناسبة، يمكن أن يتم إضغط على سياق النموذج. في الشكل، تمثل cb الاستدعاءات، حيث يمكن للمطورين إضافة تسجيل الأحداث أو معالجات خاصة في هذه المراحل.

وصول الأدوات هو ميزة مهمة في MS-Agent. يوفر الإطار أدوات مُبنيًا داخلًا مثل قراءة والكتابة على الملفات، وتطبيق التعليمات البرمجية، وتقسيم المهام، ويعرض وصولًا خارجيًا عبر MCP (Model Context Protocol، وسيط سياق النموذج). يمكن للمطورين تكرار استخدام الخدمات MCP الموجودة مسبقًا، أو كتابة أدوات مخصصة، مما يسمح للagent بالوصول إلى البيانات والأنظمة الخارجية المطلوبة للمهمة.
للمهام التي تحتاج إلى تعاون متعدد الخطوات، يُسمح لـ MS-Agent باستخدام Workflow لتنظيم الagent المختلفة. يُسْتَعْمَل LLMAgent المسؤول عن المهام التي تحتاج إلى تحليل النموذج الكبير والإنشاء، بينما يُسْتَعْمَل CodeAgent لتنفيذ العمليات المتعقدة بطريقة واضحة. يمكن أن يتم تنظيم تحليل المستندات، وتعالج البيانات، والإنشاء النهائي في workflow، وتمت تنظيم علاقات التنفيذ بين الخطوات من خلال ملف الإعداد.
مثال: في مشروع MS-Agent، يقدم Code Genesis مثالاً على التعاون بين الagent المتعدد لإنجاز إنشاء التعليمات البرمجية. يتم تقسيم العمل إلى قسمين: تصميم وتطوير، ومراجعة وتحسين. يقوم agent البنية بتصميم، ويقوم أداة تقسيم المهام بتحديد المهام لعدة agent برمجة؛ وبعد مرحلة التحسين، يمكن أن يتم تقسيم المهام المُعدَّلة بناءً على ملاحظات البناء أو التحقق البشري، ويقوم agent البرمجة بمعالجةها.

بجانب استخدام إطار العمل للagent، تقدم بعض شركات النماذج القدرات للagent عن طريق SDK (Software Development Kit، وحدة تطوير البرمجيات)، وتُحَدِّث هذه القدرات في شكل واجهات، وملفات ووحدات، مما يساعد المطورين في إنشاء وتشغيل agent في تطبيقاتهم الخاصة. يمكن استخدام إطار العمل للagent و SDK للagent لإنشاء agent، ولكن القدرات التي يقدمونها لديها بعض الاختلافات، فقط في بنية التنظيم والتركيز الرئيسي. التالي هو شرح لـ SDK للagent الممثلين.
أطلقت OpenAI SDK للagent في عام 2025، وهو يُشجع على بناء تطبيقات agent باستخدام عدد أقل من المفاهيم الأساسية. يُركز حول agent كوحدة تنفيذ أساسية، ويعرض واجهات للاستدعاء الأدوات، والتحويل للagent، والتشغيل القياسي، والتحقق من التنفيذ. Tools تستخدم لاستعلام البيانات، وتطبيق التعليمات البرمجية، واختيار واجهات API أو تشغيل أنظمة أخرى خارجية؛ Handoffs تسمح لagent الحالي بتحويل المهام إلى agent آخر أكثر ملاءمة لمعالجة المهام؛ Guardrails تحقق من الإدخال والخروج النهائي للagent، وكجزء من استدعاء الأدوات؛ Tracing تُسجِّل الأحداث التي تحدث خلال تنفيذ agent، مثل إنشاء النموذج، واستدعاء الأدوات، وHandoff و Guardrail.
يقدم SDK للagent من OpenAI القدرة على رؤية agent، بالإضافة إلى الagent التي يرتبط بها، وأدوات ومكتبات MCP Server في شكل شكل. يمكن أن يتم تمثيل الاتصال المتجه بين الagent بواسطة Handoff، بينما تمثل وصلات بين الأدوات والagent استدعاء الأدوات.

مثال: في نظام خدمة العملاء، يمكن أن يتم تعيين agent باب مدخل مسؤول عن التعرف على أسئلة المستخدم، ويمكن تعيين agent لطلب، وagent للإرجاع، وagent للFAQ لمعالجة أنواع مختلفة من الأعمال. عندما يطرح المستخدم سؤال حول الإرجاع، يمكن للagent الباب أن يُنقل المهام إلى agent الإرجاع. يُستدعي agent الإرجاع، ثم يقوم باستدعاء أدوات استعلام الطلبات، وطلب الإرجاع لإنجاز المهمة. Handoff خاصة بهذه الحالات التي يتم معالجتها بواسطة agent متخصص لكل مهمة.
تُعتبر Guardrails و Tracing مسألة مهمة لتحديد حدود وتحليل المشكلات في تشغيل agent. يمكن أن يتم التحقق من الإدخال، والخروج النهائي، وكجزء من استدعاء الأدوات المُخصصة قبل وبعد استدعاء الأدوات. يمكن أن يتم سجِّل Tracing للأحداث التي تحدث خلال تنفيذ agent، مثل إنشاء النموذج، واستدعاء الأدوات، وHandoff و Guardrail، مما يساعد المطورين على فهم الخطوات التي مر بها agent، وتمتلك المشكلة في أي مرحلة.
ميزة SDK للagent من OpenAI هي التركيز على مفاهيم متسقة. يمكن للمطورين البدء من agent واحد و Tools، ثم تضيفوا قدرات التعاون بين الagent المتعدد، وGuardrails و Tracing. في مقارنة مع LangGraph، يختلف تركيز التصميم: يركز LangGraph على التحكم الدقيق في الحالة والنموذج، بينما يركز SDK للagent من OpenAI على القدرات الشائعة مثل استدعاء الأدوات، والتحويل للagent، والتشغيل القياسي، والتحقق من التنفيذ.
يقدم SDK للagent من Claude (Anthropic) القدرة على بناء agent، وهو كان يُسمى Claude Code SDK في البداية، ثم تم تغيير اسمه إلى Claude Agent SDK. يُفتح القدرة على agent في Claude Code للمطورين، مما يسمح لهم ببناء agent في تطبيقاتهم الخاصة يستطيع استخدام الأدوات، الوصول إلى بيئة التشغيل، وتواصل دائم.
ميزة بارزة في SDK للagent من Claude هي التركيز على الوصول إلى بيئة التشغيل والتنفيذ للagent. بالإضافة إلى استدعاء الأدوات الخارجية، يوفر الأدوات المُبنيَّة داخلًا مثل قراءة الملفات، تعديل الملفات، وتطبيق الأوامر، مما يسمح للagent بالمعالجة المباشرة للملفات، وتشغيل البرامج، وتطبيق الأوامر، ويمكن الوصول إلى أدوات ومصادر خارجية أخرى عبر MCP. بالإضافة إلى ذلك، يقدم وصولًا إلى سيطرة الحقوق، Hooks و Subagents، وسيطرة الحقوق تُحدِّد ما إذا كان agent قادرًا على تنفيذ العمليات؛ Hooks يمكن أن يتم إدخال معالجات خاصة في مراحل مهمة مثل استدعاء الأدوات؛ Subagents يمكن أن يتم تسليم جزء من المهام إلى agent فرعي مستقل.
خلال عملية التنفيذ، يحدد agent ما إذا كان يجب قراءة الملفات، تعديل الكود، أو تطبيق الأوامر بناءً على المهمة الحالية والسياق. النتائج التي تعود من استدعاء الأدوات تُعيد إلى agent، ثم يستدعي agent بناءً على المعلومات الجديدة، حتى أنتهاء المهمة. يقوم SDK للagent من Claude بتنظيم هذه العملية، ويقوم بمعالجة استدعاء الأدوات، ومراجعة الحقوق، وتوصيل السياق.
مثال: في مهمة تطوير البرمجيات، يمكن أن يتم إعطاء agent قراءة الكود للпроект، وفقًا لمتطلبات المستخدم، تعديل الملفات، ثم تطبيق الاختبارات. إذا فشلت الاختبارات، يمكن للagent قراءة رسائل الخطأ وتمريرها إلى تعديل، حتى إنجاز المهمة. في هذه العملية، يتحمل النموذج الكبير فهم المهمة واتخاذ القرار التالي، بينما يقوم SDK للagent من Claude بمنح القدرات المتاحة للتشغيل، مثل نظام الملفات، وواجهة الت терمينال، والأدوات، ويتعامل مع سيطرة الحقوق وعمليات التنفيذ.
يُناسب SDK للagent من Claude تطبيقات agent التي تحتاج إلى الوصول إلى الملفات وبيئة التشغيل، واستدعاء الأدوات المتتالية وتنفيذ المهام المتعددة الخطوات، خاصة في تطبيقات تطوير البرمجيات والتحليلات التلقائية.
في الممارسة العملية، أصبحت القدرات المتعلقة ببيئة التشغيل، المديرية الحالة، سيطرة الحقوق، حالة المهمة، وردات الفعل بعد التنفيذ أكثر أهمية. كيفية تنظيم هذه القدرات حول النموذج الكبير، وتعديل عملية التنفيذ، أصبحت مشكلة مهمة في تصميم نظام agent، وهو ما يركز عليه Harness.
بما أن قدرة النماذج الكبيرة تتطور بشكل متزايد، تتحول مشكلات agent من "هل يمكن للنموذج الكبير إنجاز مهمة معينة" إلى "هل يمكن للنموذج الكبير إنجاز المهمة المستمرة والموثوق بها بشكل مستمر". في استجابة سؤال مباشر بسيط، يحتاج النموذج الكبير فقط إلى توليد النتيجة بناءً على الإدخال. لكن في المهام المعقدة مثل تطوير البرمجيات، والتحليل البيانات، والتطبيقات التلقائية، قد يحتاج agent إلى العمل لفترة طويلة بشكل مستمر، في خطوات متعددة، وينقسم المهمة، ويحدد الagent التالية بناءً على نتائج التنفيذ الفعلية. في هذه الحالة، لا يمكن للنموذج الكبير ذاته التنبؤ بإنجاز المهمة بشكل صحيح.
مثال: يمكن أن يكون agent للكود قادرًا على فهم بشكل صحيح