ai-agents-for-beginners

Preskúmanie rámcov AI agentov

(Kliknite na obrázok vyššie pre zobrazenie videa tejto lekcie)

Preskúmanie rámcov AI agentov

Rámce AI agentov sú softvérové platformy navrhnuté na zjednodušenie vytvárania, nasadenia a správy AI agentov. Tieto rámce poskytujú vývojárom predpripravené komponenty, abstrakcie a nástroje, ktoré zefektívňujú vývoj zložitých AI systémov.

Tieto rámce pomáhajú vývojárom sústrediť sa na jedinečné aspekty svojich aplikácií tým, že poskytujú štandardizované prístupy k bežným výzvam vo vývoji AI agentov. Zvyšujú škálovateľnosť, dostupnosť a efektivitu pri tvorbe AI systémov.

Úvod

Táto lekcia pokryje:

Výučbové ciele

Ciele tejto lekcie sú pomôcť vám pochopiť:

Čo sú rámce AI agentov a čo umožňujú vývojárom robiť?

Tradičné rámce AI vám môžu pomôcť integrovať AI do vašich aplikácií a zlepšiť tieto aplikácie nasledujúcimi spôsobmi:

To všetko znie skvele, tak prečo potrebujeme rámec AI agenta?

Rámce AI agentov predstavujú niečo viac než len AI rámce. Sú navrhnuté na umožnenie vytvárania inteligentných agentov, ktorí môžu interagovať s používateľmi, inými agentmi a prostredím za účelom dosiahnutia konkrétnych cieľov. Títo agenti môžu prejavovať autonómne správanie, robiť rozhodnutia a prispôsobovať sa meniacim sa podmienkam. Pozrime sa na niektoré kľúčové schopnosti umožnené rámcami AI agentov:

Zhrnuté a podčiarknuté, agenti vám umožňujú robiť viac, posunúť automatizáciu na vyššiu úroveň, vytvárať inteligentnejšie systémy, ktoré sa môžu prispôsobovať a učiť sa zo svojho prostredia.

Ako rýchlo prototypovať, iterovať a zlepšovať schopnosti agenta?

Toto je rýchlo sa meniace prostredie, ale existujú niektoré spoločné veci vo väčšine rámcov AI agentov, ktoré vám pomôžu rýchlo prototypovať a iterovať, a to predovšetkým modulárne komponenty, kolaboratívne nástroje a učenie v reálnom čase. Poďme sa na to pozrieť:

Používajte modulárne komponenty

SDK ako Microsoft Agent Framework ponúkajú predpripravené komponenty, ako AI konektory, definície nástrojov a správu agentov.

Ako môžu tímy tieto používať: Tímy môžu rýchlo zostaviť tieto komponenty na vytvorenie funkčného prototypu bez nutnosti začínať od nuly, čo umožňuje rýchle experimentovanie a iterovanie.

Ako to funguje v praxi: Môžete použiť predpripravený parser na extrahovanie informácií z užívateľského vstupu, pamäťový modul na ukladanie a získavanie dát a generátor promptov na interakciu s používateľmi, to všetko bez nutnosti vytvárať tieto komponenty od začiatku.

Ukážkový kód. Pozrime sa na príklad, ako použiť Microsoft Agent Framework s FoundryChatClient na reagovanie modelu na užívateľský vstup s volaním nástrojov:

# Príklad Microsoft Agent Framework v Pythone

import asyncio
import os

from agent_framework import tool
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential


# Definujte ukážkovú funkciu nástroja na rezerváciu cesty
@tool(approval_mode="never_require")
def book_flight(date: str, location: str) -> str:
    """Book travel given location and date."""
    return f"Travel was booked to {location} on {date}"


async def main():
    provider = FoundryChatClient(
        project_endpoint=os.environ["AZURE_AI_PROJECT_ENDPOINT"],
        model=os.environ["AZURE_AI_MODEL_DEPLOYMENT_NAME"],
        credential=AzureCliCredential(),
    )
    agent = provider.as_agent(
        name="travel_agent",
        instructions="Help the user book travel. Use the book_flight tool when ready.",
        tools=[book_flight],
    )

    response = await agent.run("I'd like to go to New York on January 1, 2025")
    print(response)
    # Príklad výstupu: Váš let do New Yorku na 1. januára 2025 bol úspešne rezervovaný. Šťastnú cestu! ✈️🗽


if __name__ == "__main__":
    asyncio.run(main())

Z tohto príkladu vidíte, ako môžete využiť predpripravený parser na extrahovanie kľúčových informácií z užívateľského vstupu, napríklad počiatočné miesto, cieľ a dátum požiadavky na rezerváciu letu. Tento modulárny prístup vám umožňuje zamerať sa na logiku na vysokej úrovni.

Využívajte kolaboratívne nástroje

Rámce ako Microsoft Agent Framework umožňujú vytváranie viacerých agentov, ktorí môžu spolupracovať.

Ako môžu tímy tieto používať: Tímy môžu navrhovať agentov so špecifickými rolami a úlohami, čo im umožňuje testovať a zdokonaľovať kolaboratívne pracovné postupy a zvyšovať celkovú efektivitu systému.

Ako to funguje v praxi: Môžete vytvoriť tím agentov, kde každý agent má špecializovanú funkciu, napríklad získavanie dát, analýzu alebo rozhodovanie. Títo agenti môžu komunikovať a zdieľať informácie na dosiahnutie spoločného cieľa, ako je zodpovedanie otázky používateľa alebo dokončenie úlohy.

Ukážkový kód (Microsoft Agent Framework):

# Vytváranie viacerých agentov, ktorí spolupracujú pomocou Microsoft Agent Framework

import os
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential

provider = FoundryChatClient(
    project_endpoint=os.environ["AZURE_AI_PROJECT_ENDPOINT"],
    model=os.environ["AZURE_AI_MODEL_DEPLOYMENT_NAME"],
    credential=AzureCliCredential(),
)

# Agent na získavanie údajov
agent_retrieve = provider.as_agent(
    name="dataretrieval",
    instructions="Retrieve relevant data using available tools.",
    tools=[retrieve_tool],
)

# Agent na analýzu údajov
agent_analyze = provider.as_agent(
    name="dataanalysis",
    instructions="Analyze the retrieved data and provide insights.",
    tools=[analyze_tool],
)

# Spustiť agentov v poradí na úlohe
retrieval_result = await agent_retrieve.run("Retrieve sales data for Q4")
analysis_result = await agent_analyze.run(f"Analyze this data: {retrieval_result}")
print(analysis_result)

V predchádzajúcom kóde vidíte, ako vytvoriť úlohu, ktorá zahŕňa viacerých agentov pracujúcich spolu na analýze dát. Každý agent vykonáva špecifickú funkciu a úloha je realizovaná koordináciou agentov na dosiahnutie požadovaného výsledku. Vytvorením špecializovaných agentov so špecifickými rolami môžete zvýšiť efektivitu a výkon úlohy.

Učte sa v reálnom čase

Pokročilé rámce poskytujú schopnosti na porozumenie kontextu a adaptáciu v reálnom čase.

Ako môžu tímy tieto používať: Tímy môžu implementovať spätnoväzobné slučky, kde sa agenti učia z interakcií a dynamicky prispôsobujú svoje správanie, čo vedie k neustálemu zlepšovaniu a zdokonaľovaniu schopností.

Ako to funguje v praxi: Agenti môžu analyzovať spätnú väzbu používateľov, dáta z prostredia a výsledky úloh na aktualizáciu svojej znalostnej základne, úpravu rozhodovacích algoritmov a zlepšenie výkonu v priebehu času. Tento iteratívny učebný proces umožňuje agentom prispôsobovať sa meniacim sa podmienkam a preferenciám používateľov, čím sa zvyšuje celková efektívnosť systému.

Aké sú rozdiely medzi Microsoft Agent Framework a Microsoft Foundry Agent Service?

Existuje mnoho spôsobov, ako tieto prístupy porovnať, ale pozrime sa na niektoré kľúčové rozdiely z hľadiska ich dizajnu, schopností a cieľových prípadov použitia:

Microsoft Agent Framework (MAF)

Microsoft Agent Framework poskytuje zjednodušené SDK na vytváranie AI agentov pomocou FoundryChatClient. Umožňuje vývojárom vytvárať agentov, ktorí využívajú modely Azure OpenAI s vstavaným volaním nástrojov, správou konverzácie a podnikových bezpečnostných prvkov cez Azure identitu.

Prípady použitia: Vytváranie AI agentov pripravených na produkciu s využívaním nástrojov, multi-krokové pracovné postupy a scenáre podnikovej integrácie.

Tu sú niektoré dôležité základné koncepty Microsoft Agent Framework:

Microsoft Foundry Agent Service

Microsoft Foundry Agent Service je novší doplnok predstavený na Microsoft Ignite 2024. Umožňuje vývoj a nasadenie AI agentov s flexibilnejšími modelmi, ako je priame volanie open-source LLM ako Llama 3, Mistral a Cohere.

Microsoft Foundry Agent Service poskytuje silnejšie podnikové bezpečnostné mechanizmy a metódy ukladania dát, čo ho robí vhodným pre podnikové aplikácie.

Funguje priamo s Microsoft Agent Frameworkom na vytváranie a nasadenie agentov.

Táto služba je momentálne v verejnej Preview a podporuje Python a C# na tvorbu agentov.

Pomocou Microsoft Foundry Agent Service Python SDK môžeme vytvoriť agenta s používateľom definovaným nástrojom:

import asyncio
from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient

# Definujte funkcie nástroja
def get_specials() -> str:
    """Provides a list of specials from the menu."""
    return """
    Special Soup: Clam Chowder
    Special Salad: Cobb Salad
    Special Drink: Chai Tea
    """

def get_item_price(menu_item: str) -> str:
    """Provides the price of the requested menu item."""
    return "$9.99"


async def main() -> None:
    credential = DefaultAzureCredential()
    project_client = AIProjectClient.from_connection_string(
        credential=credential,
        conn_str="your-connection-string",
    )

    agent = project_client.agents.create_agent(
        model="gpt-5-mini",
        name="Host",
        instructions="Answer questions about the menu.",
        tools=[get_specials, get_item_price],
    )

    thread = project_client.agents.create_thread()

    user_inputs = [
        "Hello",
        "What is the special soup?",
        "How much does that cost?",
        "Thank you",
    ]

    for user_input in user_inputs:
        print(f"# User: '{user_input}'")
        message = project_client.agents.create_message(
            thread_id=thread.id,
            role="user",
            content=user_input,
        )
        run = project_client.agents.create_and_process_run(
            thread_id=thread.id, agent_id=agent.id
        )
        messages = project_client.agents.list_messages(thread_id=thread.id)
        print(f"# Agent: {messages.data[0].content[0].text.value}")


if __name__ == "__main__":
    asyncio.run(main())

Základné koncepty

Microsoft Foundry Agent Service má tieto základné koncepty:

Prípady použitia: Microsoft Foundry Agent Service je navrhnutý pre podnikové aplikácie, ktoré vyžadujú bezpečné, škálovateľné a flexibilné nasadenie AI agentov.

Aký je rozdiel medzi týmito prístupmi?

Znie to, akoby sa prekrývali, ale existujú kľúčové rozdiely z hľadiska dizajnu, schopností a cieľových aplikácií:

Stále si nie ste istí, ktorý si vybrať?

Prípady použitia

Pozrime sa, či vám môže pomôcť prejsť niektoré bežné prípady:

Otázka: Budujem produkčné AI agent aplikácie a chcem začať rýchlo

Odpoveď: Microsoft Agent Framework je vynikajúca voľba. Poskytuje jednoduché, pythonické API cez FoundryChatClient, ktoré vám umožní definovať agentov s nástrojmi a inštrukciami v iba niekoľkých riadkoch kódu.

Otázka: Potrebujem podnikové nasadenie s Azure integráciami ako Search a vykonávanie kódu

Odpoveď: Microsoft Foundry Agent Service je na to najvhodnejší. Je to platformová služba, ktorá poskytuje vstavané kapacity pre viaceré modely, Azure AI Search, Bing Search a Azure Functions. Uľahčuje vytváranie agentov v Foundry Portáli a ich nasadenie vo veľkom meradle.

Otázka: Stále som zmätený, dajte mi jednu možnosť

Odpoveď: Začnite s Microsoft Agent Framework na tvorbu agentov a potom použite Microsoft Foundry Agent Service, keď ich budete chcieť nasadiť a škálovať do produkcie. Tento prístup vám umožní rýchlo iterovať na logike agenta a zároveň mať jasnú cestu k podnikovému nasadeniu.

Zhrňme kľúčové rozdiely v tabuľke:

Rámec Zameranie Základné koncepty Prípady použitia
Microsoft Agent Framework Zjednodušené SDK pre agentov s volaním nástrojov Agenti, Nástroje, Azure Identity Budovanie AI agentov, použitie nástrojov, viacstupňové workflow
Microsoft Foundry Agent Service Flexibilné modely, podniková bezpečnosť, generovanie kódu, volanie nástrojov Modularita, Spolupráca, Orchestrácia procesov Bezpečné, škálovateľné a flexibilné nasadenie AI agentov

Môžem integrovať svoje existujúce nástroje Azure ekosystému priamo, alebo potrebujem samostatné riešenia?

Odpoveď je áno, môžete integrovať svoje existujúce nástroje v rámci Azure ekosystému priamo s Microsoft Foundry Agent Service, najmä preto, že bol vybudovaný tak, aby bez problémov spolupracoval s ostatnými Azure službami. Napríklad môžete integrovať Bing, Azure AI Search a Azure Functions. Existuje tiež hlboká integrácia s Microsoft Foundry.

Microsoft Agent Framework sa tiež integruje so službami Azure cez FoundryChatClient a Azure identity, čo vám umožňuje volať Azure služby priamo z vašich agentových nástrojov.

Ukážkové kódy

Máte ďalšie otázky o AI Agent Frameworkoch?

Pridajte sa do Microsoft Foundry Discord, aby ste sa stretli s inými študentmi, zúčastnili sa konzultačných hodín a získali odpovede na svoje otázky týkajúce sa AI agentov.

Referencie

Predchádzajúca lekcia

Úvod do AI agentov a ich použitia

Nasledujúca lekcia

Pochopenie agentických dizajnových vzorov


Vyhlásenie o zodpovednosti: Tento dokument bol preložený pomocou AI prekladateľskej služby Co-op Translator. Hoci sa snažíme o presnosť, vezmite prosím na vedomie, že automatické preklady môžu obsahovať chyby alebo nepresnosti. Pôvodný dokument v jeho natívnom jazyku by mal byť považovaný za autoritatívny zdroj. Pre kritické informácie sa odporúča profesionálny ľudský preklad. Nie sme zodpovední za žiadne nedorozumenia alebo nesprávne interpretácie vyplývajúce z použitia tohto prekladu.