AI-agentide täiustamine: üleminek olekuga MCP-le Amazon Bedrockis
AI-agendid arenevad kiiresti, kuid nende täit potentsiaali on sageli pärssinud olekuta implementatsioonid, eriti stsenaariumides, mis nõuavad reaalajas kasutajate suhtlust, dünaamilist sisu genereerimist või pidevaid edenemise uuendusi. Keerukate AI-agentide arendajad seisavad sageli silmitsi väljakutsetega, kui töövoog peab pikaajaliste toimingute käigus peatuma, selgitusi koguma või olekut teatama. Olekuta täitmise jäik, ühesuunaline olemus piirab tõeliselt interaktiivsete ja tundlike AI-rakenduste arendust.
Nüüd tutvustab Amazon Bedrock AgentCore Runtime murrangulisi olekuga Model Context Protocol (MCP) kliendivõimalusi, mis muudavad viisi, kuidas AI-agendid kasutajate ja suurte keelemudelitega (LLM-idega) suhtlevad. See pöördeline uuendus vabastab agendid olekuta suhtluse piirangutest, võimaldades keerulisi, mitmeetapilisi ja väga interaktiivseid töövooge. Integreerides olulised MCP kliendifunktsioonid – selgituste küsimine (Elicitation), näidistamine (Sampling) ja edenemise teatised (Progress Notifications) – hõlbustab Bedrock AgentCore Runtime kahesuunalisi vestlusi MCP-serverite ja klientide vahel, sillutades teed intelligentsematele, kasutajakesksematele AI-lahendustele.
Olekuta režiimilt olekuga režiimile: interaktiivsete agendi töövoogude avamine
Varem töötas MCP serveri tugi AgentCore'is olekuta režiimis, kus iga HTTP päring toimis iseseisvalt, ilma jagatud kontekstita. Kuigi see lihtsustas juurutamist lihtsate tööriistaserverite puhul, piiras see oluliselt stsenaariume, mis nõudsid vestluse järjepidevust, töövoo keskel kasutaja selgituste küsimist või reaalajas edenemise aruandlust. Server lihtsalt ei suutnud säilitada vestlusniiti eraldiseisvate päringute vahel, takistades tõeliselt interaktiivsete agentide arengut.
Olekuga MCP kliendivõimaluste tulek muudab seda paradigmat põhimõtteliselt. Seades stateless_http=False serveri käivitamise ajal, eraldab AgentCore Runtime igale kasutajaseansile spetsiaalse mikrovirtuaalmasina (microVM). See microVM püsib seansi kestuse vältel – kuni 8 tundi või 15 minutit tegevusetust vastavalt idleRuntimeSessionTimeout seadistusele – tagades CPU, mälu ja failisüsteemi isolatsiooni seansside vahel. Järjepidevus säilitatakse Mcp-Session-Id päise kaudu, mille server esitab initsialiseerimise ajal ja mille klient lisab kõikidesse järgnevatesse päringutesse, et need suunataks tagasi samasse seanssi. See spetsiaalne, püsiv keskkond võimaldab agentidel mäletada konteksti, küsida kasutajalt sisendit, genereerida dünaamilist LLM-i sisu ja pakkuda pidevaid uuendusi.
Järgmine tabel võtab kokku olekuta ja olekuga režiimide peamised erinevused:
| Olekuta režiim | Olekuga režiim | |
|---|---|---|
stateless_http seadistus | TRUE | FALSE |
| Seansi isolatsioon | Spetsiaalne microVM seansi kohta | Spetsiaalne microVM seansi kohta |
| Seansi kestus | Kuni 8 tundi; 15-minutiline tegevusetuse aeg | Kuni 8 tundi; 15-minutiline tegevusetuse aeg |
| Kliendi võimalused | Ei toetata | Selgituste küsimine, näidistamine, edenemise teatised |
| Soovitatav | Lihtsa tööriista teenindamine | Interaktiivsed, mitmeetapilised töövoogud |
Kui seanss aegub või server taaskäivitatakse, tagastavad järgnevad päringud varase seansi ID-ga 404 vea. Sel hetkel peavad kliendid uue seansi ID saamiseks ja uue seansi alustamiseks ühenduse uuesti initsialiseerima. Olekuga režiimi lubamise konfiguratsioonimuudatus on üks lipp teie serveri käivitamisel:
mcp.run( transport="streamable-http", host="0.0.0.0", port=8000, stateless_http=False # Lubage olekuga režiim)
Lisaks sellele lipule muutuvad kolm kliendivõimalust automaatselt kättesaadavaks, kui MCP klient teatab nende toetusest initsialiseerimise käepigistuse ajal.
Uute kliendivõimaluste süvaanalüüs: selgituste küsimine, näidistamine ja edenemine
Üleminekuga olekuga režiimile avab Amazon Bedrock AgentCore Runtime kolm võimsat kliendivõimalust MCP spetsifikatsioonist, millest igaüks on loodud käsitlema erinevaid interaktsioonimustreid, mis on olulised täiustatud AI-agentide jaoks. Need võimalused muudavad kunagise jäiga, ühesuunalise käskude täitmise sujuvaks, kahesuunaliseks dialoogiks MCP-serveri ja selle ühendatud klientide vahel. Oluline on märkida, et need funktsioonid on valikuvõimalusega, mis tähendab, et kliendid deklareerivad oma toetuse initsialiseerimise ajal ja serverid peavad kasutama ainult neid võimalusi, mida ühendatud klient on reklaaminud.
Selgituste küsimine: dünaamilise kasutajasisendi võimaldamine AI-agentides
Selgituste küsimine (Elicitation) on interaktiivse AI nurgakivi, mis võimaldab MCP-serveril arukalt oma täitmist peatada ja küsida kasutajalt kliendi kaudu spetsiifilist, struktureeritud sisendit. See võime annab tööriistale võimaluse esitada täpseid küsimusi oma töövoo õigetel hetkedel, olgu selleks siis otsuse kinnitamine, kasutajaeelistuse kogumine või eelnevatest toimingutest tuletatud väärtuse kogumine. Server algatab selle, saates elicitation/create JSON-RPC päringu, mis sisaldab inimloetavat sõnumit ja valikulist requestedSchema-t, mis määrab oodatava vastuse struktuuri.
MCP spetsifikatsioon pakub selgituste küsimiseks kahte tugevat režiimi:
- Vormirežiim: See sobib ideaalselt struktureeritud andmete otse MCP kliendi kaudu kogumiseks, näiteks konfiguratsiooniparameetrite, kasutajaeelistuste või lihtsate kinnituste puhul, kus tundlikke andmeid ei kaasata.
- URL-režiim: Interaktsioonide puhul, mis nõuavad turvalist, väljaspool kanalit toimuvat protsessi, nagu OAuth-vood, maksete töötlemine või tundlike mandaatide sisestamine, suunab URL-režiim kasutaja välisele URL-ile. See tagab, et tundlik teave möödub MCP kliendist täielikult, suurendades turvalisust ja vastavust.
Selgituste küsimise päringu saamisel renderdab klient sobiva sisendliidese. Kasutaja järgnev tegevus käivitab kolme-tegevuse vastusmudeli tagasi serverile: accept (kasutaja esitas nõutud andmed), decline (kasutaja lükkas päringu selgesõnaliselt tagasi) või cancel (kasutaja tühistas viiba valikut tegemata). Intelligentsed serverid on loodud kõiki neid stsenaariume elegantselt käsitlema, tagades robustse ja kasutajasõbraliku kogemuse. Näiteks add_expense_interactive tööriist, nagu on näidatud algmaterjalis, saab juhatada kasutaja läbi küsimuste seeria—summa, kirjeldus, kategooria ja lõplik kinnitus—enne andmete salvestamist taustasüsteemi, nagu Amazon DynamoDB. Iga samm kasutab Pydanticu mudeleid oodatava sisendi määratlemiseks, mille FastMCP sujuvalt teisendab JSON-skeemiks, mis on vajalik elicitation/create päringu jaoks.
Näidistamine ja edenemise teatised: LLM-i interaktsiooni ja läbipaistvuse suurendamine
Lisaks otsesele kasutaja interaktsioonile annab Näidistamine (Sampling) MCP-serverile võime taotleda LLM-i genereeritud sisu otse kliendilt sampling/createMessage kaudu. See on kriitiline mehhanism, kuna see võimaldab serveri tööriistaloogikal ära kasutada võimsaid keelemudeli võimalusi, ilma et oleks vaja hallata oma LLM-i mandaate või otseseid API-integratsioone. Server annab lihtsalt juhise ja valikulised mudelieelistused ning klient, tegutsedes vahendajana, edastab päringu oma ühendatud LLM-ile ja tagastab genereeritud vastuse. See avab hulgaliselt praktilisi rakendusi, sealhulgas isikupärastatud kokkuvõtete koostamine, loomuliku keele seletuste genereerimine struktureeritud andmetest või kontekstiteadlike soovituste loomine käimasoleva vestluse põhjal.
Aja jooksul kestvate toimingute puhul muutuvad Edenemise teatised (Progress Notifications) hindamatuks. See võimekus võimaldab MCP-serveril teavitada pikaajaliste ülesannete ajal inkrementaalsetest uuendustest. Kasutades ctx.report_progress(progress, total), saab server edastada pidevaid uuendusi, mida kliendid saavad teisendada visuaalseks tagasisideks, näiteks edenemisribaks või olekunäidikuks. Olgu selleks siis otsimine tohututes andmeallikates või keerukate arvutusülesannete täitmine, läbipaistvad edenemisteatised tagavad, et kasutajad on pidevalt informeeritud, vältides frustratsiooni ja parandades üldist kasutuskogemust, selle asemel et jätta nad tühjale ekraanile vaatama ja mõtlema, kas süsteem on veel aktiivne.
AI-agendi arenduse tulevikukindlus Bedrock AgentCore Runtime'iga
Olekuga MCP kliendivõimaluste tutvustamine Amazon Bedrock AgentCore Runtime'is kujutab endast märkimisväärset edasiminekut AI-agendi arenduses. Muutes varem olekuta interaktsioonid dünaamilisteks, kahesuunalisteks vestlusteks, annab AWS arendajatele võimaluse luua intelligentsemaid, tundlikumaid ja kasutajasõbralikumaid AI-rakendusi. Need võimalused – selgituste küsimine (Elicitation) juhitud kasutajasisendi jaoks, näidistamine (Sampling) nõudlusel põhineva LLM-i genereerimise jaoks ja edenemise teatised (Progress Notifications) reaalajas läbipaistvuse jaoks – avavad üheskoos interaktiivsete agendi töövoogude uue ajastu. Kuna AI areneb edasi, on need põhivõimalused kriitilise tähtsusega keeruka agentse AI opereerimiseks, mis suudab sujuvalt integreeruda keerukatesse äriprotsessidesse, kohanduda kasutajate vajadustega ja pakkuda erakordset väärtust.
Korduma kippuvad küsimused
What problem do stateful MCP client capabilities solve on Amazon Bedrock AgentCore Runtime?
How does the transition from stateless to stateful mode work on AgentCore Runtime?
What is Elicitation, and how does it enhance AI agent interactions?
How does Sampling capability benefit AI agents without managing LLM credentials?
Püsige kursis
Saage värskeimad AI uudised oma postkasti.
