العلامة التقنية

موقع تقني عربي متخصص في أخبار التكنولوجيا والذكاء الاصطناعي

بناء أنظمة ذكاء اصطناعي متعددة الوكلاء باستخدام SmolAgents

بقلم: فريق تحرير العلامة التقنية التصنيف: الذكاء الاصطناعي
بناء أنظمة ذكاء اصطناعي متعددة الوكلاء باستخدام SmolAgents

تعرف على كيفية بناء أنظمة ذكاء اصطناعي متعددة الوكلاء باستخدام SmolAgents وأدوات البرمجة الديناميكية.

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

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

أول خطوة هي تثبيت المكتبات الضرورية. يمكن القيام بذلك باستخدام الأمر التالي:

import subprocess, sys
def pip(*args):
    subprocess.check_call([sys.executable, "-m", "pip", "install", "-q", *args])
pip("smolagents[all]", "duckduckgo-search", "wikipedia", "rich")

بعد ذلك، نقوم باستيراد المكتبات اللازمة ونبدأ بإعداد البيئة.

معمارية SmolAgents

SmolAgents هو إطار عمل وكيل بسيط. الإصدار المستقر الحالي هو 1.24.0 ويستخدم OpenAI gpt-4o-mini.

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

بناء أدوات مخصصة

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

from smolagents import Tool, tool
@tool
def celsius_to_fahrenheit(celsius: float) -> str:
    return f"{celsius}°C = {celsius * 9/5 + 32:.2f}°F"

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

إدارة الأدوات

تعيش الأدوات في agent.tools، وهو معجم بايثون بسيط يتم فيه تخزين الأدوات حسب اسم الأداة. هذا يسمح لنا بإدارة الأدوات ديناميكيًا ضمن النظام.

خيارات محركات LLM

يدعم SmolAgents عدة خلفيات LLM عبر LiteLLMModel. سنستخدم gpt-4o-mini لتحضير الخلفية الرئيسية للتفكير.

from smolagents import LiteLLMModel
MODEL_ID = "openai/gpt-4o-mini"
engine = LiteLLMModel(model_id=MODEL_ID, api_key=OPENAI_API_KEY)

بعد ذلك، نمد النظام بأداة بحث عبر الويب وأداة حسابية لتوسيع قدرات الوكيل.

إنشاء وكيل البرمجة

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

from smolagents import CodeAgent
code_agent = CodeAgent(
    tools=[celsius_to_fahrenheit, PrimeTool(), MemoTool(), DuckDuckGoTool()],
    model=engine,
    max_steps=6,
    verbosity_level=1,
)

ثم نقوم بتنفيذ مهام تفكير معقدة للتحقق من تتابع العمليات الحسابية وتنسيق الأدوات.

خاتمة

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

المصدر: MarkTechPost

أحدث في الذكاء الاصطناعي

مقالات سابقة في الذكاء الاصطناعي