Reference OS v8 5 دقائق قراءة ١٨ مايو ٢٠٢٦ informational Sage: دليل عملي لتركيب وتشغيل إطار عمل الوكلاء المتعددين مفتوح المصدر بعد قراءة هذا الدليل، ستتمكن من تثبيت Sage وتشغيل وكيلين للترجمة…

Multi-Agent System Framework For Complex Tasks
اختر القسم الذي تحتاجه الآن
الفكرة التي تمنع التسرع
تخيل أن لديك فريقاً من وكلاء الذكاء الاصطناعي يعملون معاً لحل مشكلة معقدة، لكنك لا تعرف من أين تبدأ. Sage يقدم لك البنية التحتية، لكن هل هو جاهز للإنتاج؟
قبل أن تطبق، اعرف أين تقف بالضبط
لا تعتمد على الانطباع؛ اختر مؤشراً تراجعه
كيف تبني نظاماً يتعاون فيه عدة وكلاء ذكاء اصطناعي لحل مهمة معقدة، مثل تحليل تغريدات السوق السعودي وإصدار تقرير استثماري؟ Sage هو إطار عمل Python مفتوح المصدر (رخصة MIT) يتيح لك تعريف وكلاء متخصصين يعملون معاً عبر سير عمل. هذا الدليل يرشدك خطوة بخطوة من التركيب إلى تشغيل أول وكيلين، مع تفاصيل عن التكلفة والخصوصية والقيود الحقيقية.
قبل البدء، تأكد من توفر: Python 3.10+، Git، مفتاح API لنموذج LLM (مثل OpenAI)، وDocker (اختياري لواجهة الويب).
1. استنساخ المستودع: git clone https://github.com/ZHangZHengEric/Sage.git && cd Sage
2. تثبيت الحزمة: pip install -e .
3. إعداد ملف .env: انسخ .env.example إلى .env وأضف المفتاح: SAGE_DEFAULT_LLM_API_KEY=your-key
4. تشغيل الواجهة الطرفية: sage-terminal (أو استخدم Cargo إذا كنت تريد بناءها من المصدر). لتشغيل واجهة الويب، شغل Docker: docker-compose up في مجلد app/web.
أنشئ ملف translation_agent.py بالمحتوى التالي:
from sage import Agent, Workflow
class TranslatorAgent(Agent):
def execute(self, task):
prompt = f"Translate the following English text to Arabic: {task['text']}"
response = self.llm.generate(prompt)
return {'translation': response}
class ReviewerAgent(Agent):
def execute(self, task):
prompt = f"Review the Arabic translation for accuracy and fluency: {task['translation']}"
response = self.llm.generate(prompt)
return {'review': response, 'approved': 'yes' if 'good' in response.lower() else 'no'}
workflow = Workflow()
workflow.add_agent(TranslatorAgent(name='translator'))
workflow.add_agent(ReviewerAgent(name='reviewer'))
workflow.set_flow(['translator', 'reviewer'])
result = workflow.run({'text': 'Hello, how are you?'})
print(result)شغل المثال: python translation_agent.py. سترى الترجمة والمراجعة.
لتشغيل مثال الترجمة أعلاه باستخدام GPT-4 (سعر ~0.03$ لكل 1K رمز إدخال و0.06$ لكل 1K رمز إخراج)، كل وكيل يستهلك حوالي 500 رمز إدخال و200 رمز إخراج. التكلفة التقريبية لكل تشغيل: (0.03*0.5 + 0.06*0.2) * 2 وكيل = 0.054$. لمشروع صغير بـ 100 تشغيل يومياً، التكلفة ~5.4$ يومياً. يمكن تقليلها باستخدام نماذج أرخص مثل GPT-3.5-turbo.
Sage يخزن البيانات محلياً في ملفات (افتراضي) أو PostgreSQL. يمكن تشغيله بالكامل محلياً دون اتصال بالإنترنت إذا استخدمت نموذجاً محلياً (مثل Llama). لا يرسل البيانات إلى خوادم خارجية إلا عند استدعاء API النموذج. تأكد من عدم تضمين مفاتيح API في الكود المصدري.
أضف السطرين: SAGE_DEFAULT_LLM_API_KEY=sk-xxxx و SAGE_DEFAULT_LLM_MODEL=gpt-4.
تأكد من تثبيت Rust (Cargo) وحاول بناءه يدوياً: cd app/terminal && cargo run.
نعم، استخدم الواجهة الطرفية فقط.
خطوات عملية مرتبة من التشخيص إلى النتيجة
لماذا؟ Sage يعتمد على Python 3.10+ و Git و Docker (اختياري) ومفتاح API.
كيف؟ تأكد من تثبيت Python 3.10+ و Git. احصل على مفتاح API من OpenAI أو مزود آخر.
الناتج: بيئة جاهزة مع Python و Git ومفتاح API.
لماذا؟ تحتاج إلى كود Sage المحلي لتشغيله.
كيف؟ git clone https://github.com/ZHangZHengEric/Sage.git && cd Sage && pip install -e .
الناتج: مجلد Sage مع الحزمة المثبتة.
لماذا؟ Sage يحتاج إلى مفتاح API للاتصال بالنموذج.
كيف؟ انسخ .env.example إلى .env وأضف السطر: SAGE_DEFAULT_LLM_API_KEY=your-key
الناتج: ملف .env صالح.
لماذا؟ للتحقق من التثبيت وتجربة الأوامر.
كيف؟ شغل الأمر sage-terminal في الطرفية.
الناتج: ظهور واجهة سطر أوامر Sage.
لماذا؟ لتجربة عملية لوكلاء متعددين.
كيف؟ أنشئ ملف translation_agent.py بالمحتوى المذكور في المقال، ثم شغله: python translation_agent.py
الناتج: طباعة الترجمة والمراجعة.
حوّل القراءة إلى تنفيذ سريع
from sage import Agent, Workflow
class TranslatorAgent(Agent):
def execute(self, task):
prompt = f"Translate the following English text to Arabic: {task['text']}"
response = self.llm.generate(prompt)
return {'translation': response}
class ReviewerAgent(Agent):
def execute(self, task):
prompt = f"Review the Arabic translation for accuracy and fluency: {task['translation']}"
response = self.llm.generate(prompt)
return {'review': response, 'approved': 'yes' if 'good' in response.lower() else 'no'}
workflow = Workflow()
workflow.add_agent(TranslatorAgent(name='translator'))
workflow.add_agent(ReviewerAgent(name='reviewer'))
workflow.set_flow(['translator', 'reviewer'])
result = workflow.run({'text': 'Hello, how are you?'})
print(result)اعرف أين يتعثر الناس وكيف تتجنب ذلك
ماذا تفعل حسب حالتك؟
إذا: إذا كنت تريد تشغيل واجهة الويب
إذن: ثبت Docker وشغل docker-compose up في مجلد app/web
إذا: إذا كنت تواجه مشكلة في sage-terminal
إذن: تأكد من تثبيت Rust (Cargo) وحاول بناءه يدوياً: cd app/terminal && cargo run
إذا: إذا كنت تريد تقليل التكلفة
إذن: استخدم نموذج أرخص مثل GPT-3.5-turbo بدلاً من GPT-4
إذا: إذا كنت قلقاً بشأن الخصوصية
إذن: استخدم نموذجاً محلياً مثل Llama وشغل Sage بدون اتصال بالإنترنت
جدول صغير يمنع التسويف
نقاط مختصرة ترجع لها لاحقاً
1. Sage مرخص تحت MIT، مجاني تماماً.
2. يتطلب Python 3.10+ ومفتاح API لنموذج LLM.
3. التثبيت عبر git clone و pip install -e .
4. تشغيل واجهة الويب يتطلب Docker.
5. مثال الترجمة يستخدم وكيلين: مترجم ومراجع.
6. تكلفة كل تشغيل باستخدام GPT-4 حوالي 0.054$.
7. يمكن تشغيل Sage محلياً دون إنترنت باستخدام نموذج محلي.
8. لا يدعم الوكلاء المتزامنين (تسلسلي).
إجابات مباشرة على ما يبحث عنه الزائر
تعريفات مختصرة تمنع الالتباس
كائن برمجي يقوم بمهمة محددة باستخدام نموذج LLM.
تسلسل الوكلاء الذين يتعاونون لإنجاز مهمة.
نموذج لغوي كبير مثل GPT-4.
استخدمها كمسارات متابعة داخل نفس الموضوع
تحول القارئ: من مطور يبحث عن إطار عمل إلى مستخدم قادر على تشغيل وكلاء متعددين
القيمة الحقيقية تظهر عند العودة والتطبيق
لا تتعامل معه كمقال يُقرأ مرة واحدة. استخدمه كلوحة تشغيل: ارجع للتشخيص عند ظهور المشكلة، وللقوالب عند التطبيق، ولمؤشرات القياس عند المراجعة.
Sage إطار عمل واعد لبناء أنظمة وكلاء متعددة، لكنه لا يزال في مرحلة التطوير النشط. ابدأ بتجربة مثال الترجمة، ثم طور سير عمل خاص بك. تابع المستودع على GitHub للحصول على التحديثات، وشارك تجاربك مع المجتمع.
حتى يبقى المرجع صالحاً مع الوقت
FAQ