ai-agents-for-beginners

Tehisintellekti agendi raamistikud

(Klõpsake ülaloleval pildil, et vaadata selle õppetunni videot)

Avasta tehisintellekti agendi raamistikud

Tehisintellekti agendi raamistikud on tarkvaraplatvormid, mis on loodud tehisintellekti agentide loomise, juurutamise ja haldamise lihtsustamiseks. Need raamistikud pakuvad arendajatele eelvalmis komponente, abstraktsioone ja tööriistu, mis aitavad sujuvamaks muuta keerukate tehisintellektilahenduste arendamise.

Need raamistikud aitavad arendajatel keskenduda oma rakenduste unikaalsetele aspektidele, pakkudes standardiseeritud lähenemisviise tehisintellekti agentide arendamise üldistele väljakutsetele. Nad parandavad skaleeritavust, ligipääsetavust ja tõhusust tehisintellektisüsteemide ehitamisel.

Sissejuhatus

Selles õppetunnis käsitletakse:

Õpieesmärgid

Selle õppetunni eesmärk on aidata teil mõista:

Mis on tehisintellekti agendi raamistikud ja mida nad arendajatele võimaldavad?

Traditsioonilised tehisintellekti raamistikud võivad aidata teil integreerida tehisintellekti oma rakendustesse ning muuta need rakendused paremaks järgmistes valdkondades:

See kõik kõlab ju suurepäraselt, miks siis on meil vaja AI Agent Frameworki?

Tehisintellekti agendi raamistikud on rohkem kui lihtsalt tehisintellekti raamistikud. Need on loodud võimaldama nutikate agentide loomist, kes saavad suhelda kasutajate, teiste agentide ja keskkonnaga kindlate eesmärkide saavutamiseks. Need agentid võivad avaldada autonoomset käitumist, teha otsuseid ja kohaneda muutuvate oludega. Vaatame mõningaid AI Agent Frameworkide peamisi funktsionaalsusi:

Seega kokkuvõttes võimaldavad agentide raamistikud teil teha rohkem, viia automatiseerimine uuele tasemele, luua nutikamaid süsteeme, mis suudavad keskkonnast õppida ja kohaneda.

Kuidas kiiresti prototüüpida, iteratiivseid versioone teha ja agentide võimeid parandada?

See valdkond areneb kiiresti, kuid enamikul tehisintellekti agendi raamistikutel on mõningaid ühiseid omadusi, mis aitavad teil kiiresti prototüüpe luua ja iteratsioone teha, nimelt moodulkomponendid, koostöövahendid ja reaalajas õppimine. Vaatame neid lähemalt:

Kasuta moodulkomponente

SDK-d nagu Microsoft Agent Framework pakuvad eelvalmis komponente nagu tehisintellekti ühendajad, tööriistade definitsioonid ja agentide haldus.

Kuidas meeskonnad võivad neid kasutada: Meeskonnad saavad kiiresti kokkupanekuga luua funktsionaalse prototüübi ilma nullist alustamata, võimaldades kiiret eksperimenteerimist ja iteratsiooni.

Kuidas see praktikas toimib: Võite kasutada eelvalmis parserit kasutaja sisendi võtmetähtsusega info väljavõtmiseks, mälumoodulit andmete salvestamiseks ja tagasivõtmiseks ning püsivormi genereerijat kasutajatega suhtlemiseks, ilma et peaksite neid komponente nullist ehitama.

Näidiskood. Vaatame näidet, kuidas kasutada Microsoft Agent Frameworki koos AzureAIProjectAgentProvider-ga, et mudel reageeriks kasutaja sisendile tööriista kutsumisega:

# Microsoft Agent Frameworki Pythoni näide

import asyncio
import os
from typing import Annotated

from agent_framework.azure import AzureAIProjectAgentProvider
from azure.identity import AzureCliCredential


# Määratle näidistööriista funktsioon reisi broneerimiseks
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 = AzureAIProjectAgentProvider(credential=AzureCliCredential())
    agent = await provider.create_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)
    # Näidisväljund: Teie lend New Yorki 1. jaanuaril 2025 on edukalt broneeritud. Head reisi! ✈️🗽


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

Selles näites näete, kuidas saab kasutada eelvalmis parserit võtmetähtsusega teabe (näiteks lennupileti broneerimise päritolu, sihtpunkti ja kuupäeva) väljavõtmiseks kasutaja sisendist. See moodulpõhine lähenemine võimaldab teil keskenduda kõrgetasemelisele loogikale.

Kasuta koostöövahendeid

Raamistikud nagu Microsoft Agent Framework võimaldavad luua mitut agenti, kes saavad omavahel koostööd teha.

Kuidas meeskonnad võivad neid kasutada: Meeskonnad saavad kujundada agentidele spetsiifilised rollid ja ülesanded, võimaldades neil testida ja täiustada koostööprotsesse ning parandada süsteemi üldist tõhusust.

Kuidas see praktikas toimib: Võite luua agentide tiimi, kus iga agent täidab spetsialiseerunud funktsiooni, näiteks andmete toomine, analüüs või otsuste tegemine. Need agentid saavad omavahel suhelda ja infot jagada ühise eesmärgi saavutamiseks, näiteks kasutajapäringule vastamiseks või ülesande täitmiseks.

Näidiskood (Microsoft Agent Framework):

# Mitme agendi loomine, kes töötavad koos Microsoft Agent Frameworki abil

import os
from agent_framework.azure import AzureAIProjectAgentProvider
from azure.identity import AzureCliCredential

provider = AzureAIProjectAgentProvider(credential=AzureCliCredential())

# Andmete hankimise agent
agent_retrieve = await provider.create_agent(
    name="dataretrieval",
    instructions="Retrieve relevant data using available tools.",
    tools=[retrieve_tool],
)

# Andmeanalüüsi agent
agent_analyze = await provider.create_agent(
    name="dataanalysis",
    instructions="Analyze the retrieved data and provide insights.",
    tools=[analyze_tool],
)

# Käivita agendid ülesande täitmiseks järjestikku
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)

Eelnevas koodis näete, kuidas luua ülesanne mitme agenti kaasamisega andmete analüüsimiseks. Iga agent täidab konkreetset funktsiooni ja ülesanne täidetakse agentide koordineerimise kaudu soovitud tulemuse saavutamiseks. Pühendatud agentide loomine spetsialiseerunud rollidega võimaldab parandada ülesannete tõhusust ja tulemuslikkust.

Õpi reaalajas

Taas keerukamad raamistikud pakuvad võimalusi reaalajas kontekstitundlikuks mõistmiseks ja kohandamiseks.

Kuidas meeskonnad võivad neid kasutada: Meeskonnad saavad rakendada tagasisidetsükleid, kus agent õpib suhtlemisest ja kohandab dünaamiliselt oma käitumist, mis võimaldab pidevat arengut ja võimete täiustamist.

Kuidas see praktikas toimib: Agentidel on võime analüüsida kasutajate tagasisidet, keskkonnaandmeid ja ülesannete tulemusi, et uuendada oma teadmistebaasi, kohandada otsustusalgoritme ja parandada tulemusi aja jooksul. See iteratiivne õppimisprotsess võimaldab agentidel kohaneda muutuvate tingimuste ja kasutajapreferentsidega, parandades süsteemi üldist efektiivsust.

Millised on Microsoft Agent Frameworki ja Azure AI Agent Service erinevused?

Neid lähenemisi saab võrrelda mitmeti, kuid vaatame mõned olulised erinevused disaini, funktsionaalsuste ja sihtkasutuse osas:

Microsoft Agent Framework (MAF)

Microsoft Agent Framework pakub lihtsustatud SDK-d AI agentide loomiseks AzureAIProjectAgentProvider abil. See võimaldab arendajatel luua agente, kes kasutavad Azure OpenAI mudeleid koos sisseehitatud tööriistakutsumise, vestluse halduse ja ettevõtte turvalisusega Azure identiteedi kaudu.

Kasutusjuhtumid: Tootmiskõlblike tehisintellekti agentide ehitamine tööriistakasutusega, mitmeastmeliste töövoogude ja ettevõtte integratsioonistsenaarioidega.

Siin on mõned Microsoft Agent Frameworki olulised põhimõisted:

Azure AI Agent Service

Azure AI Agent Service on hiljutine täiendus, mis esitleti Microsoft Ignite 2024 üritusel. See võimaldab AI agentide arendust ja juurutamist paindlikumate mudelitega, näiteks otse avatud lähtekoodiga LLM-ide (nagu Llama 3, Mistral ja Cohere) kutsumise kaudu.

Azure AI Agent Service pakub tugevamaid ettevõtte turvamehhanisme ja andmete talletamise meetodeid, sobides hästi ettevõtte rakendusteks.

See töötab vahetult koos Microsoft Agent Frameworkiga agentide ehitamiseks ja juurutamiseks.

Teenust toetatakse praegu Avalikus eelvaates ning see toetab agentide loomist Pythonis ja C#-s.

Azure AI Agent Service Python SDK abil saame luua agendi kasutajamääratud tööriistaga:

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

# Määra tööriista funktsioonid
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-4o-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())

Põhimõisted

Azure AI Agent Service põhikontseptsioonid on järgmised:

Kasutusjuhtumid: Azure AI Agent Service on mõeldud ettevõtte rakendustele, mis nõuavad turvalist, skaleeritavat ja paindlikku AI agentide juurutamist.

Mis erinevused on nende lähenemiste vahel?

Tundub, et kattuvust on, kuid disaini, funktsionaalsuse ja sihtotstarbe osas on olulisi erinevusi:

Kas ikka ei tea, kumba valida?

Kasutusjuhtumid

Vaatame, kas saame aidata mõningate tavapäraste kasutusjuhtumite põhjal:

K: Ehitan tootmiskõlblikke tehisintellekti agentide rakendusi ja soovin kiiresti alustada

V: Microsoft Agent Framework on suurepärane valik. See pakub lihtsat, Pythonilikku API-d AzureAIProjectAgentProvider kaudu, mis võimaldab vaid mõne koodirea abil defineerida agente tööriistade ja juhistega.

K: Vajan ettevõtte tasemel juurutust Azure integratsioonidega nagu Search ja koodi täitmine

V: Azure AI Agent Service on kõige sobivam. See on platvormiteenus, mis pakub mitme mudeli, Azure AI Searchi, Bing Searchi ja Azure Functionsi sisseehitatud funktsioone. See teeb agentide ehitamise Foundry portaalis lihtsaks ja võimaldab neid suuremas mahus juurutada.

K: Olen endiselt segaduses, anna üks valik

V: Alusta Microsoft Agent Frameworkist agentide loomiseks ja kasuta seejärel Azure AI Agent Service’i, kui vajad agentide tootmiskeskkonnas juurutamist ja skaleerimist. See lähenemine võimaldab teil kiiresti agentide loogikat arendada, säilitades selge tee ettevõtte juurutuseks.

Kokkuvõtame peamised erinevused tabelis:

Raamistik Keskendumine Põhimõisted Kasutusjuhtumid
Microsoft Agent Framework Lihtsustatud agendi SDK tööriistakutsumisega Agendid, Tööriistad, Azure identiteet AI agentide loomine, tööriistakasutus, mitmeastmelised töövood
Azure AI Agent Service Paindlikud mudelid, ettevõtte turvalisus, koodigeneratsioon, tööriistakutsumine Moodulsus, Koostöö, Protsesside orkestreerimine Turvaline, skaleeritav ja paindlik AI agentide juurutus

Kas saan oma olemasolevaid Azure’i ökosüsteemi tööriistu otse integreerida või on vaja iseseisvaid lahendusi?

Vastus on jaatav, saate oma olemasolevaid Azure’i ökosüsteemi tööriistu integreerida otse Azure AI Agent teenusega, eriti kuna see on ehitatud sujuvaks koostööks teiste Azure’i teenustega. Näiteks võite integreerida Bingi, Azure AI Otsingu ja Azure Funktsioonid. Samuti on olemas sügav integratsioon Microsoft Foundryga.

Microsoft Agent raamistiku saab samuti integreerida Azure’i teenustega läbi AzureAIProjectAgentProvider ja Azure identiteedi, mis võimaldab teil oma agente tööriistadest Azure’i teenuseid otse kutsuda.

Näidiskoodid

Veel küsimusi AI Agent Frameworkside kohta?

Liituge Microsoft Foundry Discordiga, et kohtuda teiste õppuritega, osaleda kantselei aegadel ja saada vastuseid oma AI Agentide küsimustele.

Viited

Eelmine õppetund

Introduction to AI Agents and Agent Use Cases

Järgmine õppetund

Understanding Agentic Design Patterns


Vastutusest loobumine: See dokument on tõlgitud kasutades tehisintellekti tõlketeenust Co-op Translator. Kuigi püüame täpsust, tuleb arvestada, et automatiseeritud tõlgetes võib esineda vigu või ebatäpsusi. Originaaldokument oma algkeeles on autoriteetne allikas. Olulise teabe puhul soovitatakse professionaalset inimtõlget. Me ei vastuta tõlke kasutamisest tulenevate arusaamatuste ega valesti tõlgendamise eest.