výhonek MetaGPT: Kompletní průvodce nejlepším agentem AI dostupným právě teď – Unite.AI
Spojte se s námi

Umělá obecná inteligence

MetaGPT: Kompletní průvodce nejlepším agentem AI dostupným právě teď

mm

Zveřejněno

 on

MetaGPBassed Ilustrace spolupráce lidí a strojůT

S velkými jazykovými modely (LLM), jako je ChatGPT, byla OpenAI svědkem prudkého nárůstu osvojení podniků a uživatelů, přičemž v současné době dosahuje měsíčních příjmů kolem 80 milionů dolarů. Podle a poslední zpráva podle The Information je společnost se sídlem v San Franciscu údajně na tempu, aby dosáhla ročního obratu 1 miliardy dolarů.

Naposledy jsme se ponořili AutoGPT a GPT-Engineering, raní mainstreamoví agenti umělé inteligence na bázi LLM s otevřeným zdrojovým kódem navržení k automatizaci složitých úloh. I když byly tyto systémy slibné, měly svůj podíl na problémech: nekonzistentní výsledky, úzká místa výkonu a omezení při zvládání mnohostranných požadavků. Ukazují odbornost v generování kódu, ale jejich schopnosti zde často končí. Chybí jim důležité funkce projektového řízení, jako je generování PRD, generování technického návrhu a prototypování rozhraní API.

vstoupit MetaGPT— multiagentní systém, který využívá modely velkých jazyků od Sirui Hong spojuje standardizované operační postupy (SOP) s multiagentními systémy založenými na LLM. Toto vznikající paradigma narušuje stávající omezení LLM při podpoře efektivní spolupráce a rozkladu úkolů ve složitých aplikacích v reálném světě.

Krása MetaGPT spočívá v jeho strukturování. Využívá techniky metaprogramování pro manipulaci, analýzu a transformaci kódu v reálném čase. Cíl? Aktualizovat agilní, flexibilní softwarovou architekturu, která se dokáže přizpůsobit úlohám dynamického programování.

Agilní vývoj - Metagpt

Agilní rozvoj

SOP zde fungují jako metafunkce, koordinující agenty k automatickému generování kódu na základě definovaných vstupů. Jednoduše řečeno, je to, jako byste proměnili vysoce koordinovaný tým softwarových inženýrů v adaptabilní, inteligentní softwarový systém.

Pochopení rámce MetaGPT

Základní a kolaborační vrstvy

Architektura MetaGPT je rozdělena do dvou vrstev: vrstva Foundational Components Layer a vrstva Collaboration Layer.

  1. Vrstva základních komponent: Tato vrstva se zaměřuje na jednotlivé operace agentů a usnadňuje výměnu informací v rámci celého systému. Představuje základní stavební bloky, jako je prostředí, paměť, role, akce a nástroje. Prostředí vytváří půdu pro sdílené pracovní prostory a komunikační cesty, zatímco paměť slouží jako archiv historických dat. Role zapouzdřují odborné znalosti specifické pro doménu, akce provádějí modulární úlohy a nástroje nabízejí běžné služby. Tato vrstva v podstatě slouží jako operační systém pro agenty. Další podrobnosti o tom, jak tyto funkce spolupracují, jsou k dispozici v článku „Beyond ChatGPT; AI Agent: Nový svět pracovníků"
  2. Vrstva spolupráce: Tato vrstva, postavená na základních komponentách, spravuje a zefektivňuje spolupráci jednotlivých agentů. Zavádí dva mechanismy: Sdílení znalostí a Zapouzdření pracovních toků.
    • Sdílení znalostí: Toto funguje jako společné lepidlo, které spojuje agenty dohromady. Agenti mohou ukládat, získávat a sdílet informace na různých úrovních, čímž snižují redundanci a zvyšují provozní efektivitu.
    • Zapouzdření pracovních postupů: Zde vstupují do hry standardizované operační postupy (SOP). SOP fungují jako plány, které rozdělují úkoly na spravovatelné komponenty. Agentům jsou přiděleny tyto dílčí úkoly a jejich výkon je sladěn se standardizovanými výstupy.

MetaGPT také používá „Definice rolí” k zahájení různých specializovaných agentů, jako jsou produktoví manažeři, architekti atd., jak jsme diskutovali výše. Tyto role jsou charakterizovány klíčovými atributy, jako je jméno, profil, cíl, omezení a popis.

Dále, „Kotevní agenti” poskytuje těmto agentům pokyny pro konkrétní role. Role produktového manažera může být například inicializována s omezením „efektivního vytváření úspěšného produktu“. Kotevní agenti zajišťují, že chování agentů odpovídá zastřešujícím cílům, a tím optimalizuje výkon.

Kognitivní procesy v MetaGPT Agentech

MetaGPT může pozorovat, myslet, reflektovat a jednat. Fungují prostřednictvím specifických behaviorálních funkcí, jako je např _think(), _observe(), _publish_message(), atd. Toto kognitivní modelování vybavuje agenty, aby byli aktivními studenty, kteří se mohou adaptovat a vyvíjet.

  1. Pozorovat: Agenti skenují své prostředí a začleňují klíčová data do své paměti.
  2. Mysli a uvažuj: Skrz _think() funkce, role promyšlené před provedením akcí.
  3. Vysílání zpráv: Použité prostředky _publish_message() sdílet aktuální stavy úkolů a související záznamy akcí.
  4. Znalosti Srážky a zákon: Agenti vyhodnocují příchozí zprávy a aktualizují svá interní úložiště, než se rozhodnou o dalším postupu.
  5. Řízení státu: Díky funkcím, jako je zamykání úloh a aktualizace stavu, mohou role zpracovávat více akcí sekvenčně bez přerušení, což odráží skutečnou lidskou spolupráci.

Mechanismy kontroly kódu pro MetaGPT

Kontrola kódu je kritickou součástí životního cyklu vývoje softwaru, přesto v několika populárních frameworkech chybí. Jak MetaGPT, tak AgentVerse podporují funkce kontroly kódu, ale MetaGPT jde ještě o krok dále. Zahrnuje také provádění předkompilace, které napomáhá včasné detekci chyb a následně zvyšuje kvalitu kódu. Vzhledem k iterativní povaze kódování není tato funkce pouze doplňkem, ale požadavkem pro jakýkoli vyspělý vývojový rámec.

Kvantitativní experimenty prováděné napříč několika úkoly odhalily, že MetaGPT překonal své protějšky téměř ve všech scénářích. Pass@1 je měřítkem schopnosti frameworku generovat přesný kód v jediné iteraci. Tato metrika nabízí realističtější odraz užitečnosti rámce v praktickém prostředí. Vyšší rychlost Pass@1 znamená méně ladění a vyšší efektivitu, což má přímý dopad na vývojové cykly a náklady. Při srovnání s jinými pokročilými nástroji pro generování kódu, jako je např Kodex, CodeTa dokonce i GPT-4, MetaGPT překoná obchoďák. Schopnost rámce dosáhnout 81.7% na 82.3% Pass@1 sazba zapnuta HumanEval a MBPP měřítka.

Porovnání MBPP a HumanEval Metrics b/w MetaGPT a dalších předních modelů (https://arxiv.org/pdf/2308.00352.pdf)

Porovnání MBPP a HumanEval Metrics b/w MetaGPT a dalších předních modelů (https://arxiv.org/pdf/2308.00352.pdf)

Rámec také využívá méně tokenů a výpočetních zdrojů a dosahuje vysoké úspěšnosti za zlomek nákladů na tradiční softwarové inženýrství. Údaje naznačovaly průměrné náklady ve výši spravedlivých $1.09 na projekt s MetaGPT, což je jen zlomek toho, co by si vývojář účtoval za stejný úkol.

Kroky k místní instalaci MetaGPT na váš systém

NPM, instalace Pythonu

  1. Zkontrolujte a nainstalujte NPM: Nejprve se ujistěte, že je ve vašem systému nainstalován NPM. Pokud ne, budete muset nainstalovat node.js. Chcete-li zkontrolovat, zda máte npm, spusťte tento příkaz ve svém terminálu: npm --version. Pokud vidíte číslo verze, můžete začít.
  2. Chcete-li nainstalovat mermaid-js, závislost pro MetaGPT, spusťte: sudo npm install -g @mermaid-js/mermaid-cli or npm install -g @mermaid-js/mermaid-cli
  3. Ověřte verzi Pythonu: Ujistěte se, že máte Python 3.9 nebo vyšší. Chcete-li zkontrolovat verzi Pythonu, otevřete terminál a zadejte: python --version. Pokud nejste aktuální, stáhněte si nejnovější verzi z Oficiální stránky Pythonu.
  4. Klonování úložiště MetaGPT: Začněte klonováním úložiště MetaGPT GitHub pomocí příkazu git clone https://github.com/geekan/metagpt. Ujistěte se, že máte ve svém systému nainstalovaný Git. Pokud ne, navštivte zde.
  5. Přejděte do adresáře: Po naklonování přejděte do adresáře MetaGPT pomocí příkazu cd metagpt.
  6. Instalace: Spusťte instalační skript Pythonu a nainstalujte MetaGPT pomocí příkazu python setup.py install.
  7. Vytvořit aplikaci: Spustit python startup.py "ENTER-PROMPT" --code_review True

Poznámka:

  • Váš nový projekt by nyní měl být v workspace/ adresáře.
  • --code_review True umožní modelu GPT provádět další operace, které zajistí přesný chod kódu, ale mějte na paměti, že to bude dražší.
  • Pokud během instalace narazíte na chybu oprávnění, zkuste spustit python setup.py install --user jako alternativa.
  • Pro přístup ke konkrétním verzím a další podrobnosti navštivte oficiální stránku MetaGPT GitHub: Vydání MetaGPT.

Instalace dockeru

Pro ty, kteří preferují kontejnerizaci, Docker zjednodušuje proces:

  • Vytáhněte obrázek Docker: Stáhněte si oficiální obrázek MetaGPT a připravte konfigurační soubor:
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
  • Spusťte MetaGPT Container: Spusťte kontejner pomocí následujícího příkazu:
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

Konfigurace MetaGPT pomocí klíče OpenAI API

Po úvodním nastavení budete muset integrovat MetaGPT s vaším OpenAI API Key. Postupujte takto:

  1. Najděte nebo vygenerujte svůj klíč OpenAI: Tento klíč najdete na svém OpenAI Dashboard v nastavení API.
  2. Nastavte klíč API: Máte možnost umístit klíč API do obou config/key.yaml, config/config.yamlnebo ji nastavte jako proměnnou prostředí (env). Přednostní pořadí je config/key.yaml > config/config.yaml > env.
  3. Chcete-li nastavit klíč, přejděte na config/key.yaml a nahraďte zástupný text svým klíčem OpenAI: OPENAI_API_KEY: "sk-..."

Nezapomeňte chránit svůj OpenAI API Key. Nikdy je nesvěřujte do veřejného úložiště ani je nesdílejte s neoprávněnými osobami.

Ilustrace případu použití

Dal jsem si za cíl vyvinout hru na kámen, papír a nůžky založenou na CLI a MetaGPT tento úkol úspěšně provedl.

Níže je video, které ukazuje skutečný běh generovaného kódu hry.

Spuštění ukázky MetaGPT

MetaGPT poskytla dokument o návrhu systému v Markdown – běžně používaném lehkém značkovacím jazyce. Tento soubor Markdown byl plný diagramů UML, čímž nabízel podrobný pohled na architektonický plán. Specifikace API byly navíc podrobně popsány s metodami HTTP, koncovými body, objekty požadavek/odpověď a stavovými kódy

Výstup MetaGPT - Návrh systému

MetaGPT Output – System Design Markdown

Diagram tříd podrobně popisuje atributy a metody našeho Game třídy, poskytující abstrakci, která je snadno pochopitelná. Dokonce vizualizuje tok volání programu a efektivně mění abstraktní myšlenky na hmatatelné kroky.

Nejenže to výrazně snižuje manuální režii při plánování, ale také to urychluje rozhodovací proces a zajišťuje, že váš vývojový kanál zůstane agilní. S MetaGPT nejen automatizujete generování kódu, ale automatizujete inteligentní plánování projektu, čímž poskytujete konkurenční výhodu v rychlém vývoji aplikací.

Závěr: MetaGPT – revoluční vývoj softwaru

MetaGPT nově definuje prostředí generativní umělé inteligence a vývoje softwaru a nabízí bezproblémovou kombinaci inteligentní automatizace a agilního řízení projektů. Daleko předčí schopnosti ChatGPT, AutoGPT a tradiční modely LangChain, vyniká v rozkladu úkolů, efektivním generování kódu a plánování projektů. Více se dozvíte na

Zde jsou hlavní poznatky z tohoto článku:

  1. Síla metaprogramování: Pomocí metaprogramování poskytuje MetaGPT agilní a adaptivní softwarový rámec. Překračuje úzkou funkčnost starších nástrojů a zavádí transformativní přístup, který se zabývá nejen kódováním, ale také řízením projektů a rozhodováním.
  2. Dvouvrstvá architektura: MetaGPT se svými základními a kolaborativními vrstvami efektivně vytváří synergický ekosystém, kde agenti mohou pracovat soudržně, podobně jako odborně řízený softwarový tým.
  3. Optimalizovaná kontrola kódu: Kromě pouhého generování kódu nabízí MetaGPT funkce pro provádění předkompilace, což je v podstatě systém včasného varování před chybami. To nejen šetří čas ladění, ale také zajišťuje kvalitu kódu.
  4. Kognitivní agenti: Inteligentní agenti MetaGPT, plní kognitivních funkcí jako _observe(), _think() a _publish_message(), se vyvíjejí a přizpůsobují a zajišťují, že vaše softwarové řešení není pouze kódované, ale je „inteligentní“.
  5. Instalace a nasazení: Ukázali jsme, že MetaGPT lze snadno nastavit, ať už dáváte přednost lokální instalaci přes npm a Python, nebo kontejnerizaci přes Docker.

Posledních pět let jsem strávil ponořením se do fascinujícího světa strojového učení a hlubokého učení. Moje vášeň a odborné znalosti mě vedly k tomu, abych se podílel na více než 50 různých projektech softwarového inženýrství se zvláštním zaměřením na AI/ML. Moje neustálá zvědavost mě také přivedla ke zpracování přirozeného jazyka, což je obor, který bych rád dále prozkoumal.