Meningkatkan Ejen AI: Peralihan kepada MCP Berkeadaan (Stateful) pada Amazon Bedrock
Ejen AI berkembang pesat, namun potensi penuhnya sering terhalang oleh pelaksanaan tanpa keadaan (stateless), terutamanya dalam senario yang memerlukan interaksi pengguna masa nyata, penjanaan kandungan dinamik, atau kemas kini kemajuan berterusan. Pembangun yang membina ejen AI yang canggih sering menghadapi cabaran apabila aliran kerja perlu berhenti seketika, mengumpul penjelasan, atau melaporkan status semasa operasi yang panjang. Sifat kaku dan sehala bagi pelaksanaan tanpa keadaan mengehadkan pembangunan aplikasi AI yang benar-benar interaktif dan responsif.
Kini, Amazon Bedrock AgentCore Runtime memperkenalkan keupayaan klien Model Context Protocol (MCP) berkeadaan yang inovatif, mengubah cara ejen AI berinteraksi dengan pengguna dan model bahasa besar (LLM). Kemas kini penting ini membebaskan ejen daripada batasan komunikasi tanpa keadaan, membolehkan aliran kerja yang kompleks, berbilang pusingan, dan sangat interaktif. Dengan menyepadukan ciri-ciri klien MCP yang penting – Elicitation, Sampling, dan Pemberitahuan Kemajuan – Bedrock AgentCore Runtime memudahkan perbualan dua hala antara pelayan dan klien MCP, membuka jalan kepada penyelesaian AI yang lebih pintar dan berpusatkan pengguna.
Daripada Tanpa Keadaan (Stateless) kepada Berkeadaan (Stateful): Membuka Kunci Aliran Kerja Ejen Interaktif
Sebelum ini, sokongan pelayan MCP pada AgentCore beroperasi dalam mod tanpa keadaan, di mana setiap permintaan HTTP berfungsi secara bebas, tanpa sebarang konteks bersama. Walaupun ini menyederhanakan penggunaan untuk pelayan alat asas, ia amat mengehadkan senario yang memerlukan kesinambungan perbualan, penjelasan pengguna pertengahan aliran kerja, atau pelaporan kemajuan masa nyata. Pelayan tidak dapat mengekalkan benang perbualan merentasi permintaan diskret, menghalang pembangunan ejen yang benar-benar interaktif.
Kemunculan keupayaan klien MCP berkeadaan secara asasnya mengubah paradigma ini. Dengan menetapkan stateless_http=False semasa permulaan pelayan, AgentCore Runtime memperuntukkan microVM khusus untuk setiap sesi pengguna. MicroVM ini kekal sepanjang tempoh sesi—sehingga 8 jam, atau 15 minit tidak aktif setiap tetapan idleRuntimeSessionTimeout—memastikan pengasingan CPU, memori, dan sistem fail antara sesi. Kesinambungan dikekalkan melalui pengepala Mcp-Session-Id, yang disediakan oleh pelayan semasa permulaan dan disertakan oleh klien dalam semua permintaan berikutnya untuk dihalakan semula ke sesi yang sama. Persekitaran khusus dan kekal ini membolehkan ejen mengingati konteks, meminta input pengguna, menjana kandungan LLM dinamik, dan menyediakan kemas kini berterusan.
Jadual berikut meringkaskan perbezaan utama antara mod tanpa keadaan dan berkeadaan:
| Mod Tanpa Keadaan | Mod Berkeadaan | |
|---|---|---|
Tetapan stateless_http | TRUE | FALSE |
| Pengasingan sesi | MicroVM khusus bagi setiap sesi | MicroVM khusus bagi setiap sesi |
| Hayat sesi | Sehingga 8 jam; tamat masa terbiar 15 minit | Sehingga 8 jam; tamat masa terbiar 15 minit |
| Keupayaan klien | Tidak disokong | Elicitation, sampling, pemberitahuan kemajuan |
| Disyorkan untuk | Penyediaan alat yang ringkas | Aliran kerja interaktif, berbilang pusingan |
Apabila sesi tamat atau pelayan dimulakan semula, permintaan seterusnya dengan ID sesi awal akan mengembalikan 404. Pada ketika itu, klien mesti memulakan semula sambungan untuk mendapatkan ID sesi baharu dan memulakan sesi yang segar. Perubahan konfigurasi untuk membolehkan mod berkeadaan adalah satu bendera dalam permulaan pelayan anda:
mcp.run( transport="streamable-http", host="0.0.0.0", port=8000, stateless_http=False # Enable stateful mode)
Selain bendera ini, tiga keupayaan klien tersedia secara automatik sebaik sahaja klien MCP mengisytiharkan sokongan untuknya semasa jabat tangan permulaan.
Pendalaman ke dalam Keupayaan Klien Baharu: Elicitation, Sampling, dan Kemajuan
Dengan peralihan kepada mod berkeadaan, Amazon Bedrock AgentCore Runtime membuka kunci tiga keupayaan klien yang berkuasa daripada spesifikasi MCP, setiap satunya direka untuk menangani pola interaksi yang berbeza yang penting untuk ejen AI yang canggih. Keupayaan ini mengubah apa yang dulunya pelaksanaan arahan sehala yang kaku menjadi dialog dua hala yang lancar antara pelayan MCP dan klien yang disambungkan. Penting untuk diperhatikan bahawa ciri-ciri ini adalah pilihan (opt-in), yang bermaksud klien mengisytiharkan sokongan mereka semasa permulaan, dan pelayan hanya boleh menggunakan keupayaan yang telah diiklankan oleh klien yang disambungkan.
Elicitation: Membolehkan Input Pengguna Dinamik dalam Ejen AI
Elicitation berdiri sebagai asas AI interaktif, membenarkan pelayan MCP untuk menghentikan pelaksanaannya secara bijaksana dan meminta input khusus, berstruktur daripada pengguna melalui klien. Keupayaan ini memperkasakan alat untuk menanyakan soalan yang tepat pada saat yang sesuai dalam aliran kerjanya, sama ada untuk mengesahkan keputusan, mengumpul keutamaan pengguna, atau mengumpul nilai yang diperoleh daripada operasi sebelumnya. Pelayan memulakan ini dengan menghantar permintaan JSON-RPC elicitation/create, yang merangkumi mesej yang boleh dibaca manusia dan requestedSchema pilihan yang menggariskan struktur respons yang dijangkakan.
Spesifikasi MCP menyediakan dua mod teguh untuk elicitation:
- Mod Borang: Ini sesuai untuk mengumpul data berstruktur secara langsung melalui klien MCP, seperti parameter konfigurasi, keutamaan pengguna, atau pengesahan mudah di mana data sensitif tidak terlibat.
- Mod URL: Untuk interaksi yang memerlukan proses luar-band (out-of-band) yang selamat, seperti aliran OAuth, pemprosesan pembayaran, atau kemasukan kelayakan sensitif, mod URL mengarahkan pengguna ke URL luaran. Ini memastikan maklumat sensitif memintas klien MCP sepenuhnya, meningkatkan keselamatan dan pematuhan.
Setelah menerima permintaan elicitation, klien memaparkan antara muka input yang sesuai. Tindakan pengguna seterusnya mencetuskan model respons tiga tindakan kembali ke pelayan: accept (pengguna menyediakan data yang diminta), decline (pengguna secara eksplisit menolak permintaan), atau cancel (pengguna menolak arahan tanpa membuat pilihan). Pelayan pintar direka untuk mengendalikan setiap senario ini dengan anggun, memastikan pengalaman yang teguh dan mesra pengguna. Sebagai contoh, alat add_expense_interactive, seperti yang ditunjukkan dalam bahan sumber, boleh membimbing pengguna melalui siri soalan—jumlah, perihalan, kategori, dan pengesahan akhir—sebelum menyerahkan data kepada backend seperti Amazon DynamoDB. Setiap langkah memanfaatkan model Pydantic untuk menentukan input yang dijangkakan, yang FastMCP menukar dengan lancar kepada Skema JSON yang diperlukan untuk permintaan elicitation/create.
Sampling dan Pemberitahuan Kemajuan: Meningkatkan Interaksi dan Ketelusan LLM
Di luar interaksi pengguna langsung, Sampling melengkapkan pelayan MCP dengan keupayaan untuk meminta kandungan yang dihasilkan LLM terus daripada klien melalui sampling/createMessage. Ini adalah mekanisme kritikal kerana ia membenarkan logik alat pada pelayan memanfaatkan keupayaan model bahasa yang berkuasa tanpa perlu menguruskan kelayakan LLMnya sendiri atau integrasi API langsung. Pelayan hanya menyediakan arahan dan keutamaan model pilihan, dan klien, bertindak sebagai perantara, menghantar permintaan ini kepada LLM yang disambungkan dan mengembalikan respons yang dihasilkan. Ini membuka pelbagai aplikasi praktikal, termasuk menghasilkan ringkasan peribadi, menjana penjelasan bahasa semula jadi daripada data berstruktur, atau menghasilkan cadangan yang sensitif konteks berdasarkan perbualan yang sedang berlangsung.
Untuk operasi yang memakan masa, Pemberitahuan Kemajuan menjadi tidak ternilai. Keupayaan ini membenarkan pelayan MCP untuk melaporkan kemas kini secara berperingkat semasa tugas yang mengambil masa yang lama. Dengan menggunakan ctx.report_progress(progress, total), pelayan boleh mengeluarkan kemas kini berterusan yang boleh diterjemahkan oleh klien kepada maklum balas visual, seperti bar kemajuan atau penunjuk status. Sama ada mencari merentasi sumber data yang luas atau melaksanakan tugas pengiraan yang kompleks, kemas kini kemajuan yang telus memastikan pengguna sentiasa dimaklumkan, mencegah kekecewaan dan meningkatkan pengalaman pengguna secara keseluruhan, daripada membiarkan mereka merenung skrin kosong tertanya-tanya sama ada sistem masih aktif.
Melindungi Pembangunan Ejen AI Masa Depan dengan Bedrock AgentCore Runtime
Pengenalan keupayaan klien MCP berkeadaan pada Amazon Bedrock AgentCore Runtime mewakili satu lonjakan besar ke hadapan dalam pembangunan ejen AI. Dengan mengubah interaksi tanpa keadaan sebelumnya menjadi perbualan dinamik dan dua hala, AWS memperkasakan pembangun untuk membina aplikasi AI yang lebih pintar, responsif dan mesra pengguna. Keupayaan ini – Elicitation untuk input pengguna berpandu, Sampling untuk penjanaan LLM atas permintaan, dan Pemberitahuan Kemajuan untuk ketelusan masa nyata – secara kolektif membuka era baharu aliran kerja ejen interaktif. Seiring dengan evolusi AI, keupayaan asas ini akan menjadi penting untuk mencipta AI agentik operasi yang canggih yang dapat berintegrasi dengan lancar ke dalam proses perniagaan yang kompleks, menyesuaikan diri dengan keperluan pengguna, dan memberikan nilai yang luar biasa.
Soalan Lazim
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?
Kekal Dikemas Kini
Dapatkan berita AI terkini dalam peti masuk anda.
