Sdílet prostřednictvím


Úvod do generování aplikací umělé inteligence v Databricks

Mosaic AI podporuje jednoduché i složité aplikace generativní umělé inteligence, od chatbotů typu RAG (Retrieval Augmented Generation) až po agenty využívající nástroje. Seznamte se s klíčovými koncepty aplikací a agentů genu, prozkoumejte běžné vzory návrhu a získejte praktické kurzy k vytváření, vyhodnocování a škálování aplikací AI genu.

Naučte se koncepty generativní AI aplikací

Seznamte se se základními koncepty generativní AI aplikací.

Přečtěte si, jak společnost Mosaic AI řeší klíčové výzvy při vývoji umělé inteligence genu.

Vyzkoušení vytváření aplikací gen AI s využitím systému Mosaic AI

Začněte s následujícími tutoriály pro notebooky:

Až budete připraveni na větší složitost, projděte si pokročilé příručky a kurzy:

Co jsou aplikace generativní AI?

Aplikace Gen AI je aplikace, která používá generující modely AI (například LLM, modely generování obrázků a modely převodu textu na řeč) k vytváření nových výstupů, automatizaci složitých úloh nebo zapojení do inteligentních interakcí na základě uživatelského vstupu. I když aplikace genU AI můžou používat různé modely, tato příručka se soustředí na aplikace využívající LLM.

I když se aplikace založené na generativní umělé inteligenci (LLM) dají vytvořit různými způsoby, obvykle spadají do jednoho ze dvou architektonických vzorců:

Typ 1: Monolitická LLM + podnět Typ 2 (doporučeno): Systém agentů
Co je? Jeden LLM s pečlivě navrženými výzvami. Několik interagujících komponent (volání LLM, načítání, volání rozhraní API) orchestrovaných společně – od jednoduchých řetězů až po sofistikované systémy s více agenty.
příklad použití Klasifikace obsahu: Použití LLM ke kategorizaci lístků zákaznické podpory do předdefinovaných témat. Inteligentní asistent: Kombinace načítání dokumentů, vícenásobných volání LLM a externích API pro výzkum, analýzu a generování komplexních zpráv.
nejlepší pro Jednoduché, zaměřené úkoly, rychlé prototypy a jasné dobře definované výzvy. Složité pracovní postupy, úkoly vyžadující více funkcí a úkoly vyžadující reflexi v předchozích krocích
klíčové výhody Jednodušší implementace, rychlejší vývoj a nižší provozní složitost. Spolehlivější a udržovatelné, lepší řízení a flexibilita, snadnější testování a ověřování a optimalizace na úrovni komponent.
Omezení Méně flexibilní, obtížnější optimalizovat a omezit funkčnost. Složitější implementace, inicialnější nastavení a vyžaduje koordinaci komponent.

Pro většinu podnikových případů použití Databricks doporučuje agentní systém . Díky rozdělení systémů do menších dobře definovaných komponent můžou vývojáři lépe spravovat složitost a současně udržovat vysokou úroveň kontroly a dodržování předpisů vyžadovaných pro podnikové aplikace.

Společnost Mosaic AI má nástroje a funkce, které fungují pro monolitické systémy i agentové systémy, a zbytek této dokumentace se zabývá vytvářením obou typů aplikací generativní umělé inteligence.

Chcete-li se dozvědět více o teorii systémů agentů vs. monolitických modelech, viz blogové příspěvky od zakladatelů Databricks:

Co je systém agentů?

Systém agentů je systém řízený AI, který může nezávisle vnímat, rozhodovat a jednat v prostředí za účelem dosažení cílů. Na rozdíl od samostatného LLM, který vytváří výstup pouze při výzvě, systém agentů má stupeň autonomie. Moderní systémy agentů založené na LLM používají LLM jako "mozek" k interpretaci kontextu, uvažování o tom, co dělat dál, a provádění akcí, jako jsou volání rozhraní API, mechanismy načítání a spuštění nástrojů k provádění úkolů.

Systém agenta je systém s LLM ve svém jádru. Tento systém:

  1. Přijímá žádosti uživatelů nebo zprávy od jiného agenta.
  2. Důvody, jak pokračovat: jaká data se mají načíst, jakou logiku použít, které nástroje se mají volat, nebo jestli se má požadovat další vstup od uživatele.
  3. Spustí plán a případně použije různé nástroje nebo deleguje na podagenty.
  4. Vrátí odpověď nebo vyzve uživatele k dalšímu objasnění.

Přemostěním obecných inteligentních funkcí (předem natrénovaných funkcí LLM) a datových inteligentních funkcí (specializovaných znalostí a rozhraní API specifických pro vaši firmu) umožňují systémy agentů vysoce ovlivněné podnikové případy použití, jako jsou pokročilé toky zákaznických služeb, roboti pro analýzu dat a orchestrace s více agenty pro složité provozní úlohy.

Co může systém agentů dělat?

Systém agenta může:

  • Dynamické plánování akcí
  • Přenést stav z jednoho kroku do dalšího
  • Úprava strategie na základě nových informací bez nepřetržitého lidského zásahu

Pokud by samostatný LLM mohl při dotazování vypisovat cestovní itinerář, mohl by systém agentů načíst informace o zákaznících a samostatně rezervovat lety pomocí nástrojů a rozhraní API. Kombinací "obecné inteligence" z LLM s "datovou inteligencí" (data specifická pro doménu nebo rozhraní API) mohou agentní systémy řešit sofistikované podnikové případy použití, které by jeden statický model měl potíže vyřešit.

Agentnost je kontinuum; čím více volnosti poskytujete modelům pro řízení chování systému, tím více agentní se aplikace stává. V praxi většina produkčních systémů pečlivě omezuje autonomii agenta, aby zajistila dodržování předpisů a předvídatelnost, například vyžadováním lidského schválení rizikových akcí.

Obecná inteligence vs. datová inteligence

diagram porovnávání obecných inteligentních funkcí a datových inteligentních funkcí

  • Obecná inteligence: Odkazuje na to, co LLM ze své podstaty ví z širokého předtrénování na různých textech. To je užitečné pro plynulost jazyka a obecné uvažování.
  • Analýza dat: Odkazuje na data a rozhraní API specifická pro doménu vaší organizace. Může to zahrnovat záznamy zákazníků, informace o produktech, znalostní báze nebo dokumenty, které odrážejí vaše jedinečné obchodní prostředí.

Systémy agentů prolínají tyto dvě perspektivy: začínají širokými, obecnými znalostmi LLM a pak přinášejí data specifická pro danou doménu v reálném čase, aby odpovídaly na podrobné otázky nebo prováděly specializované akce.

Příklad systému agentů

Vývojový diagram zákaznické interakce s aplikací generativní AI.

Představte si scénář call centra mezi zákazníkem a agentem obecné umělé inteligence.

Zákazník odešle žádost: "Můžete mi pomoct vrátit poslední objednávku?"

  1. Důvod a plán: Vzhledem k záměru dotazu agent "plans": "Look up the user's recent order and check our return policy" (Vyhledat poslední objednávku uživatele a zkontrolovat naši zásadu vrácení).
  2. Vyhledání informací (data intelligence): Agent se dotazuje v databázi objednávek, aby získal příslušnou objednávku a odkazuje na směrnicový dokument.
  3. Důvod: Agent zkontroluje, jestli se tato objednávka vejde do návratového okna.
    • Volitelný zásah člověka: Agent zkontroluje další pravidlo: Pokud položka spadá do určité kategorie nebo je mimo normální návratové okno, postoupit člověku.
  4. akce: Agent aktivuje proces vrácení a vygeneruje expediční štítek.
  5. Důvod: Agent vygeneruje odpověď pro zákazníka.

Agent AI odpoví zákazníkovi: "Hotovo! Tady je expediční štítek..."

Tyto kroky jsou samozřejmostí v kontextu call centra pro člověka. V kontextu systému agenta LLM "uvažuje", zatímco systém volá specializované nástroje nebo zdroje dat k vyplnění podrobností.

Nástroje a zdroje dat, které systém agenta používá.

Úrovně složitosti: Od LLM po systémy agentů

Při sestavování systémů AI můžete narazit na několik úrovní složitosti.

  • LLM (LLM + Výzva)

    • Samostatný LLM reaguje na textové výzvy na základě znalostí z rozsáhlé trénovací datové sady.
    • Vhodné pro jednoduché nebo obecné dotazy, ale často nesouvisí se skutečnými obchodními daty.

    LLM reaguje na uživatele

  • pevně zakódovaný systém agentů ("Chain")

    • Vývojáři orchestrují deterministické předdefinované kroky. Aplikace RAG může například vždy načíst z úložiště vektorů a zkombinovat výsledky s výzvou uživatele.
    • Logika je pevná a LLM se nerozhoduje, který nástroj zavolat dále.

    Pevně zakódované sady nástrojů

  • Systém agenta pro volání nástrojů

    • LLM rozhodne, který nástroj se má použít a kdy ho použít za běhu.
    • Tento přístup podporuje dynamická a kontextově vědomá rozhodnutí o tom, které nástroje se mají vyvolat, jako je databáze CRM nebo API pro publikování na Slacku.

    Agenti umělé inteligence racionalizují plán a provádějí ho pomocí nástrojů.

  • systémů s více agenty

    • Několik specializovaných agentů, z nichž každý má vlastní funkci nebo doménu.
    • Koordinátor (někdy supervizor AI , někdy založený na pravidlech) rozhoduje, který agent má být v každém kroku vyvolán.
    • Agenti můžou vzájemně předávat úkoly a přitom zachovat celkový tok konverzace.

    Koordinátor spravuje více agentů umělé inteligence.

Při sestavování jakékoli aplikace využívající LLM začněte jednoduše. Představte si složitější chování agentů, když je skutečně potřebujete pro lepší flexibilitu nebo rozhodování řízená modelem. Deterministické řetězy nabízejí předvídatelné toky založené na pravidlech pro dobře definované úlohy, zatímco další přístupy agentů mají cenu větší složitosti a potenciální latence.

Rámec agenta AI Mosaic je nezávislý na těchto vzorcích, což usnadňuje začít jednoduše a vyvíjet se směrem k vyšší úrovni automatizace a autonomie, jak rostou požadavky vaší aplikace.

Nástroje v systému agentů

V kontextu systému agentů jsou nástroje funkcemi s jednou interakcí, které může LLM vyvolat, aby bylo možné provést dobře definovanou úlohu. Model AI obvykle generuje parametry pro každé volání nástroje a nástroj poskytuje přímou interakci se vstupem a výstupem. Na straně nástroje není k dispozici žádná paměť pro více použití.

Mezi běžné kategorie nástrojů patří:

  • nástroje , které načítají nebo analyzují data
    • nástroje pro načítání vektorů : Dotazování vektorového indexu pro vyhledání nejrelevavantnějších textových bloků.
    • Nástroje pro strukturované načítání: Dotazování Delta tabulek nebo použití rozhraní API pro načtení strukturovaných informací.
    • nástroj pro vyhledávání na webu: Hledat na internetu nebo interní webový korpus.
    • Klasické modely ML: Nástroje, které volají modely ML k provádění predikcí klasifikace nebo regrese, jako je scikit-learn nebo model XGBoost.
    • Modely Gen AI: Nástroje, které provádějí specializované generování, jako je například generování kódu nebo obrázku, a vrací výsledky.
  • nástroje , které upravují stav externího systému
    • Nástroj pro volání rozhraní API: Koncové body CRM, interní služby nebo jiné integrace třetích stran pro úlohy, jako je například aktualizace stavu expedice.
    • nástroj pro provádění kódu: Spouští kód zadaný uživatelem (nebo v některých případech vygenerovaný LLM) v sandboxu.
    • integrace Slacku nebo e-mailu: Odešle zprávu nebo odešle oznámení.
  • Nástroje, které spouštějí logiku nebo provádějí konkrétní úlohu
    • Nástroj exekutoru kódu: Spustí uživatelem zadaný nebo vygenerovaný kód LLM v sandboxu, například skripty Pythonu.

Další informace o nástrojích agenta systému Mosaic AI najdete v tématu nástroje agenta AI.

Klíčové charakteristiky nástrojů

Nástroje v systému agentů:

  • Proveďte jednu dobře definovanou operaci.
  • Neudržujte průběžný kontext nad rámec tohoto volání.
  • Povolte systému agentů přístup k externím datům nebo službám, ke které LLM nemá přímý přístup.

Zpracování chyb a bezpečnost nástrojů

Vzhledem k tomu, že každé volání nástroje je externí operace, například volání rozhraní API, systém by měl řádně zpracovávat chyby, například vypršení časového limitu, zpracování chyb poškozených odpovědí nebo neplatné vstupy. V produkčním prostředí omezte počet povolených volání nástrojů, připravte si odpověď pro případ, že se nezdaří všechna volání nástrojů, a aplikujte bezpečnostní opatření, abyste zajistili, že systém agenta nebude opakovaně provádět stejnou neúspěšnou akci.

Zobrazit více