track
Agenții AI sunt asistenți care pot îndeplini sarcini și pot interacționa cu lumea. Spre deosebire de sistemele tradiționale care urmează reguli fixe, ei pot învăța și se pot adapta la situații noi. Gândește-te la ei ca la programe software care își pot percepe mediul și pot lua acțiuni.
Dar ce îi diferențiază pe agenții AI de alte entități AI, precum popularele modele de limbaj despre care am auzit cu toții?
În acest articol, voi aborda această întrebare și voi prezenta CrewAI, un framework Python gratuit și open-source conceput pentru a simplifica dezvoltarea sistemelor AI cu mai mulți agenți. Vom explora distincția dintre agenți și modelele de limbaj, vom discuta de ce framework-urile pentru agenți sunt importante pentru construirea aplicațiilor AI și vom demonstra cum le permite CrewAI agenților să colaboreze și să obțină rezultate excelente.
Agenți AI vs. LLM-uri
Să demontăm o neînțelegere frecventă privind diferența dintre agenți și modelele mari de limbaj (LLM). Ambele fac parte din familia inteligenței artificiale, însă au capabilități distincte.

Modelele de limbaj, precum ChatGPT și Gemini, sunt extrem de abile în utilizarea limbajului. Au fost antrenate intens pe cantități uriașe de text și cod, ceea ce le-a conferit capacitatea de a înțelege și de a produce limbaj care seamănă îndeaproape cu comunicarea umană.
LLM-urile sunt maeștrii cuvintelor în inteligența artificială, capabile să producă o gamă largă de conținut, inclusiv traduceri, rezumate, narațiuni creative sau chiar poezie. Domeniul lor se limitează, de regulă, la sarcini legate de limbaj.
Agenții, însă, sunt concentrați în primul rând pe acțiune. Ei pot naviga, interacționa cu obiecte și lua decizii pe baza percepțiilor lor.
Pe scurt, modelele de limbaj sunt creierul, iar agenții sunt mâinile. Împreună, formează un duo puternic.
Așadar, dacă agenții au un rol atât de important în aplicațiile AI, cum gestionăm complexitatea atunci când mai mulți agenți trebuie să lucreze împreună? Aici intervin framework-urile pentru agenți.
Necesitatea unui framework pentru agenți
Nevoia de framework-uri pentru agenți apare din complexitatea tot mai mare a aplicațiilor AI, în special a celor care implică mai mulți agenți ce colaborează pentru a atinge un obiectiv comun. Să vedem de ce sunt esențiale framework-urile pentru agenți.
Orchestrare și coordonare
Pe măsură ce sistemele AI cresc ca anvergură, ele includ adesea numeroși agenți cu capabilități diverse. Gestionarea acestor interacțiuni și asigurarea unei colaborări armonioase devin tot mai dificile.
Framework-urile pentru agenți oferă un mediu structurat care permite orchestrarea activităților agenților, definirea rolurilor și responsabilităților lor și îmbunătățirea comunicării.
În sistemele multi-agenți, un aspect important este alocarea eficientă a sarcinilor către cei mai potriviți agenți și gestionarea eficientă a resurselor partajate. Framework-urile pentru agenți oferă mecanisme dinamice pentru alocarea sarcinilor, negocierea resurselor și rezolvarea conflictelor.
Modularitate și reutilizare
Framework-urile pentru agenți promovează o abordare modulară a dezvoltării AI, în care agenții sunt proiectați și implementați ca componente independente. Această modularitate îmbunătățește organizarea codului și permite reutilizarea modulelor de agenți în diverse proiecte, simplificând astfel dezvoltarea și mentenanța sistemelor complexe. Cu această structură bazată pe componente, dezvoltatorii de AI se pot concentra pe agenți individuali fără a perturba sistemul mai mare.
În plus, framework-urile pentru agenți adoptă adesea o arhitectură bazată pe roluri, permițând dezvoltatorilor să atribuie agenților roluri specifice, care le definesc capabilitățile și permisiunile. Acest design bazat pe roluri duce la un sistem mai organizat și mai ușor de gestionat, în care agenții pot fi adăugați, eliminați sau modificați cu impact minim asupra arhitecturii generale. Această flexibilitate asigură că sistemele pot evolua și se pot adapta la cerințe noi fără reinginerii semnificative.
Adaptabilitate și învățare
Mediile din lumea reală sunt adesea dinamice, imprevizibile și în continuă evoluție. Framework-urile pentru agenți îi echipează pe aceștia să perceapă schimbările din jur și să își adapteze comportamentele în consecință. Această adaptabilitate asigură că agenții pot funcționa eficient chiar și în scenarii complexe și în continuă schimbare, făcându-i mai buni la gestionarea provocărilor reale.
Mai mult, framework-urile pentru agenți încorporează frecvent mecanisme de învățare care le permit agenților să își îmbunătățească performanța în timp. Învățând din feedback și experiențe, agenții își pot optimiza continuu procesele de luare a deciziilor și se pot adapta la provocări noi pe măsură ce apar. Această îmbunătățire continuă îi face pe agenți mai eficienți și mai valoroși, contribuind la eficiența și succesul sistemului pe termen lung.
Și, vorbind despre framework-uri pentru agenți, să prezentăm unul care face valuri în comunitatea AI: CrewAI.
Ce este CrewAI?
CrewAI este un framework Python open-source construit în jurul a două blocuri complementare:
- Crews — echipe de agenți AI care colaborează autonom prin luarea deciziilor pe baza rolurilor — și
- Flows — fluxuri de lucru gata de producție, bazate pe evenimente, care îți oferă control asupra automatizărilor.
Împreună, acestea îți permit să construiești orice, de la o simplă linie de cercetare până la un sistem multi-agenți complet autonom.

Acest framework include o gamă de instrumente, precum motoare de căutare web și modele de limbaj, permițând agenților să interacționeze cu lumea exterioară, să colecteze informații și să acționeze pentru a-și îndeplini obiectivele.
Designul și scalabilitatea CrewAI îl fac perfect atât pentru dezvoltarea de aplicații multi-agenți de bază, cât și complexe, încurajând o metodă colaborativă de abordare a provocărilor și de luare a deciziilor în cadrul sistemelor AI.
Să aruncăm o privire la câteva dintre caracteristicile cheie care fac din CrewAI un instrument puternic pentru construirea sistemelor multi-agenți.
- Orchestrarea agenților: CrewAI se asigură că fiecare agent își cunoaște rolul în reprezentație. Oferă instrumentele pentru a defini și coordona comportamentele agenților, astfel încât toți să fie pe aceeași lungime de undă.
- Arhitectură bazată pe roluri: Asemenea atribuirii de instrumente diferite muzicienilor, CrewAI îți permite să atribui roluri specifice agenților, definindu-le capabilitățile și permisiunile. Astfel se creează un sistem modular și bine structurat, chiar și când lucrurile devin complexe.
- Comunicare flexibilă: CrewAI acceptă diverse canale de comunicare, permițând agenților să facă schimb de informații fără fricțiuni. Gândește-te la asta ca la un chat privat, o discuție de grup și un megafon, toate într-unul.
- Integrarea instrumentelor: CrewAI le oferă agenților puterea de a interacționa cu lumea prin diverse unelte. Aceste unelte le permit să caute pe web, să înțeleagă limbajul, să analizeze date și să efectueze sarcini personalizate.
- Scalabilitate: CrewAI este conceput să se scaleze fără efort, asigurând că sistemul tău multi-agenți rămâne receptiv și eficient pe măsură ce crește.
Dar ce beneficii aduce CrewAI? Să-i explorăm avantajele.
CrewAI Flows și Crews
CrewAI este construit în jurul a două blocuri complementare care lucrează împreună pentru a gestiona totul, de la sarcini simple ale agenților până la pipeline-uri complexe de producție.
Crews sunt echipe de agenți AI care colaborează autonom. Fiecare agent dintr-un Crew are un rol, un obiectiv și un background clar definite — iar ei lucrează împreună pentru a finaliza sarcini, își deleagă unii altora și iau decizii fără să fie nevoie să le scrii tu fiecare pas. Un Crew este ceea ce folosești când vrei ca agenții să-și dea seama singuri cum să ducă ceva la bun sfârșit.
Flows reprezintă stratul de orchestrare deasupra Crews. Un Flow îți permite să legi mai multe Crews între ele, să adaugi logică condițională între pași, să gestionezi starea pe tot parcursul pipeline-ului și să declanșezi acțiuni pe baza evenimentelor. Dacă un Crew îți oferă autonomie, un Flow îți oferă control.
| Crews | Flows | |
|---|---|---|
| Cel mai potrivit pentru | Sarcini autonome, colaborative între agenți | Pipeline-uri în mai multe etape cu execuție controlată |
| Nivel de control | Condus de agenți | Definit de dezvoltator |
| Folosește când | Vrei ca agenții să găsească ei înșiși metoda | Ai nevoie să controlezi ce, când și dacă |
Pentru majoritatea începătorilor, vei porni cu Crews. Doar când ai nevoie de fiabilitate la nivel de producție vei folosi Flows. Cu Flows faci scalarea.
Beneficiile utilizării CrewAI
CrewAI le permite mai multor agenți AI să colaboreze, să își împărtășească cunoștințele și să își coordoneze acțiunile către un obiectiv comun.
Prin automatizarea distribuției sarcinilor și a gestionării resurselor, CrewAI le permite agenților să se concentreze pe rolurile lor specifice cu un efort administrativ minim.
Framework-ul susține, de asemenea, adaptabilitatea, permițând agenților să își ajusteze comportamentul în funcție de condițiile sau obiectivele în schimbare.
În plus, CrewAI simplifică procesul de dezvoltare cu o platformă ușor de folosit pentru crearea și administrarea sistemelor multi-agenți.

Alt punct forte al CrewAI este integrarea cu o gamă largă de instrumente. Aceasta extinde capabilitățile agenților, permițându-le să interacționeze cu mediul extern și să adune informații.
CrewAI acceptă instrumente precum motoare de căutare web, modele de limbaj, unelte de analiză a datelor și chiar funcționalități construite la comandă. Astfel, agenții pot realiza sarcini dincolo de capabilitățile lor de bază, cum ar fi preluarea informațiilor de pe web sau efectuarea de analize de date complexe.
Practica: Construirea unui instrument de căutare web cu CrewAI
Să ne suflecăm mânecile și să construim un flux de lucru folosind uneltele CrewAI pentru a extrage conținutul de pe un site, apoi să facem RAG pe acesta.
Trebuie să scriem codul care va face instrumentul să funcționeze. Înainte de a începe, hai să instalăm pachetele crewai-tools și crewai folosind pip:
# Install CrewAI with tools support
pip install 'crewai[tools]'
# Or using uv (recommended by CrewAI for dependency management)
uv add 'crewai[tools]'
După ce ai instalat pachetele, urmează pașii de mai jos. În acest exemplu, vom folosi trei instrumente diferite: ScrapeWebsiteTool pentru a extrage conținutul site-ului, FileWriterTool pentru a scrie fișierul și TXTSearchTool pentru a căuta contextul pentru RAG. Să începem.
Pasul 1: Extrage conținutul unui site
Mai întâi importăm bibliotecile necesare și inițializăm ScrapeWebsiteTool. Acest instrument este folosit pentru a extrage conținutul de pe un site. În cazul nostru, este setat să extragă conținutul paginii Wikipedia „Artificial Intelligence”:
from crewai_tools import ScrapeWebsiteTool, FileWriterTool, TXTSearchTool
import requests
# Initialize the tool, potentially passing the session
tool = ScrapeWebsiteTool(website_url='https://en.wikipedia.org/wiki/Artificial_intelligence')
# Extract the text
text = tool.run()
print(text)
Pasul 2: Scrie textul extras într-un fișier
Acum folosim FileWriterTool pentru a salva textul extras într-un fișier numit ai.txt.
# Initialize the tool
file_writer_tool = FileWriterTool()
# Write content to a file in a specified directory
result = file_writer_tool._run(filename='ai.txt', content = text, directory = '', overwrite=True)
print(result)
Pasul 3: Configurează instrumentul de căutare în text
Configurăm un alt instrument pentru a căuta în conținutul fișierului ai.txt pe care tocmai l-am salvat. Setăm și variabila de mediu pentru cheia API OpenAI.
import os
from crewai_tools import TXTSearchTool
os.environ['OPENAI_API_KEY'] = 'API-KEY'
# Initialize the tool with a specific text file, so the agent can search within the given text file's content
tool = TXTSearchTool(txt='ai.txt')
Pasul 4: Creează un agent pentru sarcină și execută-l
Creăm un agent analist de date cu rolul de educator. Sarcina acestui agent este să răspundă la întrebarea „Ce este prelucrarea limbajului natural?” pe baza textului căutat în fișier.
from crewai import Agent, Task, Crew
context = tool.run('What is natural language processing?')
data_analyst = Agent(
role='Educator',
goal=f'Based on the context provided, answer the question - What is Natural Language Processing? Context - {context}',
backstory='You are a data expert',
verbose=True,
allow_delegation=False,
tools=[tool]
)
test_task = Task(
description="Using the provided context, answer the question: What is Natural Language Processing?",
tools=[tool],
agent=data_analyst,
expected_output='A clear, 2-3 paragraph explanation of Natural Language Processing, covering its definition, key techniques, and common applications.'
)
crew = Crew(
agents=[data_analyst],
tasks=[test_task]
)
output = crew.kickoff()

Cum se compară CrewAI cu LangGraph și AutoGen
Principalele alternative la CrewAI sunt LangGraph și AutoGen de la Microsoft. Cel mai mare avantaj al CrewAI este paradigma agentului bazată pe roluri. Adică, definind agenți cu roluri, obiective și background, obții un comportament care reflectă îndeaproape modul în care colaborează echipele umane.
LangGraph oferă mai mult control asupra fluxului de execuție printr-o abordare bazată pe grafuri, dar necesită înțelegerea grafurilor orientate și a conceptelor de management al stării. Pentru majoritatea dezvoltatorilor noi în sistemele multi-agenți, CrewAI este calea mai rapidă către un prototip funcțional.
Concluzie
CrewAI oferă o platformă practică pentru gestionarea sistemelor multi-agenți. Fie că este vorba de extragerea conținutului sau de delegarea sarcinilor, acest framework susține colaborarea dintre agenți și îi ajută să se adapteze și să se îmbunătățească.
Prin integrarea instrumentelor și oferirea unei structuri organizate, CrewAI le face dezvoltatorilor mai ușoară gestionarea interacțiunilor dintre agenți, distribuirea sarcinilor și asigurarea performanței optime.