Stumm MetaGPT: Komplette Guide zum Beschten AI Agent, deen elo verfügbar ass - Unite.AI
Connect mat eis

Kënschtlech Allgemeng Intelligenz

MetaGPT: Komplette Guide zum Beschten AI Agent, deen elo verfügbar ass

mm

publizéiert

 on

MetaGPBassed Illustratioun vu Mënsch a Maschinn ZesummenaarbechtT

Mat Large Language Models (LLMs) wéi ChatGPT, huet OpenAI e Stroum an der Entreprise an der Benotzeradoptioun erlieft, deen de Moment ongeféier $ 80 Milliounen u monatlecht Akommes erakënnt. Laut engem kierzen vun The Information, ass d'San Francisco-baséiert Firma gemellt am Tempo fir $ 1 Milliard an alljährlechen Einnahmen ze erreechen.

Déi leschte Kéier hu mer an d'Déift AutoGPT an GPT-Engineering, déi fréi Mainstream Open-Source LLM-baséiert AI Agenten entwéckelt fir komplex Aufgaben ze automatiséieren. Wärend verspriechend, haten dës Systemer hire fairen Undeel vun Themen: onkonsequent Resultater, Leeschtungsfläschen a Aschränkungen beim Ëmgank mat villsäiteger Ufuerderungen. Si weisen Kompetenzen an der Code Generatioun, awer hir Fäegkeeten stoppen dacks do. Si feelen kritesch Projektmanagement Funktionalitéite wéi PRD Generatioun, technesch Design Generatioun, an API Interface Prototyping.

gitt Meteen- e Multi-Agent System dee Grouss Sproochmodeller vum Sirui Hong benotzt, fusionéiert Standardiséierter Operatiounsprozeduren (SOPs) mat LLM-baséiert Multi-Agent Systemer. Dëst entstanen Paradigma stéiert déi existent Aschränkungen vun LLMs fir effektiv Zesummenaarbecht an Aufgab Zersetzung a komplexen, real-Welt Uwendungen ze fërderen.

D'Schéinheet vu MetaGPT läit a senger Strukturéierung. Et kapitaliséiert op Metaprogramméierungstechnike fir Code an Echtzäit ze manipuléieren, analyséieren an transforméieren. Zil? Fir eng agile, flexibel Softwarearchitektur ze aktualiséieren déi sech un dynamesch Programméierungsaufgaben upassen kann.

Agile Entwécklung - Metagpt

Agile Entwécklung

SOPs handelen hei als Metafunktioun, koordinéieren Agenten fir automatesch Code ze generéieren baséiert op definéiert Inputen. An einfache Begrëffer, et ass wéi wann Dir en héich koordinéiert Team vu Software Ingenieuren an en adaptéierbaren, intelligente Softwaresystem ëmgewandelt hutt.

MetaGPT Framework verstoen

Fundamental & Zesummenaarbecht Schichten

D'Architektur vun MetaGPT ass an zwou Schichten opgedeelt: d'Fundamental Components Layer an d'Collaboration Layer.

  1. Fundamental Komponente Layer: Dës Layer konzentréiert sech op eenzel Agent Operatiounen an erliichtert system-breet Informatiounsaustausch. Et stellt Kärbausteng wéi Ëmfeld, Memory, Rollen, Aktiounen an Tools vir. D'Ëmwelt setzt d'Bühn fir gedeelt Aarbechtsberäicher a Kommunikatiounsweeër, wärend Memory déngt als historescht Datearchiv. Rollen encapsuléieren Domain-spezifesch Expertise, Aktiounen ausféieren modulär Aufgaben, an Tools bidden allgemeng Servicer. Dës Schicht déngt wesentlech als Betribssystem fir d'Agenten. Méi Detailer iwwer wéi dës zesumme schaffen sinn am Artikel verfügbar 'Doriwwer eraus ChatGPT; AI Agent: Eng nei Welt vun Aarbechter"
  2. Zesummenaarbecht Layer: Gebaut uewen op Grondkomponenten, dës Schicht geréiert a streamlines d'Zesummenaarbecht vun eenzelnen Agenten. Et stellt zwee Mechanismen vir: Knowledge Sharing an Encapsulating Workflows.
    • Wëssen Deelen: Dëst handelt als de kollaborativen Klebstoff deen d'Agente matenee verbënnt. Agente kënnen Informatioun op verschiddene Niveauen späicheren, recuperéieren an deelen, dofir Redundanz reduzéieren an d'operativ Effizienz verbesseren.
    • Encapsulating Workflows: Dëst ass wou Standardiséierter Operatiounsprozeduren (SOPs) an d'Spill kommen. SOPs handelen als Blueprints déi Aufgaben an handhabbare Komponenten ofbriechen. Agenten ginn dës Ënneraufgaben zougewisen, an hir Leeschtung ass mat standardiséierte Ausgab ausgeriicht.

MetaGPT benotzt och "Roll Definitiounen” fir verschidde spezialiséiert Agenten wéi Produktmanager, Architekten, asw. Dës Rollen si charakteriséiert duerch Schlësselattributer wéi Numm, Profil, Zil, Aschränkungen a Beschreiwung.

Ausserdeem, "Anker Agenten" liwwert Rollspezifesch Leedung fir dës Agenten. Zum Beispill kann d'Roll vun engem Produktmanager initialiséiert ginn mat der Beschränkung "effizient en erfollegräicht Produkt ze kreéieren." Anker Agenten suergen datt d'Behuelen vun den Agenten mat den iwwergräifende Ziler ausriichten, an domat d'Performance optimiséieren.

Kognitiv Prozesser an MetaGPT Agenten

MetaGPT kann observéieren, denken, reflektéieren an handelen. Si funktionnéieren duerch spezifesch Verhalensfunktiounen wéi _think(), _observe(), _publish_message(), etc. Dës kognitiv Modelléierung equipéiert d'Agenten fir aktiv Léierpersonal ze sinn, déi sech adaptéiere kënnen an evoluéiere kënnen.

  1. Wat: Agenten scannen hir Ëmwelt an integréieren Schlësseldaten an hir Erënnerung.
  2. Denken & reflektéieren: Duerch d' _think() Funktioun, Rollen bewosst virum Aktiounen ënnerhuelen.
  3. Emissioun Messagen: Agenten benotzt _publish_message() fir aktuell Aufgabstatusen a verbonne Aktiounsrecords ze deelen.
  4. Wëssen Nidderschlag & Akt: Agenten bewäerten erakommen Messagen an aktualiséieren hir intern Repositories ier se op den nächste Wee vun der Handlung entscheeden.
  5. Staat Management: Mat Features wéi Task Sperrung a Statusaktualiséierung kënnen d'Rollen multiple Handlungen sequenziell ouni Ënnerbriechung veraarbechten, déi real Welt mënschlech Zesummenaarbecht spigelen.

Code-Iwwerpréiwung Mechanismen fir MetaGPT

Code Iwwerpréiwung ass e kritesche Bestanddeel am Softwareentwécklungs Liewenszyklus, awer et ass fehlt a verschiddene populäre Kaderen. Souwuel MetaGPT an AgentVerse Ënnerstëtzung Code review Kënnen, mee MetaGPT geet e Schrëtt weider. Et integréiert och d'Ausféierung vun der Prekompilatioun, wat bei der fréier Fehlererkennung hëlleft an duerno d'Codequalitéit erhéicht. Mat der iterativer Natur vu Kodéierung ass dës Feature net nëmmen en Add-on, awer eng Fuerderung fir all reife Entwécklungskader.

Quantitativ Experimenter, déi iwwer verschidden Aufgaben duerchgefouert goufen, hunn opgedeckt datt MetaGPT seng Géigeparteien a bal all Szenario besser gemaach huet. Pass@1 ass eng Moossnam vun der Fäegkeet vum Kader fir e genee Code an enger eenzeger Iteratioun ze generéieren. Dës Metrik bitt eng méi realistesch Reflexioun vum Utility vun engem Kader an engem praktesche Kader. E méi héije Pass @ 1 Taux bedeit manner Debugging a méi Effizienz, direkt Auswierkungen op Entwécklungszyklen a Käschten. Wann gestapelt géint aner fortgeschratt Code Generatioun Tools wéi Codex, CodeT, a souguer GPT-4, MetaGPT outperforms der Akafszenter. D'Kapazitéit vum Kader fir eng 81.7% ze maachen 82.3% Pass@1 Taux op MënschEval an MBPP Benchmarks.

Vergläicht MBPP a HumanEval Metriken b/w MetaGPT an aner Leading Modeller (https://arxiv.org/pdf/2308.00352.pdf)

Vergläicht MBPP a HumanEval Metriken b/w MetaGPT an aner Leading Modeller (https://arxiv.org/pdf/2308.00352.pdf)

De Framework benotzt och manner Tokens a computational Ressourcen, fir en héije Succès Taux bei enger Ëmwandlung vun traditionelle Software Engineering Käschten z'erreechen. D'Donnéeën uginn eng Moyenne Käschte vun just $1.09 pro Projet mat MetaGPT wat just e Brochdeel ass vun deem wat en Entwéckler fir déiselwecht Aufgab verrechent.

Schrëtt fir lokal MetaGPT op Ärem System z'installéieren

NPM, Python Installatioun

  1. Kontrolléieren & installéieren NPM: Éischt Saache fir d'éischt, sécherstellen datt NPM op Ärem System installéiert ass. Wann et net ass, musst Dir installéieren node.js. Fir ze kontrolléieren ob Dir npm hutt, fuert dëse Kommando an Ärem Terminal: npm --version. Wann Dir eng Versiounsnummer gesitt, sidd Dir gutt fir ze goen.
  2. Ze installéieren mermaid-js, eng Ofhängegkeet fir MetaGPT, lafen: sudo npm install -g @mermaid-js/mermaid-cli or npm install -g @mermaid-js/mermaid-cli
  3. Verifizéiert Python Versioun: Vergewëssert Iech datt Dir Python 3.9 oder méi héich hutt. Fir Är Python Versioun z'iwwerpréiwen, öffnen Ären Terminal an Typ: python --version. Wann Dir net aktuell sidd, download déi lescht Versioun vum Python offiziell Websäit.
  4. Klon MetaGPT Repository: Start mam Klonen vum MetaGPT GitHub Repository mam Kommando git clone https://github.com/geekan/metagpt. Vergewëssert Iech datt Dir Git an Ärem System fir dëst installéiert hutt. Wann net, besicht hei.
  5. Navigéiert op Verzeechnes: Eemol gekloont, navigéiert an de MetaGPT Verzeichnis mam Kommando cd metagpt.
  6. Installatioun: Fëllt de Python Setup Skript aus fir MetaGPT mam Kommando z'installéieren python setup.py install.
  7. Erstellt eng Applikatioun: Run python startup.py "ENTER-PROMPT" --code_review True

Notéiert:

  • Ären neie Projet soll elo am workspace/ Dossier.
  • --code_review True erlaabt de GPT Modell extra Operatiounen ze maachen, déi garantéieren datt de Code präzis leeft, awer bemierkt datt et méi kascht.
  • Wann Dir en Erlaabnisfehler während der Installatioun begéint, probéiert et ze lafen python setup.py install --user als Alternative.
  • Fir Zougang zu spezifesche Verëffentlechungen a weider Detailer, besicht déi offiziell MetaGPT GitHub Verëffentlechungs Säit: MetaGPT Verëffentlechungen.

Docker Installatioun

Fir déi, déi Containeriséierung léiwer maachen, vereinfacht Docker de Prozess:

  • Pull den Docker Image: Luet den offiziellen MetaGPT Bild erof a preparéiert d'Konfiguratiounsdatei:
docker pull metagpt/metagpt:v0.3.1
mkdir -p /opt/metagpt/{config,workspace}
docker run --rm metagpt/metagpt:v0.3.1 cat /app/metagpt/config/config.yaml > /opt/metagpt/config/key.yaml
vim /opt/metagpt/config/key.yaml
  • Run de MetaGPT Container: Féiert de Container mat dem folgenden Kommando aus:
docker run --rm --privileged \
-v /opt/metagpt/config/key.yaml:/app/metagpt/config/key.yaml \
-v /opt/metagpt/workspace:/app/metagpt/workspace \
metagpt/metagpt:v0.3.1 \
python startup.py "Create a simple and interactive CLI based rock, paper and scissors game" --code_review True

MetaGPT konfiguréieren mat Ärem OpenAI API Key

Nom initialen Setup musst Dir MetaGPT mat Ärem OpenAI API Key integréieren. Hei sinn d'Schrëtt fir dat ze maachen:

  1. Situéiert oder Generéiere Ären OpenAI Schlëssel: Dir fannt dëse Schlëssel an Ärem OpenAI Dashboard ënner API Astellungen.
  2. Setzt den API Key: Dir hutt d'Méiglechkeet den API Schlëssel an entweder ze setzen config/key.yaml, config/config.yaml, oder setzt se als Ëmfeldvariabel (env). D'Virrangsbestellung ass config/key.yaml > config/config.yaml > env.
  3. Fir de Schlëssel ze setzen, navigéiert op config/key.yaml an ersetzt de Plazhaltertext mat Ärem OpenAI Schlëssel: OPENAI_API_KEY: "sk-..."

Denkt drun Ären OpenAI API Key ze schützen. Engagéiert et ni an en ëffentleche Repository oder deelt et mat onerlaabten Individuen.

Benotzt-Fall Illustratioun

Ech hunn d'Ziel ginn e CLI-baséiert Rock, Pabeier, a Schéier Spill z'entwéckelen, an MetaGPT huet d'Aufgab erfollegräich ausgefouert.

Drënner ass e Video deen den aktuellen Laf vum generéierte Spillcode weist.

MetaGPT Demo Run

MetaGPT huet e Systemdesigndokument am Markdown geliwwert - eng allgemeng benotzt liicht Markupsprooch. Dës Markdown-Datei war voll mat UML Diagrammer, doduerch eng granulär Vue op den architektonesche Blueprint. Ausserdeem goufen API Spezifikatioune mat HTTP Methoden, Endpunkte, Ufro / Äntwert Objeten a Statuscoden detailléiert.

MetaGPT Ausgang - System Design

MetaGPT Output - System Design Markdown

D'Klass Diagramm detailléiert d'Attributer a Methode vun eisem Game Klass, bitt eng Abstraktioun déi einfach ze verstoen ass. Et visualiséiert souguer den Urufffloss vum Programm, effektiv abstrakt Iddien a konkret Schrëtt verwandelt.

Dëst reduzéiert net nëmmen de manuelle Overhead bei der Planung wesentlech, awer et beschleunegt och den Entscheedungsprozess, a garantéiert datt Är Entwécklungspipeline agil bleift. Mat MetaGPT automatiséiert Dir net nëmmen Code Generatioun, Dir automatiséiert intelligente Projetsplanung, sou datt Dir e kompetitive Virdeel an der rapider Applikatiounsentwécklung bitt.

Fazit: MetaGPT-Revolutionizing Software Development

MetaGPT neidefinéiert d'Landschaft vun der generativer AI a Softwareentwécklung, bitt eng nahtlos Mëschung vun intelligenter Automatisatioun an agile Projektmanagement. Wäit iwwerschratt d'Kapazitéite vun ChatGPT, AutoGPT, an traditionell LangChain Modeller et excels an Aufgab Zersetzung, efficace Code Generatioun, a Projet Planung. Léiere méi iwwer

Hei sinn d'Haaptvirdeeler aus dësem Artikel:

  1. D'Kraaft vun der Meta-Programméierung: Andeems Dir Metaprogramméiere benotzt, bitt MetaGPT en agile an adaptiven Software Kader. Et iwwerschreift déi schmuel Funktionalitéit vun legacy Tools a stellt eng transformativ Approche vir, déi net nëmme Kodéierung handhabt, awer och Projektmanagement an Entscheedungsprozesser.
  2. Zwee-Schicht Architektur: Mat senge fundamentalen a kollaborativen Schichten erstellt MetaGPT effektiv e synergisteschen Ökosystem wou Agenten kohäsiv kënne schaffen, ähnlech wéi en Expert geréiert Software Team.
  3. Optimiséiert Code Bewäertung: Iwwert just Generéiere Code, MetaGPT bitt Precompilation Ausféierung Fonctiounen, déi am Fong e fréi-Warnung System fir Feeler ass. Dëst spuert net nëmmen Debugging Zäit awer garantéiert och Codequalitéit.
  4. Kognitiv Agenten: MetaGPT's intelligent Agenten, voll mat kognitiven Funktiounen wéi _observe(), _think(), an _publish_message(), evoluéieren an adaptéieren, a garantéiert datt Är Softwareléisung net nëmmen kodéiert ass, mee 'intelligent' ass.
  5. Installatioun & Deployment: Mir hunn illustréiert datt MetaGPT einfach ageriicht ka ginn, egal ob Dir eng lokal Installatioun iwwer npm a Python léiwer, oder Containeriséierung iwwer Docker.

Ech hunn déi lescht fënnef Joer verbruecht an déi faszinéierend Welt vum Machine Learning an Deep Learning ënnerzegoen. Meng Leidenschaft an Expertise hunn mech dozou gefouert fir zu iwwer 50 verschiddenste Software Engineering Projeten bäizedroen, mat engem besonnesche Fokus op AI / ML. Meng kontinuéierlech Virwëtzegkeet huet mech och Richtung Natural Language Processing gezunn, e Feld dat ech gär hunn weider ze entdecken.