مع تطور مشهد وكلاء الذكاء الاصطناعي، تُشير بعض المؤسسات إلى وجود تردد في اعتماد هؤلاء الوكلاء المستقلين على نطاق واسع.1 وتشمل أبرز التحديات الحوكمة والأخلاقيات والتعاون بين الإنسان والذكاء الاصطناعي والنشر وقابلية التوسع. ومع ذلك، فإن بناء وكلاء ذكاء اصطناعي جديرين بالثقة لا يجب أن يكون معقدًا. وباستخدام IBM watsonx Orchestrate، يمكن معالجة هذه التحديات جميعها من خلال منصة واحدة. في هذا البرنامج التعليمي، ستتعرَّف على كيفية استخدام Langflow وwatsonx Orchestrate لإنشاء وكلاء مؤسسيين موثوق بهم وقابلين للتوسع.
يُعَد Langflow إطار عمل مفتوح المصدر يعتمد على Python لبناء وكلاء الذكاء الاصطناعي وتطبيقات الذكاء الاصطناعي الأخرى. وقد تم بناء Langflow في الأصل اعتمادًا على LangChain، وهو إطار العمل الأساسي الذي يستند إليه.أما LangGraph، وهو منصة أخرى ضمن المنظومة نفسها، فيُستخدم أيضًا لبناء الأنظمة الوكيلة بالاعتماد على بنى قائمة على الرسوم البيانية. وما يميز Langflow هو واجهته سهلة الاستخدام التي تعتمد على السحب والإفلات، حيث يمكن للمستخدمين ربط عناصر الوكيل لتصميم مهام سير عمل مخصصة أو البدء باستخدام القوالب الجاهزة. وكبديل لهذا النهج منخفض التعليمات البرمجية أو دون تعليمات برمجية، يمكن للمطورين إنشاء عناصر مخصصة ودمج تدفقات الوكلاء خطوة بخطوة داخل التعليمات البرمجية للتطبيقات الحالية باستخدام Langflow API. في هذا البرنامج التعليمي الخاص بإطار العمل Langflow، سنتعرَّف على كيفية بناء الوكلاء ونشرهم من خلال:
ويتوافق كلٌّ من هذين النهجين مع قسم مستقل ضمن هذا البرنامج التعليمي. ملاحظة، يمكنك أيضًا الوصول إلى هذا البرنامج التعليمي على GitHub.
لنبدأ!
يتطلب هذا البرنامج التعليمي ما يلي:
يُرجى ملاحظة أنه دون استيفاء هذه المتطلبات، لن يكون من الممكن تنفيذ هذا الدليل وإعادة تطبيق خطواته.
في الوحدة الطرفية (Terminal)، شغِّل الأمر التالي. سيُطلب منك تسجيل الدخول إلى حسابك في IBM Cloud باستخدام IBMid. إذا كان لديك عدة حسابات، فستحتاج إلى اختيار أحدها.
ملاحظة: هل تم رفض بيانات الاعتماد؟ قد تكون مستخدِمًا يعتمد على الهوية الاتحادية (Federated User). سجِّل الدخول مرة أخرى باستخدام الخيار
ستعرف أن عملية تسجيل الدخول تمت بنجاح عند ظهور مخرجات مشابهة لما يلي.
المخرجات:
ملاحظة: إذا لاحظت أن المنطقة غير صحيحة، فشغِّل الأمر
لعرض الموارد السحابية الخاصة بك، شغِّل الأمر
المخرجات:
بعد ذلك، حدِّد المورد المطلوب بتشغيل الأمر
يجب أن تكون المخرجات مشابهة لهذا المثال.
المخرجات:
باستخدام IBM Cloud Code Engine، يمكنك تشغيل أي عبء عمل قائم على الحاويات تقريبًا دون الحاجة إلى إدارة الخوادم أو البنية التحتية. وتدعم المنصة كل شيء، بدءًا من الخدمات المصغرة وتطبيقات الويب، ووصولًا إلى المهام الدفعية والوظائف القائمة على الأحداث. كما تُتيح إنشاء صور الحاويات مباشرةً من التعليمات البرمجية المصدر. ولأن جميع أحمال العمل تشترك في بيئة Kubernetes نفسها، فإنها تتكامل معًا بصورة طبيعية. وقد تم تصميم Code Engine ليُعفيك من إدارة البنية التحتية، حتى تتمكن من التركيز على تطوير التطبيقات. والخطوة التالية هي تثبيت Code Engine CLI. شغِّل الأمر التالي في الوحدة الطرفية (Terminal).
المخرجات:
رائع! الآن، لنحدِّد مشروعًا داخل Code Engine. ابدأ بعرض قائمة المشروعات من خلال تشغيل الأمر
المخرجات:
يجمع مشروع Code Engine عناصر مثل التطبيقات (Applications) والمهام (Jobs) وعمليات الإنشاء (Builds). ويُستخدم كوحدة لإدارة الموارد والتحكم في الوصول إلى هذه العناصر.إذا لم تكن لديك أي مشروعات نشطة في Code Engine، فشغِّل الأمر
لتحديد المشروع المطلوب، شغِّل الأمر
المخرجات:
ملاحظة: إذا واجهت خطأً في هذه الخطوة، فتأكد من أنك حدَّدت البيئة الصحيحة باستخدام الأمر
لاستخدام Langflow مع Code Engine CLI، شغِّل الأمر التالي.
قد يستغرق تنفيذ هذا الأمر عدة دقائق. لا تقاطع عملية التنفيذ، واترك الأمر حتى يكتمل.
المخرجات:
أثناء تنفيذ أمر إعداد Langflow، يمكننا إضافة بيئة للاتصال بكلٍ من جهازنا المحلي والحل المستضاف بصيغة SaaS.
في وحدة طرفية (Terminal) جديدة، فعِّل بيئة افتراضية داخل الدليل الذي اختَرته. يمكنك تغيير
فعِّل البيئة الافتراضية باستخدام الأمر التالي، واستبدِل
نظام التشغيل macOS/Linux:
نظام التشغيل Windows:
الآن، من خلال المتصفح الذي تفضله، انتقِل إلى قائمة الموارد في IBM Cloud، ثم وسِّع القائمة المنسدلة AI/Machine Learning وحدِّد مورد wxO النشط. سيكون اسمه مشابهًا لـ "Watson Orchestrate-itz"، على سبيل المثال. بعد ذلك، انسخ عنوان URL الموجود في نافذة Credentials. اترك هذه الصفحة مفتوحة في المتصفح، لأنك ستحتاج إليها بعد قليل. في الأمر التالي، استبدل
المخرجات:
عندما يُطلب منك إدخال مفتاح واجهة برمجة التطبيقات wxO، عُد إلى صفحة المورد المفتوحة في المتصفح.لا تُدخل مفتاح API الموجود أعلى عنوان URL الذي نسخته. بدلًا من ذلك، انقر على زر Launch watsonx Orchestrate. بعد ذلك، انقر على الأيقونة الدائرية التي تحمل الأحرف الأولى من اسمك في الزاوية العلوية اليمنى من الشاشة، ثم افتح Settings. انتقل إلى علامة التبويب API details، ثم انقر على زر Generate API key. بعد ذلك، أدخِل أي اسم ووصف لمفتاح API، ثم اختَر "Disable the leaked key" في قسم "Leaked action". والأهم من ذلك، اختَر "Yes" في قسم "Session management" لتمكين إدارة الجلسات (Session Management) لعمليات تسجيل الدخول عبر CLI، ثم انقر على "Create". سيظهر مفتاح API الخاص بك. انسخ المفتاح وألصِقه في الوحدة الطرفية (Terminal) التي كنت تستخدمها قبل قليل لتلبية طلب إدخال wxO API Key.
المخرجات:
رائع! أصبح Langflow الآن نشطًا.
لإنشاء بيئة Code Engine مستقرة لا تحذف تطبيق Langflow بعد انتهاء مهلة زمنية محددة، افتح المتصفح مرة أخرى. انتقِل إلى صفحة نظرة عامة على الحاويات في IBM Cloud. ستجد مشروع Code Engine الذي أنشأته مؤخرًا ظاهرًا في القائمة. افتح المشروع. ثم افتح تطبيق Langflow. من علامة التبويب Configuration، افتح قسم Resources and scaling. التغيير الوحيد المطلوب هنا هو زيادة الحد الأدنى لعدد المثيلات من 0 إلى 1. وأخيرًا، انقر على زر Deploy لتطبيق هذا التعديل على الإعدادات.
بعد إكمال هذه الخطوة، انقر على زر Test application، ثم انقر على رابط Application URL. سيؤدي ذلك إلى فتح نسخة Langflow المستضافة على IBM Cloud.
هناك العديد من الطرق لإنشاء Langflow Flow. يمكنك استخدام القوالب الجاهزة أو إنشاء تدفق خاص بك من البداية. وفي هذا البرنامج التعليمي، سنستخدم الخيار الثاني. للبدء، انقر على Blank Flow +. يوضح هذا المثال أحد التدفقات التي يمكنك إنشاؤها، ولكن لا تتردد في استكشاف المجموعة الكبيرة من العناصر وعمليات التكامل المدمجة في Langflow.
Chat Input – يستقبل مدخلات المستخدم من واجهة الدردشة.
Chat Output – يعرض ناتج التدفق للمستخدم في واجهة الدردشة.
Agent – يستخدم تكاملًا مع نموذج لغوي كبير (LLM) للرد على مدخلات المستخدم، ويمكن ربطه بعدة أدوات.2
MCP Tools – يتصل بخادم Model Context Protocol (MCP) ويُتيح وظائفه كأدوات يمكن للوكلاء استخدامها للاستجابة لمدخلات المستخدم.2
IBM watsonx.ai- يوفر إمكانية الوصول إلى نماذج IBM watsonx.ai لتوليد النصوص.3
News Search – يجلب محتوى Google News ويُنشئ DataFrame منظمًا يتضمن عنوان كل مقال ورابطه وتاريخ نشره وملخصه.4
arXiv - يبحث في arXiv.org عن الأوراق البحثية ذات الصلة ويعرض النتائج بتنسيق DataFrame.5
وأخيرًا، اختَر New Custom Component + من أسفل القائمة.
ولتسهيل عرض التدفق، رتِّب مكوناته كما يلي.
2. صِل عنصر Chat Input بحقل "Input" في عنصر Agent.
3. صِل عنصر Chat Output بحقل "Response" في عنصر Agent.
4. في عنصر Agent، اضبط "Model Provider" على "Custom" من القائمة المنسدلة. قد يظهر لك الخيار "Connect other models" بدلًا من ذلك، وذلك حسب إصدار Langflow الذي تستخدمه. وكلا الخيارين صحيح.
5. في مكوِّن IBM watsonx.ai،حدِّد نقطة نهاية واجهة برمجة التطبيقات (API Endpoint) الخاصة بـ watsonx.ai والمناسبة لبيانات اعتماد API لديك. بعد ذلك، ألصِق معرِّف المشروع ومفتاح API Key الخاصين بـ watsonx.ai في الحقول المخصصة لهما. ثم اختَر اسم النموذج اللغوي الكبير (LLM) الذي تفضله. في هذا البرنامج التعليمي، يمكننا اختيار
6. فعِّل Tools Mode باستخدام مفتاح التبديل في العناصر arXiv وNews Search وCustom Component. سيظهر مفتاح التبديل في القائمة العلوية للعنصر عند النقر في أي موضع داخله. بعد تفعيل هذا الوضع، يمكنك توصيل هذه العناصر بحقل "Tools" في عنصر Agent. أصبح العنصران arXiv وNews Search مُعدين وجاهزين للاستخدام. يمكننا الآن التركيز على إعداد بقية العناصر.
7. من القائمة العلوية في Custom Component، اختَر Code <>. هنا، يمكننا تخصيص سلوك العنصر من خلال تعديل كود Python الذي يعرِّفه.6كمثال بسيط، يمكننا إنشاء أداة تُظهر تاريخ اليوم، وهي معلومة لا يستطيع النموذج اللغوي الكبير (LLM) معرفتها بطبيعته. استبدل الكود الافتراضي بالكود التالي:
احفظ التغييرات. ستلاحظ الآن أن العنصر يعرض اسمه الجديد ووصفه وأيقونته الجديدة.
8. يعود إليك تحديد عدد الأدوات التي توفِّرها لوكيلك. ومع ذلك، احرص على عدم تزويد الوكيل بعدد كبير جدًا من الأدوات، لأن ذلك قد يؤثر في الأداء والدقة. آخر أداة سنقوم بتفعيلها هي خادم MCP. يمكنك الاتصال بأي خادم من اختيارك. في هذا البرنامج تعليمي، يمكننا الاتصال بخادم Alpha Vantage MCP.7 يسهِّل خادم Alpha Vantage MCP الرسمي على النماذج اللغوية الكبيرة (LLM) والوكلاء جلب بيانات الأسهم الحالية والتاريخية باستخدام Model Context Protocol (MCP). للاتصال بهذا الخادم، افتح القائمة المنسدلة "MCP Server" في عنصر MCP Tools، ثم انقر على + Add MCP Server. في علامة التبويب STDIO، أدخِل أي اسم للخادم، مثل "av_mcp"، ثم ألصِق الأمر التالي:
أحسنت! اكتمل الآن التدفق الخاص بك، ويُفترض أن يشبه لقطة الشاشة التالية.
للتحقق من أن مسار عمل البحث يعمل كما هو متوقع، افتح Playground وابدأ الدردشة مع الوكيل الذي أنشأته. اطرح على الوكيل أسئلة تتطلب استدعاء إحدى الأدوات المتصلة. فيما يلي بعض أمثلة المدخلات:
يُفترض أن ترى الوكيل يستدعي الأدوات المتاحة لديه ويُنتج المخرجات الصحيحة. إذا واجهت أي مشكلات في هذه المرحلة، فعُد إلى التدفق وتأكَّد من صحة بيانات الاعتماد واتِّباع جميع الخطوات.
تتمثل إحدى طرق ربط هذا التدفق بـ watsonx Orchestrate في استخدامه كخادم MCP. انقر على القائمة المنسدلة Share في الزاوية العلوية اليمنى، ثم اختَر "MCP Server". بعد ذلك، افتح علامة التبويب "JSON". ستظهر لك تعليمات برمجية مشابهة للمثال التالي:
انسخ عنوان URL الموجود في مقتطف JSON. لاحِظ أن هذا العنوان سيختلف عن المثال السابق. عُد إلى الوحدة الطرفية (Terminal) وألصِق عنوان URL الخاص بخادم MCP بدلًا من العنصر النائب
المخرجات:
من خلال المتصفح، انتقِل إلى watsonx Orchestrate وأنشئ وكيلًا جديدًا من البداية. أدخِل أي اسم ووصف للوكيل. بعد إنشاء الوكيل، افتح علامة التبويب Toolset، ثم انقر على زر Add tool. بعد ذلك، اختَر استيراد الأدوات من خادم MCP. من القائمة المنسدلة Select MCP server، اختَر الخادم الذي قمنا باستيراده، ثم فعِّل الأدوات باستخدام مفتاح التفعيل، وأغلِق النافذة. بعد ذلك، انقر على Deploy. بعد اكتمال النشر، يمكنك الدردشة مع الوكيل من خلال نافذة Preview أو عبر واجهة الدردشة الموجودة في القائمة الجانبية المطوية للصفحة.
لنطرح سؤالًا على الوكيل! على سبيل المثال: "اعثر على 5 أوراق بحثية حول الحوسبة الكمِّية".
رائع! يعمل روبوت المحادثة الوكيل كما هو متوقع، إذ لا يكتفي بإرجاع الإجابة الصحيحة، بل يستدعي أيضًا أداة arXiv المناسبة. لا تتردد في تجربة مطالبات مختلفة.
في هذا النهج، لا تحتاج إلى Code Engine. يعتمد هذا النهج على إعداد بيئة تطوير محلية باستخدام watsonx Orchestrate Developer Edition SDK، وهو إصدار خفيف من watsonx Orchestrate يعمل كخادم تطوير محلي.
قبل البدء في التطوير محليًا باستخدام Langflow، ثبِّت إصدار Developer Edition من wxO ADK. لاحِظ أن Developer Edition لم يكن مطلوبًا في النهج الأول من هذا البرنامج التعليمي.
في بيئة التطوير المتكاملة (IDE) المفضلة لديك، قم بإعداد بيئة العمل الخاصة بك. أنشئ مجلدًا باسم
wxo-langflow-agent/ ├── .env ├── tools/ └── agents/
2. افتح الوحدة الطرفية (Terminal) وفعِّل بيئة افتراضية. يمكنك تغيير
فعِّل البيئة الافتراضية باستخدام الأمر التالي، واستبدِل
نظام التشغيل macOS/Linux:
نظام التشغيل Windows:
3. في ملف env.، اضبط متغيرات البيئة التالية. وللمزيد من المعلومات، راجِع دليل الإعداد.
4. شغِّل الأمر التالي لتثبيت خادم watsonx Orchestrate Developer Edition. لا تحتاج إلى تثبيت Langflow لأنه مضمَّن في ADK Developer Edition. يعمل خيار الأمر
قد يستغرق تنفيذ هذا الأمر عدة دقائق إذا كانت هذه هي المرة الأولى التي تقوم فيها بتشغيل الخادم.
استكشاف الأخطاء وإصلاحها: إذا سبق لك تثبيت watsonx Orchestrate Developer Edition قبل الإصدار 2.0 من ADK وواجهت أخطاء عند تشغيل الحاويات، فنفِّذ الأمر التالي:
يُفترض أن يكون الجزء الأخير من المخرجات مشابهًا للمثال التالي.
المخرجات:
يعرِّف watsonx Orchestrate ADK البيئات على أنها مثيلات watsonx Orchestrate التي يمكنك الاتصال بها. ستكون بيئتك عبارة عن مثيل من Developer Edition يعمل على جهاز الكمبيوتر المحمول الخاص بك. يمكنك استخدام الأمر orchestrate env listمحليةالمحلية
orchestrate env activate local
المخرجات:
[INFO] - local tenant found
[INFO] - Environment 'local' is now active
بعد ذلك، شغِّل الأمر التالي لبدء تشغيل واجهة الدردشة في متصفحك الافتراضي.
orchestrate chat start
المخرجات:
[INFO] - Chat UI Service started successfully.
[INFO] - Waiting for UI component to be initialized...
[INFO] - Opening chat interface at http://localhost:3000/chat-lite
يتوفر محرر Langflow من خلال watsonx Orchestrate Developer Edition على المنفذ 7861، كما هو موضح في المخرجات السابقة.
يمكننا استعراض طريقتين لاستيراد تدفقات Langflow إلى خادم watsonx Orchestrate المحلي:
أ) استيراد التدفق كخادم MCP محلي.
ب) استيراد التدفق بصيغة JSON.
هذه الخطوة تشبه الخطوة السابعة في الجزء الأول من هذا البرنامج التعليمي، مع بعض التعديلات البسيطة.
انقر على القائمة المنسدلة Share في الزاوية العلوية اليمنى من Langflow، ثم اختَر "MCP Server". بعد ذلك، افتح علامة التبويب "JSON". ستظهر لك تعليمات برمجية مشابهة للمثال التالي:
{
"mcpServers": {
"lf-starter_project": {
"command": "uvx",
"args": [
"mcp-proxy",
"http://localhost:7861/api/v1/mcp/project/41c9434f-67bf-439e-8dac-b7bb09b1d1ca/sse"
]
}
}
}
انسخ عنوان URL الموجود في مقتطف JSON. لاحِظ أن هذا العنوان سيختلف عن المثال السابق. عُد إلى المحطة الطرفية (Terminal) وألصِق الأمر التالي، مع استخدام عنوان URL الخاص بك بدلًا من العنوان الوارد في المثال التالي. على عكس الأمر الذي استخدمناه مع IBM Cloudlocalhost
orchestrate toolkits add \
--kind mcp \
--name langflow_research_mcp \
--description "LangFlow MCP Server" \
--command "uvx mcp-proxy http://host.docker.internal:7861/api/v1/mcp/project/41c9434f-67bf-439e-8dac-b7bb09b1d1ca/sse" \
--tools "*"
المخرجات:
[INFO] - Successfully imported tool kit langflow_research_mcp
في نسخة watsonx Orchestrate المحلية التي تعمل في المتصفح، انقر على "Create new agent"، ثم أدخِل اسمًا ووصفًا للوكيل الجديد، وبعد ذلك انقر على زر Create .
4. في علامة التبويب Toolset، انقر على زر Add tool. اختَر "local instance" لإضافة خادم MCP الذي سبق استيراده، ثم حدِّد مربع الاختيار الخاص به، وانقر على Add to agent.
5. ابدأ الدردشة!
كبديل لاستيراد التدفقات كخوادم MCP، يمكن استخدام ADK لاستيرادها كملفات JSON مُصدَّرة.
1. يناسب هذا الأسلوب التدفقات البسيطة بصورة أفضل. ولأغراض التوضيح، سنستخدم التدفق التالي:
قم بتصدير التدفق بصيغة JSON بالنقر على زر Share ثم اختيار Export. أدخِل أي اسم ووصف تريدهما للأداة أو التدفق. يجب أن يحتوي اسم الأداة على أحرف وأرقام وشرطة سفلية (_) فقط، وألا يبدأ برقم أو بشرطة سفلية.
2. أضِف ملف JSON الذي تم تصديره حديثًا إلى المجلد
3. نفِّذ الأمر التالي لاستيراد التدفق إلى watsonx Orchestrate.
4. بعد استيراد تدفق Langflow كأداة، تتمثل الخطوة التالية في ربطه بنظام وكيل. يمكنك تنفيذ هذه الخطوة بإنشاء وكيل جديد من خلال واجهة watsonx Orchestrate، أو بنسخ تعريف الوكيل التالي إلى ملف
والآن، استورد الوكيل البسيط بتنفيذ الأمر التالي:
5. حدِّث صفحة المتصفح التي تعرض واجهة دردشة watsonx Orchestrate المحلية حتى تظهر التغييرات. من القائمة المنسدلة Agents، اختَر "ArXiv Agent"، ثم اطرح أسئلة تتطلب استخدام أداة arXiv.
مثال على المطالبة: "اعثر لي على 5 أوراق بحثية حول الحوسبة الكمِّية".
المخرجات:
رائع! حدَّد الوكيل أن استدعاء الأداة
زوَّدك هذا البرنامج التعليمي بالمهارات الأساسية للاستفادة من Langflow وwatsonx Orchestrate في إنشاء وكلاء يتميزون بالمتانة وقابلية التوسع والجاهزية لبيئات المؤسسات. وتعرّفت على كيفية استيراد تدفقات LangFlow الوكيلة كخوادم MCP باستخدام watsonx Orchestrate كخدمة SaaS إلى جانب IBM Cloud. كما أصبحت على دراية بكيفية استيراد تدفقات LangFlow الأساسية عند استخدام IBM watsonx Orchestrate Agent Development Kit (ADK) محليًا. ومن خلال اتِّباع التعليمات خطوة بخطوة، تعرَّفت على كيفية تصميم الوكلاء وتطويرهم ونشرهم بحيث يمكنهم استدعاء الأدوات المخصصة والجاهزة مسبقًا للإجابة عن استفسارات المستخدمين. من خلال الواجهة المرئية البديهية في Langflow، أنشأت مهام سير عمل معقدة، بينما أتاح لك watsonx Orchestrate إدارة هؤلاء الوكلاء وتوسيع نطاقهم بكفاءة. وكخطوة تالية، طبِّق المعارف التي اكتسبتها من هذا البرنامج التعليمي من خلال العمل على حالة استخدام واقعية. اختَر مشكلة أو عملية محددة داخل مؤسستك يمكن أن تستفيد من الأتمتة، ثم صمِّم حلًا يعتمد على Langflow وwatsonx Orchestrate لمعالجتها. ستعزز هذه التجربة العملية فهمك، كما ستساعدك على تحديد الجوانب التي يمكن تحسينها أو استكشافها مستقبلًا.
إذا واجهت أي مشكلات أو كانت لديك أسئلة، فراجِع الوثائق. يتناول دليل استكشاف الأخطاء وإصلاحها معظم المشكلات الشائعة. ويمكنك أيضًا مراجعة قسم مشكلات GitHub لمعرفة إذا ما كان آخرون قد واجهوا مشكلات مماثلة.
استفد من الذكاء الاصطناعي في عملك بالاستعانة بخبرة IBM الرائدة في مجال الذكاء الاصطناعي ومحفظة حلولها المتوفرة لك.
أعدّ ابتكار عمليات ومهام سير العمل الحساسة بإضافة الذكاء الاصطناعي لتعزيز التجارب وصنع القرارات في الوقت الفعلي والقيمة التجارية.
1 Satyadhar Joshi، "مراجعة الأنظمة المستقلة وأطر عمل وكلاء الذكاء الاصطناعي التعاونية". International Journal of Science and Research Archive، المجلد 14، العدد 2، 28 فبراير 2025، الصفحات 961–972، https://ijsra.net/content/review-autonomous-systems-and-collaborative-ai-agent-frameworks.
2 "الوكلاء | وثائق Langflow"، Langflow.org، 2025، docs.langflow.org/components-agents.
3 "IBM | وثائق Langflow"، Langflow.org، 2025، docs.langflow.org/bundles-ibm.
4 "البيانات | وثائق Langflow"، Langflow.org، 2025، docs.langflow.org/components-data.
5 "ArXiv | وثائق Langflow"، Langflow.org، 2025، docs.langflow.org/bundles-arxiv.
6 "نظرة عامة على العناصر | وثائق Langflow" Langflow.org، 2025، docs.langflow.org/concepts-components.
7 "خادم Alpha Vantage MCP لبيانات سوق الأسهم"،Alphavantage.co، 2025، mcp.alphavantage.co/.