Jak agenti a copiloty fungují s LLM
Agenti i copiloty rozšiřují možnosti LLM inteligentním vyvoláním externích funkcí, jako je odeslání e-mailu.
- Agent je umělá inteligence, která může odpovídat na otázky a automatizovat procesy pro uživatele. Agenti můžou určit, které funkce splní cíl uživatele, a pak tyto funkce zavolat jménem uživatele.
- Copilot je typ agenta, který funguje souběžně s uživatelem. Na rozdíl od agenta není kopírka plně automatizovaná – spoléhá na interakci uživatele. Copilot může uživateli pomoct dokončit úkol tím, že poskytne návrhy a doporučení.
Předpokládejme například, že vytváříte pomocnou aplikaci e-mailového chatu. Kromě LLM budete také potřebovat modul plug-in k provádění akcí souvisejících s e-mailem a také moduly plug-in pro vyhledávání, shrnutí, určování záměru a podobně. Můžete použít nativní funkce, předefinované moduly plug-in a vlastní moduly plug-in.
Vytváření modulů plug-in je pouze polovina bitvy: stále potřebujete vyvolat správné funkce ve správný čas, což je proces, který může být náchylný k chybám a neefektivní. Agent to zvládne lépe.
Agent automaticky rozhodne, jakou posloupnost funkcí může LLM použít k dosažení cíle uživatele. Předpokládejme například, že máte chatovací aplikaci, která kontroluje nové položky doručené pošty a určuje, jakou akci každá položka vyžaduje. Pokud nastavíte agenta, může orchestrovat potřebné funkce modulu plug-in a provést kroky automaticky.
Každý agent má tři základní stavební bloky: persona, moduly plug-in a plannery.
- Osoby určují způsob, jakým agenti reagují na uživatele nebo provádějí akce.
- Moduly plug-in umožňují agentům načítat informace z uživatele nebo jiných systémů. Můžete použít předem připravené moduly plug-in a vlastní moduly plug-in.
- Planners umožňují agentům plánovat, jak používat dostupné moduly plug-in.
Osoba agenta je jeho identita: všechny moduly plug-in a plánovače, které agent používá, jsou nástroje, ale osoba určuje, jak tyto nástroje používá. Pokyny použijete ve výzvě k vytvoření osoby agenta.
Pomocí pokynů můžete například sdělit agentovi, že pomáhá lidem spravovat e-maily, a vysvětlit jeho rozhodnutí při jejich přijímání. Vaše výzva může vypadat nějak takto:
prompt = $"""
<message role="system">
You are a friendly assistant helping people with emails.
When you decide to perform an action, explain your decision and then perform the action.
</message>
"""
Moduly plug-in slouží k provádění věcí, které LLM nemůžou dělat samostatně, například načítání dat z externích zdrojů dat nebo dokončování úkolů v reálném světě.
LLM například nemůže odeslat e-mail, takže pokud chcete tuto funkci přidat do chatovací aplikace, budete muset vytvořit modul plug-in. Ke zpracování textu z e-mailů můžete použít základní moduly plug-in, jako je například ConversationSummaryPlugin.
Ujistěte se, že jasně zdokumentujete funkce v modulech plug-in – plánovače tyto informace používají k určení dostupných funkcí.
Plánovač může analyzovat dostupné funkce a přijít s alternativními způsoby, jak dosáhnout cíle.
Volání funkcí modulu plug-in není vždy efektivní. Řekněme například, že chcete sečíst čísla mezi 1 a 100. Mohli byste volat matematický modul plug-in, ale LLM by potřeboval provést samostatné volání pro každé číslo.
Nejlepší posloupnost a kombinace funkcí pro dosažení cíle navíc závisí na podrobnostech. Předpokládejme například, že vytváříte pomocnou aplikaci e-mailového chatu, takže zahrnete modul plug-in pro povolení odesílání e-mailů. Některé e-maily ale můžou potřebovat jinou akci, například žádost o schůzku bez odpovědi – odeslání odpovědi není nutné, ale přidání položky kalendáře je. Plánovač sleduje všechny dostupné funkce a nabízí efektivní způsoby dosažení cílů.
Automatizace procesů má mnoho výhod, ale někdy se musí uživatel rozhodnout. Agent nemůže automatizovat akce uživatelů. To je místo, kam přicházejí kopírky.
Agent v e-mailové chatovací aplikaci může vytvořit následující plán odeslání e-mailu:
- Získání e-mailové adresy a jména uživatele
- Získání e-mailové adresy příjemce
- Získání tématu e-mailu
- Vygenerování předmětu a textu e-mailu
- Odeslání e-mailu
Velmi užitečné, ale co když se uživateli nelíbí text e-mailu? Do plánu přidá copilot krok interakce uživatele:
- Získání e-mailové adresy a jména uživatele
- Získání e-mailové adresy příjemce
- Získání tématu e-mailu
- Vygenerování předmětu a textu e-mailu
- Zkontrolujte e-mail s uživatelem a proveďte úpravy.
- Odeslání e-mailu
Pokud chcete začít s copiloty, vyzkoušejte sémantický chat Copilot jádra, referenční aplikaci pro vytvoření chatu s agentem AI.
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: