Merge f289602b54
into 175bd05ce5
commit
a0ba5a0301
@ -0,0 +1 @@
|
||||
|
@ -0,0 +1,88 @@
|
||||
# سوالات متداول
|
||||
|
||||
در این بخش به سوالات متداول درباره سیستمهای چند عامله پاسخ میدهیم.
|
||||
|
||||
## سوالات عمومی
|
||||
|
||||
### سیستم چند عامله چیست؟
|
||||
سیستم چند عامله یک چارچوب نرمافزاری است که در آن چندین عامل هوش مصنوعی با هم همکاری میکنند تا وظایف پیچیده را انجام دهند. هر عامل روی بخش خاصی از کار تمرکز میکند و با دیگر عاملها ارتباط برقرار میکند.
|
||||
|
||||
### چه تفاوتی با سیستمهای تک عامله دارد؟
|
||||
سیستمهای تک عامله محدود به تواناییهای یک عامل هستند، در حالی که سیستمهای چند عامله:
|
||||
- میتوانند وظایف را به صورت موازی انجام دهند
|
||||
- از تخصصهای مختلف بهرهمند میشوند
|
||||
- در برابر خطاها مقاومتر هستند
|
||||
- انعطافپذیری بیشتری دارند
|
||||
|
||||
## سوالات فنی
|
||||
|
||||
### چگونه میتوانم یک سیستم چند عامله ایجاد کنم؟
|
||||
```python
|
||||
from swarms import Agent, Swarm
|
||||
|
||||
# ایجاد عاملها
|
||||
agent1 = Agent(name="agent1", task="تحلیل داده")
|
||||
agent2 = Agent(name="agent2", task="تولید گزارش")
|
||||
|
||||
# ایجاد گروه
|
||||
swarm = Swarm(agents=[agent1, agent2])
|
||||
|
||||
# اجرای وظیفه
|
||||
result = swarm.run("تحلیل دادههای فروش")
|
||||
```
|
||||
|
||||
### چگونه عاملها با هم ارتباط برقرار میکنند؟
|
||||
عاملها میتوانند از طریق:
|
||||
- حافظه مشترک
|
||||
- پیامهای مستقیم
|
||||
- هماهنگکننده مرکزی
|
||||
با یکدیگر ارتباط برقرار کنند.
|
||||
|
||||
### چگونه خطاها را مدیریت کنیم؟
|
||||
سیستم چند عامله دارای چندین ویژگی برای مدیریت خطا است:
|
||||
- تکرار خودکار وظایف ناموفق
|
||||
- توزیع مجدد وظایف در صورت خطا
|
||||
- گزارشدهی خودکار خطاها
|
||||
|
||||
## سوالات مربوط به مقیاسپذیری
|
||||
|
||||
### آیا میتوانم عاملهای جدید اضافه کنم؟
|
||||
بله، سیستم به گونهای طراحی شده است که به راحتی میتوانید عاملهای جدید اضافه کنید:
|
||||
```python
|
||||
# اضافه کردن عامل جدید
|
||||
new_agent = Agent(name="new_agent", task="وظیفه جدید")
|
||||
swarm.add_agent(new_agent)
|
||||
```
|
||||
|
||||
### چگونه عملکرد سیستم را بهینه کنم؟
|
||||
برای بهینهسازی عملکرد میتوانید:
|
||||
- تعداد عاملها را متناسب با حجم کار تنظیم کنید
|
||||
- از الگوهای ارتباطی مناسب استفاده کنید
|
||||
- حافظه مشترک را بهینه کنید
|
||||
- وظایف را به درستی توزیع کنید
|
||||
|
||||
## سوالات مربوط به امنیت
|
||||
|
||||
### چگونه دادههای حساس را محافظت کنیم؟
|
||||
سیستم دارای چندین لایه امنیتی است:
|
||||
- رمزنگاری دادهها
|
||||
- کنترل دسترسی
|
||||
- ممیزی فعالیتها
|
||||
- جداسازی وظایف
|
||||
|
||||
### آیا میتوانم سیستم را در محیطهای مختلف اجرا کنم؟
|
||||
بله، سیستم در محیطهای مختلف قابل اجراست:
|
||||
- محیطهای ابری
|
||||
- سرورهای محلی
|
||||
- محیطهای ترکیبی
|
||||
|
||||
## پشتیبانی
|
||||
|
||||
### چگونه میتوانم کمک بگیرم؟
|
||||
برای دریافت کمک میتوانید:
|
||||
- از [مستندات](https://swarms.readthedocs.io) استفاده کنید
|
||||
- در [انجمن](https://github.com/swarms/discussions) سوال بپرسید
|
||||
- مشکلات را در [گیتهاب](https://github.com/swarms/issues) گزارش دهید
|
||||
|
||||
### آیا آموزشهای ویدیویی موجود است؟
|
||||
بله، میتوانید آموزشهای ویدیویی را در [کانال یوتیوب](https://youtube.com/swarms) مشاهده کنید.
|
@ -0,0 +1,56 @@
|
||||
# سیستمهای چند عامله LLM
|
||||
|
||||
به راهنمای جامع سیستمهای چند عامله خوش آمدید! این مستندات به شما کمک میکند تا سیستمهای چند عامله قدرتمند و کارآمد را با استفاده از مدلهای زبانی بزرگ (LLMs) ایجاد و مدیریت کنید.
|
||||
|
||||
## مزایای اصلی
|
||||
|
||||
* 🤝 **همکاری هوشمند** - عاملهای متعدد که برای حل مسائل پیچیده با هم همکاری میکنند
|
||||
* 🎯 **تخصص متمرکز** - هر عامل روی یک وظیفه خاص تمرکز میکند
|
||||
* 🔄 **انعطافپذیری** - سیستم قابل تطبیق با نیازهای در حال تغییر
|
||||
* 📈 **مقیاسپذیری** - افزودن عاملهای جدید برای گسترش قابلیتها
|
||||
|
||||
## شروع سریع
|
||||
|
||||
برای شروع کار با سیستم چند عامله، این مراحل را دنبال کنید:
|
||||
|
||||
```python
|
||||
from swarms import Agent, Swarm
|
||||
|
||||
# ایجاد عاملها
|
||||
agent1 = Agent(name="agent1", task="تحلیل داده")
|
||||
agent2 = Agent(name="agent2", task="تولید گزارش")
|
||||
|
||||
# ایجاد گروه
|
||||
swarm = Swarm(agents=[agent1, agent2])
|
||||
|
||||
# اجرای وظیفه
|
||||
result = swarm.run("تحلیل دادههای فروش و تولید گزارش")
|
||||
```
|
||||
|
||||
## ساختار پروژه
|
||||
|
||||
- `swarms/` - کتابخانه اصلی
|
||||
- `examples/` - نمونههای کاربردی
|
||||
- `docs/` - مستندات
|
||||
- `tests/` - تستهای واحد
|
||||
|
||||
## نصب
|
||||
|
||||
```bash
|
||||
pip install swarms
|
||||
```
|
||||
|
||||
## مشارکت
|
||||
|
||||
ما از مشارکتهای جامعه استقبال میکنیم! لطفاً [راهنمای مشارکت](contributing.md) ما را مطالعه کنید.
|
||||
|
||||
## پشتیبانی
|
||||
|
||||
برای سوالات و پشتیبانی:
|
||||
- 📖 [مستندات](https://swarms.readthedocs.io)
|
||||
- 💬 [انجمن](https://github.com/swarms/discussions)
|
||||
- 🐛 [گزارش مشکلات](https://github.com/swarms/issues)
|
||||
|
||||
## مجوز
|
||||
|
||||
این پروژه تحت مجوز MIT منتشر شده است. برای جزئیات بیشتر [فایل مجوز](LICENSE) را ببینید.
|
@ -0,0 +1,36 @@
|
||||
from ..utils.language_config import language_config, Language
|
||||
|
||||
class Swarm:
|
||||
def __init__(
|
||||
self,
|
||||
agents: List[Agent],
|
||||
language: Language = Language.ENGLISH,
|
||||
**kwargs
|
||||
):
|
||||
self.agents = agents
|
||||
self.language = language
|
||||
language_config.set_language(language)
|
||||
|
||||
def run(self, task: str) -> Dict[str, Any]:
|
||||
"""Run the swarm with the given task."""
|
||||
try:
|
||||
print(language_config.get_translation("status_messages", "task_started"))
|
||||
results = {}
|
||||
|
||||
for agent in self.agents:
|
||||
print(f"{agent.name}: {language_config.get_translation('status_messages', 'task_in_progress')}")
|
||||
results[agent.name] = agent.run(task)
|
||||
|
||||
print(language_config.get_translation("status_messages", "task_completed"))
|
||||
return results
|
||||
except Exception as e:
|
||||
error_msg = language_config.get_translation("error_messages", "task_failed")
|
||||
print(f"{error_msg}: {str(e)}")
|
||||
raise
|
||||
|
||||
def add_agent(self, agent: Agent) -> None:
|
||||
"""Add a new agent to the swarm."""
|
||||
if agent.name in [a.name for a in self.agents]:
|
||||
error_msg = language_config.get_translation("error_messages", "agent_not_found")
|
||||
raise ValueError(f"{error_msg}: {agent.name}")
|
||||
self.agents.append(agent)
|
@ -0,0 +1,63 @@
|
||||
from typing import Dict, Optional
|
||||
from enum import Enum
|
||||
|
||||
class Language(Enum):
|
||||
ENGLISH = "en"
|
||||
PERSIAN = "fa"
|
||||
|
||||
class LanguageConfig:
|
||||
def __init__(self, default_language: Language = Language.ENGLISH):
|
||||
self.default_language = default_language
|
||||
self.current_language = default_language
|
||||
self.translations: Dict[str, Dict[Language, str]] = {
|
||||
"error_messages": {
|
||||
Language.ENGLISH: {
|
||||
"agent_not_found": "Agent not found",
|
||||
"task_failed": "Task failed to execute",
|
||||
"invalid_input": "Invalid input provided",
|
||||
},
|
||||
Language.PERSIAN: {
|
||||
"agent_not_found": "عامل یافت نشد",
|
||||
"task_failed": "اجرای وظیفه با شکست مواجه شد",
|
||||
"invalid_input": "ورودی نامعتبر است",
|
||||
}
|
||||
},
|
||||
"status_messages": {
|
||||
Language.ENGLISH: {
|
||||
"task_started": "Task started",
|
||||
"task_completed": "Task completed",
|
||||
"task_in_progress": "Task in progress",
|
||||
},
|
||||
Language.PERSIAN: {
|
||||
"task_started": "وظیفه شروع شد",
|
||||
"task_completed": "وظیفه تکمیل شد",
|
||||
"task_in_progress": "وظیفه در حال انجام است",
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
def set_language(self, language: Language) -> None:
|
||||
"""Set the current language for the system."""
|
||||
self.current_language = language
|
||||
|
||||
def get_translation(self, category: str, key: str, language: Optional[Language] = None) -> str:
|
||||
"""Get a translation for a specific message."""
|
||||
lang = language or self.current_language
|
||||
try:
|
||||
return self.translations[category][lang][key]
|
||||
except KeyError:
|
||||
# Fallback to English if translation not found
|
||||
return self.translations[category][Language.ENGLISH][key]
|
||||
|
||||
def add_translation(self, category: str, key: str, translations: Dict[Language, str]) -> None:
|
||||
"""Add new translations to the system."""
|
||||
if category not in self.translations:
|
||||
self.translations[category] = {}
|
||||
|
||||
for lang, text in translations.items():
|
||||
if lang not in self.translations[category]:
|
||||
self.translations[category][lang] = {}
|
||||
self.translations[category][lang][key] = text
|
||||
|
||||
# Global language configuration instance
|
||||
language_config = LanguageConfig()
|
Loading…
Reference in new issue