CrewAI، تیم ایجنتهای همکار
وقتی از یه ایجنت هوش مصنوعی میخوای یه تحقیق بازار کامل انجام بده، گاهی نیاز داری یه نفر دنبال داده بگرده، یه نفر تحلیل کنه، و یه نفر گزارش بنویسه، همزمان.

وقتی از یه ایجنت هوش مصنوعی میخوای یه تحقیق بازار کامل انجام بده، گاهی نیاز داری یه نفر دنبال داده بگرده، یه نفر تحلیل کنه، و یه نفر گزارش بنویسه، همزمان. CrewAI دقیقاً برای همین ساخته شده: یه فریمورک Python که چند ایجنت AI رو مثل یه تیم واقعی کنار هم میذاره.
CrewAI چیست؟
CrewAI یه کتابخانهٔ متنباز Pythonه که توسط Joao Moura در سال ۲۰۲۳ ساخته شد و به سرعت به یکی از محبوبترین فریمورکهای multi-agent تبدیل شد. فلسفهٔ اصلیش اینه که مسئلههای پیچیده رو بین چند ایجنت تخصصی تقسیم کنی، هر کدوم نقش (Role) و هدف (Goal) مشخص دارن، و با هم روی یه تسک بزرگتر همکاری میکنن.
ساختار CrewAI از سه بلوک اصلی تشکیل شده:
- Agent: هر ایجنت یه role، یه goal و یه backstory داره. مثلاً «تحلیلگر بازار» یا «نویسنده محتوا»
- Task: هر تسک به یه ایجنت خاص سپرده میشه و خروجی مشخص داره
- Crew: مجموعهای از ایجنتها که با هم روی یه پروسه کار میکنن
یه مثال واقعی با کد
فرض کن میخوای یه گزارش دربارهٔ بازار استارتاپهای ایرانی بنویسی:
from crewai import Agent, Task, Crew
researcher = Agent(
role='تحلیلگر بازار',
goal='جمعآوری دادههای دقیق دربارهٔ اکوسیستم استارتاپ ایران',
backstory='متخصص تحقیق بازار با تمرکز روی بازارهای نوظهور',
verbose=True
)
writer = Agent(
role='نویسنده تحلیلی',
goal='تبدیل دادههای خام به گزارش خوانا و کاربردی',
backstory='نویسندهای با تجربه در تحلیل کسبوکار',
verbose=True
)
research_task = Task(
description='اطلاعات کلیدی دربارهٔ ۵ حوزهٔ اصلی استارتاپهای ایران در ۱۴۰۴ را جمعآوری کن',
agent=researcher
)
write_task = Task(
description='بر اساس یافتههای تحقیق، یه گزارش ۵۰۰ کلمهای بنویس',
agent=writer
)
crew = Crew(agents=[researcher, writer], tasks=[research_task, write_task])
result = crew.kickoff()
دو مدل اجرا: Sequential و Hierarchical
CrewAI دو شیوهٔ اجرا داره که انتخابشون خیلی مهمه:
Sequential (ترتیبی): تسکها یکی پس از دیگری اجرا میشن. خروجی تسک قبلی ورودی بعدیه. برای پایپلاینهای خطی مناسبه، مثل تحقیق → تحلیل → گزارش.
Hierarchical (سلسلهمراتبی): یه ایجنت «مدیر» وجود داره که تسکها رو بین بقیه تقسیم و نظارت میکنه. برای مسئلههای موازیتر و انعطافپذیرتره.
CrewAI در مقابل AutoGen و LangGraph
این سه فریمورک رو خیلی مقایسه میکنن:
| ویژگی | CrewAI | AutoGen | LangGraph |
|---|---|---|---|
| سادگی شروع | خیلی آسون | متوسط | پیچیده |
| کنترل دقیق جریان | محدود | متوسط | خیلی زیاد |
| مستندات | خوب | خوب | خوب |
| مناسب برای | پروتوتایپ سریع | مکالمه بین ایجنتها | گرافهای پیچیده |
اگه میخوای سریع یه چیز کار کنه، CrewAI بهترین نقطهٔ شروعه. اگه کنترل دقیق روی جریان میخوای، LangGraph قدرتمندتره.
ابزارها (Tools) در CrewAI
هر ایجنت میتونه به ابزارهای مختلف دسترسی داشته باشه: جستجوی وب، خواندن فایل، اجرای Python، دسترسی به API. CrewAI با LangChain tools سازگاره، بنابراین کتابخانهٔ عظیمی از ابزارها داری.
from crewai_tools import SerperDevTool, FileReadTool
search_tool = SerperDevTool() # جستجوی گوگل
file_tool = FileReadTool() # خواندن فایل
محدودیتهای واقعی
صادقانه بگم، CrewAI کامل نیست:
- هزینه: هر ایجنت LLM مصرف میکنه. یه crew پنج ایجنته میتونه به سرعت هزینهٔ API رو بالا ببره
- Debugging: وقتی چیزی اشتباه میره، فهمیدن کجا اشتباه شده سخته، خروجی ایجنتها گاهی غیرقابلپیشبینیه
- حلقههای بینهایت: ایجنتها گاهی بین خودشون چرخ میزنن؛ باید max_iterations تنظیم کنی
- فارسی: مثل بیشتر فریمورکهای AI، بهینهسازی روی فارسی کمه، مدلهای پایهای که استفاده میکنی اینجا مهمه
وقتی CrewAI واقعاً میدرخشه
چند use case که CrewAI برای اونا واقعاً مناسبه:
- تولید محتوا در مقیاس: تیمی از ایجنتها برای تحقیق + نگارش + ویرایش + سئو
- تحلیل مالی: جمعآوری داده، تحلیل، و تولید گزارش
- اتوماسیون پشتیبانی: ایجنت تریاژ + ایجنت پاسخدهی + ایجنت اسکالیشن
- رزومه و استخدام: بررسی رزومه + مصاحبه اولیه + تحلیل فرهنگسازمانی
شروع با CrewAI
نصب خیلی سادهست:
pip install crewai crewai-tools
و کلید API مدل موردنظرت رو (OpenAI، Anthropic، یا حتی مدلهای محلی از طریق Ollama) تنظیم کنی. مستندات رسمی در docs.crewai.com کامل و بهروزه.
همچنین بخوان
- ایجنت هوش مصنوعی چیست؟
- AutoGen مایکروسافت، فریمورک مکالمهٔ ایجنتها
- LangChain چیست و چه کاری میکند
- شناخت پیوسته در هوش مصنوعی، وقتی ایجنتها حافظه دارن، همه چیز فرق میکنه
- سیستمهای چند-ایجنتی
ادامهٔ مسیر
همهٔ مقالهها ←
بنچمارکهای ایجنت، SWE-bench
وقتی یه شرکت ادعا میکنه ایجنت کدنویسیش «۵۰٪ مسائل رو حل میکنه»، این عدد از کجا میاد؟ جواب: SWE-bench.

مقایسهٔ فریمورکهای ایجنت
میخوای یه ایجنت AI بسازی، مثلاً یه ربات که ایمیلهات رو بخونه، وظایف رو دستهبندی کنه، و جوابها رو پیشنویس بزنه. کدوم فریمورک انتخاب میکنی؟ LangChain؟ CrewAI؟

خطرات و محدودیتهای ایجنتها
ایجنتهای AI هیجانانگیزن، یه دستیار که خودش جستجو میکنه، کد مینویسه، ایمیل میفرسته.

ایجنتهایی که یاد میگیرن، شناخت پیوسته در ایجنتها
تا همین چند سال پیش، وقتی میگفتیم «هوش مصنوعی»، ذهن همه میرفت سراغ یه بات که سوال میپرسی، جواب میده، تمام. هر بار از صفر. هیچ سابقهای از تو نداره.
بیشتر در «ایجنتها»
- ایجنت هوش مصنوعی چیست
- سیستمهای چندایجنتی (Multi-Agent) در هوش مصنوعی
- LangChain، راهنمای فارسی
- LangGraph، workflows با حالت
- AutoGen مایکروسافت
- AutoGPT، اولین تجربهٔ ایجنت خودکار
- Browser agents، Browser Use و Skyvern
- Coding agents، SWE-agent و Devin
- Workflow agents، n8n با AI
- MCP و اکوسیستم ایجنتها
- ساخت ایجنت، اولین قدمها