AUTOGEN

Învață Microsoft AutoGen: Sisteme Multi-Agent & Conversații Autonome: comenzi, scurtături și ghid practic

91 de comenzi 9 categorii Comunitate & Q&A AI

Microsoft AutoGen este cel mai avansat și flexibil framework de orchestrare a sistemelor multi-agent capabile să colaboreze autonom, să scrie și să execute cod în medii sigure (Docker), să utilizeze unelte personalizate și să rezolve sarcini complexe prin conversații iterative.

Această secțiune oferă o documentație exhaustivă structurată pe 9 capitole specializate: de la conceptele de bază (ConversableAgent, AssistantAgent, UserProxyAgent) și orchestrarea avansată a grupurilor (GroupChat, selecție dinamică a vorbitorilor), până la arhitectura asincronă modernă AutoGen 0.4, sistemul universal Magentic-One și mediul vizual AutoGen Studio.

Instalare Rapidă AutoGen

Alegeți comanda potrivită în funcție de ecosistemul vizat:

# Versiunea stabilă clasică (0.2) cu suport complet de instrumente
pip install pyautogen

# Noul ecosistem AutoGen 0.4 complet asincron și modular
pip install autogen-agentchat autogen-ext[openai,docker]

# Lansarea interfeței vizuale AutoGen Studio
pip install autogenstudio
autogenstudio ui --port 8081

Ghidul Complet al Comenzilor, Claselor & Tehnicilor AutoGen

Tabelul de mai jos centralizează toate clasele, metodele, uneltele și tehnicile de producție din ecosistemul Microsoft AutoGen:

Comandă / Clasă / Tehnică AutoGen Descriere Tehnică & Caz de Utilizare
Fundamente, Arhitectură & Configurare
Noua Arhitectură Modulară AutoGen 0.4 (AgentChat) Trecerea la noul ecosistem complet asincron cu separare clară între modele, runtime și agenți.
Conectarea AutoGen la Modele Locale (Ollama, vLLM & LM Studio) Rularea sistemelor multi-agent 100% private fără costuri de API extern, folosind servere locale compatibile OpenAI.
Instalarea Pachetului Microsoft AutoGen (0.2 & 0.4) Configurarea mediului de lucru Python și instalarea pachetelor principale AutoGen cu extensii opționale.
Structura Fișierului OAI_CONFIG_LIST Formatul standard JSON pentru declararea conexiunilor la OpenAI, Azure OpenAI, Anthropic sau servere locale.
Arhitectura Multi-Agent: Actor Model și Mesagerie Asincronă Înțelegerea modului în care agenții comunică prin schimb de mesaje structurate și își mențin starea internă.
Configurarea Modelelor LLM cu config_list_from_json Încărcarea flexibilă a credențialelor și parametrilor de generare din fișiere de configurare sau variabile de mediu.
Gestionarea Limitelor de Rata (Rate Limits) & Retry Policies Protejarea sistemului împotriva întreruperilor cauzate de RateLimitError și timeouts temporare.
Runtime-ul Agenților în AutoGen 0.4 (SingleThreadedAgentRuntime) Motorul intern responsabil de livrarea mesajelor, rutarea apelurilor și execuția asincronă.
Jurnalizarea Sesiunilor Multi-Agent cu runtime_logging Auditarea fiecărei replici, a codului generat și a costurilor API într-o bază de date SQLite dedicată.
Sistemul de Caching pentru Reducerea Costurilor de API Salvarea răspunsurilor LLM pe disc sau în Redis pentru reluarea instantanee a testelor fără costuri suplimentare.
Tipuri de Agenți & Conversații Directe
Rolul și Configurarea Clasei AssistantAgent Agentul configurat implicit pentru a scrie cod Python, a analiza date și a propune soluții la problemele propuse.
Clasa Fundamentală ConversableAgent Construirea agenților personalizați care pot trimite și primi mesaje, susține conversații și genera acțiuni.
Moduri de Intervenție Umană: ALWAYS, NEVER și TERMINATE Configurarea gradului de autonomie al agenților: aprobare pas cu pas, autonomie completă sau doar la final.
Limitarea Replicilor Automate (max_consecutive_auto_reply) Plafonarea numărului de răspunsuri consecutive generate fără intervenție umană pentru controlul costurilor.
Condiții Personalizate de Terminare (is_termination_msg) Definirea funcțiilor lambda sau callback-urilor care opresc dialogul când s-a atins obiectivul dorit.
Proiectarea Mesajelor de Sistem pentru Agenți Specializați Structurarea instrucțiunilor de rol, limitelor de competență și formatului de ieșire pentru fiecare agent din echipă.
Clasa UserProxyAgent: Execuție de Cod și Interfață Umană Agentul care rulează scripturile generate de asistent pe sistemul local sau în Docker și cere input utilizatorului dacă e necesar.
Inițierea Conversației Directe cu initiate_chat Declanșarea dialogului autonom între doi agenți și colectarea rezultatelor finale ale execuției.
Inspectarea Istoricului și Rezultatelor prin ChatResult Extragerea datelor agregate, a tokenilor consumați și a concluziilor finale dintr-o sesiune de chat.
Resetarea Memoriei și Stării Interne a Agenților (reset) Ștergerea istoricului conversațional pentru a începe o nouă sarcină curată fără influența deciziilor anterioare.
Grupuri de Agenți & Orchestram Conversațională
Selecția Automată a Vorbitorilor (speaker_selection_method=’auto’) Permiterea modelului LLM din manager să aleagă dinamic cel mai potrivit agent pe baza contextului curent.
Clasa GroupChat: Organizarea Echipelor Multi-Agent Definirea mediului partajat în care mai mulți agenți specializați pot discuta și colabora pe aceeași sarcină.
Rotația Secvențială între Agenți (Round-Robin) Trecerea strictă a cuvântului de la un agent la următorul în ordinea declarării în listă.
Clasa GroupChatManager: Conducerea și Moderarea Discuției Agentul moderator care analizează starea grupului și decide ce specialist trebuie să ia cuvântul în continuare.
Grafuri de Tranziție Permise (allowed_or_disallowed_speaker_transitions) Restricționarea strictă a căilor de comunicare pentru a crea arhitecturi de lucru în graf fără cicluri nepermise.
Funcții Personalizate de Selecție a Vorbitorilor (Custom Callback) Implementarea logicii de tranziție bazată pe reguli de business concrete scrise în Python pur.
Optimizarea Selecției de Vorbitori cu Modele LLM Rapide Utilizarea unui model foarte ieftin și rapid (ex: GPT-4o-mini) exclusiv pentru orchestrare și moderare.
Selecția Manuală a Vorbitorului prin Intervenție Umană Solicitarea explicită a utilizatorului de a tasta numele agentului care trebuie să formuleze următorul răspuns.
Selecția Aleatorie a Vorbitorilor (Random Selection) Alegerea aleatorie a următorului vorbitor din listă, utilă în simulări sociale sau jocuri de rol (roleplay).
Salvarea și Restaurarea Stării unui GroupChat (Persistence) Persistența istoricului de mesaje pe disc pentru reluarea unei dezbateri întrerupte fără pierdere de context.
Conversații Imbricate cu register_nested_chats Delegarea automată a sub-sarcinilor către grupuri interne de lucru înainte de formularea răspunsului principal.
Execuție de Cod & Securitate
Configurarea Execuției de Cod cu code_execution_config Setarea directorului de lucru, a mecanismului de rulare și a timpului maxim alocat scripturilor generate.
Execuția Securizată de Cod în Containere Izolate Docker Rularea codului Python generat în containere Docker de unică folosință pentru protecția sistemului gazdă.
Clasa DockerCommandLineCodeExecutor pentru Întreprinderi Managementul avansat al containerelor Docker: refolosirea containerelor calde, limite de RAM și CPU.
Limitarea Timpului de Execuție (Timeout Protection) Oprirea forțată a proceselor blocate în bucle infinite `while True` sau apeluri de rețea fără răspuns.
Clasa LocalCommandLineCodeExecutor Execuția locală directă a scripturilor Python și comenzilor de terminal prin noul modul modular `autogen.coding`.
Extragerea Blocurilor de Cod din Răspunsurile Agenților Mecanismul intern de identificare a tagurilor markdown de tip „`python și „`sh în textul conversației.
Execuția de Cod în Medii Virtuale Izolate (VirtualEnv) Prevenirea poluării pachetelor de sistem prin atribuirea unui mediu Python virtual temporar.
Bucla Autonomă de Corectură și Debugging (Feedback Loop) Procesul iterativ în care erorile din consolă (stderr) devin următorul prompt pentru agentul de programare.
Instalarea Dinamică a Pachetelor în Mediul de Execuție Permiterea agenților de a instala automat bibliotecile lipsă detectate în timpul execuției.
Execuția Interactivă în Nuclee Jupyter (Jupyter Code Executor) Păstrarea stării variabilelor și a tabelelor mari în memorie între blocuri consecutive de cod.
Înregistrarea & Apelul de Unelte
Decoratorii register_for_llm și register_for_execution Separarea clară între schema expusă către modelul LLM și mediul în care se execută funcția Python nativă.
Înregistrarea Funcțiilor Python Native ca Unelte Metoda programmatică de înregistrare a uneltelor fără utilizarea decoratorilor inline.
Crearea unei Unelte de Căutare Web în Timp Real Conectarea echipei multi-agent la internet pentru informații actualizate în timp real.
Conectarea Agenților la Baze de Date Relaționale (SQL Tool) Executarea de interogări SQL `SELECT` cu limitare de citire pentru raportare automată pe baze de date PostgreSQL sau SQLite.
Validarea Parametrilor Uneltelor prin Tipuri Pydantic Garantarea integrității datelor trimise de model înainte de apelarea funcțiilor critice.
Definirea Uneltelor Asincrone (Async Tools) Optimizarea performanței prin unelte `async def` pentru operațiuni I/O de rețea care rulează fără blocaje.
Unelte Dedicate pentru Sistemul de Fișiere (FS Tools) Operațiuni sigure de citire, listare și scriere de fișiere cu validarea căilor de acces.
Tratarea Excepțiilor și Notificarea Agentului fără Crash Încapsularea erorilor în mesaje descriptive pentru a permite agentului să își corecteze parametrii.
Generarea Automată a Uneltelor din Specificații OpenAPI / Swagger Transformarea documentațiilor de API REST în funcții AutoGen gata de apelat fără cod intermediar manual.
Integrarea Serverelor Model Context Protocol (MCP Bridge) Conectarea agenților AutoGen la uneltele standardizate din ecosistemul Anthropic / Model Context Protocol.
RAG & Baze de Cunoștințe
Integrarea ChromaDB ca Bază Vectorială Implicită Persistența colecțiilor de embeddings pe disc fără a necesita un server extern de baze vectoriale.
Colaborarea cu RetrieveAssistantAgent Asistentul configurat pentru a solicita context suplimentar (Update Context) atunci când informația este incompletă.
Clasa RetrieveUserProxyAgent pentru Căutare Semantică Agentul specializat în indexarea documentelor locale, fragmentare semantică și injectarea contextului în prompt.
Integrarea Bazei de Date Vectoriale Scalabile Qdrant Conectarea la clustere Qdrant de producție pentru interogări pe milioane de documente cu latență redusă.
Strategii de Fragmentare (Chunking) a Documentelor Împărțirea inteligentă a fișierelor PDF, Markdown și TXT pe capitole sau paragrafe cu suprapunere semantică.
Indexarea Depozitelor de Cod Sursă (Codebook RAG) Specializarea mecanismului RAG pe fișiere sursă .py, .js, .sql pentru asistență pe baze de cod mari.
Căutare Hibridă: Text Complet și Relevanță Semantică Combinarea algoritmilor BM25 (potrivire exactă de cuvinte cheie) cu vectori densi pentru acuratețe maximă.
Mecanismul de Actualizare Dinamică a Contextului (Update Context) Ciclul în care asistentul solicită mai multe detalii dacă primele fragmente nu conțineau răspunsul.
Configurarea Modelelor de Embeddings Personalizate Folosirea modelelor Sentence Transformers locale sau a API-ului text-embedding-3-small de la OpenAI.
Evaluarea Fidelității Răspunsurilor RAG Multi-Agent Tehnici de audit pentru a măsura halucinațiile și fidelitatea răspunsurilor generate de echipă.
AutoGen v0.4 Modern & Arhitectură Event-Driven
Conceptele Fundamentale ale Ecosistemului AutoGen 0.4 Arhitectura bazată pe evenimente (Event-Driven): mesaje tipizate, topicuri de difuzare și procesare asincronă.
Clasa RoutedAgent și Handlerele de Mesaje (@message_handler) Construirea agenților moderni cu metode dedicate pentru fiecare tip de mesaj primit.
Trimiterea Mesajelor Directe între Agenți (Direct Messaging) Comunicarea de tip cerere-răspuns (Point-to-Point) între doi agenți specifici identificați prin AgentId.
Întreruperea Operațiunilor de Lungă Durată (CancellationToken) Oprirea grațioasă a sarcinilor de calcul tensorial sau a cererilor LLM în derulare la solicitarea utilizatorului.
Difuzarea Mesajelor prin Topicuri (Pub/Sub & Broadcast) Trimiterea unui eveniment către toți agenții abonați la un anumit canal de comunicare fără a le cunoaște adresele directe.
Serializarea Mesajelor și Stării în Formate Standard JSON Salvarea și transmiterea stării agenților prin protocoale de rețea în formate interoperabile.
Rularea Distribuită a Agenților prin gRPC (Distributed Runtime) Execuția agenților pe clustere distribuite pe zeci de mașini diferite conectate prin gRPC de mare viteză.
Construirea unui Agent Personalizat de la Zero (BaseAgent) Moștenirea directă a clasei de bază `BaseAgent` pentru a crea entități cu logică non-LLM (reguli deterministe).
Comunicarea Inter-Proces fără Memorie Partajată Izolarea agenților în procese Python separate ale sistemului de operare pentru stabilitate totală.
Configurarea Declarativă a Agenților prin ComponentConfig Definirea sistemelor multi-agent în fișiere YAML sau JSON încărcabile dinamic la runtime.
Magentic-One & Agenți Autonomi Avansați
Arhitectura Generală Magentic-One de la Microsoft Sistemul multi-agent universal de clasă mondială conceput pentru rezolvarea autonomă a sarcinilor complexe pe internet.
Agentul Orchestrator din Magentic-One: Creierul Central Planificarea inițială a pașilor, evaluarea progresului și delegarea sarcinilor către sub-agenți.
Agentul WebSurfer: Navigare Web și Interacțiune Vizuală Navigarea autonomă pe site-uri, completarea formularelor și extragerea de informații prin capturi de ecran și accesibilitate.
Agentul FileSurfer: Explorarea Structurilor de Fișiere Navigarea în directoare de fișiere, inspecția arhivelor zip și extragerea informațiilor din documente locale.
Registrul de Sarcini (Task Ledger) și Urmărirea Progresului Mecanismul de memorie de lucru care împiedică echipa să repete pașii deja efectuați sau să uite scopul final.
Agentul ComputerTerminal: Execuția Comenzilor de Sistem Consola securizată în care sunt rulate comenzile shell și scripturile produse de agentul Coder.
Agentul Coder: Scrierea de Scripturi Complexe de Calcul Generarea scripturilor avansate de analiză numerică, transformare de date și procesare algoritmică.
Personalizarea Agentului WebSurfer pentru Medii Enterprise Configurarea proxy-urilor corporative, a certificatelor SSL interne și a rezoluției de afișare.
Evaluarea Performanței pe Seturi de Date GAIA și WebArena Măsurarea eficienței Magentic-One în comparație cu agenții umani pe sarcini de cercetare online.
Rezolvarea Sarcinilor Multimodale (Text, Imagini și Tabele) Procesarea combinată a imaginilor, fișierelor grafice și a textului descriptiv într-un singur flux integrat.
AutoGen Studio, UI & Producție Enterprise
Instalarea și Lansarea Interfeței Grafice AutoGen Studio Pornirea mediului vizual fără cod pentru crearea, prototiparea și testarea interactivă a agenților.
Crearea și Gestionarea Abilităților (Skills) în Studio Definirea funcțiilor de utilitate și a uneltelor reutilizabile accesibile tuturor agenților din sistem.
Configurarea Fluxurilor de Lucru (Workflows) Vizuale Conectarea agenților, atribuirea abilităților și setarea modelelor LLM fără a scrie scripturi Python de inițializare.
Testarea Interactivă în Secțiunea Playground a Studioului Depanarea în timp real a conversațiilor dintre agenți cu inspectarea pas cu pas a fiecărei replici.
Adăugarea Modelelor Locale în AutoGen Studio Conectarea interfeței grafice la Ollama sau servere interne pentru testare gratuită și privată.
Exportul și Partajarea Configurațiilor (Gallery Export) Salvarea fluxurilor create în Studio și importarea lor directă în codul aplicației Python de producție.
Streaming de Evenimente și Răspunsuri prin WebSockets Transmiterea fiecărei replici intermediare și a ieșirilor de cod în timp real către interfețe React sau Vue.
Încapsularea Echipei de Agenți într-un API REST FastAPI Publicarea sistemului multi-agent ca microserviciu REST modern gata de integrat în aplicații mobile sau web.
Monitorizarea Costurilor și Plafonarea Bugetelor de Rulare Calculul exact al consumului de tokeni (prompt, completion) și al cheltuielilor în dolari pe fiecare sesiune.
Configurația de Producție cu Docker Compose Rularea completă a stivei AutoGen, AutoGen Studio, bazei vectoriale Qdrant și cache-ului Redis pe servere cloud.

AutoGen Studio, UI & Producție Enterprise 10 comenzi

Magentic-One & Agenți Autonomi Avansați 10 comenzi

Fundamente, Arhitectură & Configurare 10 comenzi

Execuție de Cod & Securitate 10 comenzi

RAG & Baze de Cunoștințe 10 comenzi

Tipuri de Agenți & Conversații Directe 10 comenzi

Grupuri de Agenți & Orchestram Conversațională 11 comenzi

AutoGen v0.4 Modern & Arhitectură Event-Driven 10 comenzi

Înregistrarea & Apelul de Unelte 10 comenzi

Învață AI • Comunitate & Q&A

Discuții, Întrebări & Coduri / Prompturi Învață Microsoft AutoGen: Sisteme Multi-Agent & Conversații Autonome

Ai o nelămurire despre modulul Învață Microsoft AutoGen: Sisteme Multi-Agent & Conversații Autonome, cauți o soluție sau vrei să împărtășești un prompt sau fragment util de cod? Trimite mai jos contribuția ta.

🤖

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau resurse pentru această pagină. Dacă ai testat un prompt sau ai un snippet util, adaugă-l mai jos pentru comunitate.

Comunitate AI Adaugă o întrebare sau distribuie un cod / prompt

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.