View a markdown version of this page

Inizia a usare la distribuzione diretta del codice di Amazon Bedrock AgentCore Runtime - Amazon Bedrock AgentCore

Inizia a usare la distribuzione diretta del codice di Amazon Bedrock AgentCore Runtime

L'implementazione diretta del codice ti consente di portare il tuo agente su Amazon Bedrock AgentCore Runtime semplicemente impacchettando il codice dell'agente e le sue dipendenze in un archivio di file.zip. Il tuo agente deve comunque rispettare AgentCore i requisiti di Runtime.

Per creare il pacchetto di distribuzione come archivio di file.zip, puoi utilizzare la AgentCore CLI o seguire i passaggi nelle guide specifiche della lingua riportate di seguito o qualsiasi altra utilità di file.zip come 7zip. Gli esempi mostrati nelle sezioni seguenti presuppongono che tu stia utilizzando uno strumento della linea di comando zip in un ambiente Linux o MacOS. Per utilizzare gli stessi comandi in Windows, puoi installare il sottosistema Windows per Linux per ottenere una versione di Ubuntu e Bash. Windows-integrated

Tieni presente che AgentCore Runtime utilizza le autorizzazioni per i file POSIX, quindi potrebbe essere necessario impostare le autorizzazioni per la cartella del pacchetto di distribuzione prima di creare l'archivio del file.zip.

Concetti di distribuzione diretta del codice

Scopri i concetti chiave per l'utilizzo della distribuzione diretta del codice con Amazon Bedrock AgentCore Runtime.

Argomenti

    Amazon Bedrock AgentCore Runtime con distribuzione diretta del codice utilizza un modello di responsabilità condivisa simile a AWS Lambda. AgentCore Runtime gestisce l'ambiente di runtime del linguaggio e applica automaticamente le patch di sicurezza, mentre tu ti concentri sul codice dell'agente e sulle dipendenze.

    Se utilizzi immagini di container per distribuire i tuoi agenti, AgentCore Runtime si occupa di applicare le patch solo al kernel di calcolo. In questo caso, sei responsabile della ricostruzione dell'immagine del contenitore del tuo agente a partire dall'immagine sicura più recente e della ridistribuzione dell'immagine del contenitore.

    Ciò è riassunto nella seguente tabella:

    Deployment mode (Modalità distribuzione) AgentCore Responsabilità di Runtime La tua responsabilità

    Modalità di distribuzione diretta

    Pubblica una nuova versione di Language Runtime contenente le patch più recenti per Language Runtime. Applica le patch di Language Runtime alla distribuzione diretta AgentCore di Runtime esistente.

    Aggiorna il codice dell'agente, comprese le dipendenze, per risolvere eventuali vulnerabilità di sicurezza.

    Immagine del contenitore

    Correggi automaticamente il kernel del sistema operativo di calcolo sottostante con la versione più recente.

    Aggiorna il codice dell'agente, comprese le dipendenze, per risolvere eventuali vulnerabilità di sicurezza. Ricostruisci e reimplementa regolarmente l'immagine di container utilizzando l'immagine di base più recente.

    Per ulteriori informazioni sulla responsabilità condivisa con AWS, consulta Modello di responsabilità condivisa.

    AgentCore Runtime mantiene aggiornato ogni runtime di Direct Code Deploy con aggiornamenti di sicurezza, correzioni di bug, nuove funzionalità, miglioramenti delle prestazioni e supporto per le versioni secondarie. Questi aggiornamenti di runtime vengono pubblicati come versioni di runtime. AgentCore Runtime applica gli aggiornamenti del runtime Direct Code Deploy agli agenti migrando gli agenti da una versione di runtime precedente a una nuova versione di runtime.

    Per i runtime di distribuzione diretta, Runtime applica automaticamente gli aggiornamenti AgentCore di runtime. Con gli aggiornamenti automatici del AgentCore runtime, Runtime si assume l'onere operativo di applicare patch alle versioni di runtime. Per la maggior parte dei clienti, questa dovrebbe essere una scelta sicura in quanto verranno applicate automaticamente solo le patch di runtime in linguaggio e i clienti hanno la responsabilità di importare e gestire le dipendenze del codice. Attualmente AgentCore Runtime non supporta la modifica di questo comportamento di patching automatico.

    AgentCore Runtime si impegna a fornire aggiornamenti di runtime retrocompatibili con le funzioni esistenti. Tuttavia, come nel caso delle patch software, ci sono rari casi in cui un aggiornamento del runtime può influire negativamente su una funzione esistente. Ad esempio, le patch di sicurezza possono evidenziare un problema di fondo di una funzione esistente che dipende dal comportamento precedente e non sicuro. Se in casi estremamente rari questo rischio non è accettabile, utilizza le immagini dei container per distribuire l'agente.

    Alcune delle dimensioni del confronto servono a vedere in che modo un'opzione differisce dall'altra, quindi è utile scegliere l'opzione giusta

    • Processo di distribuzione: la distribuzione diretta del codice distribuisce gli agenti utilizzando file ZIP anziché contenitori, prestandosi a iterazioni di sviluppo più rapide.

    • Tempo di implementazione: sebbene non vi sia molta differenza durante la prima distribuzione di un agente, gli aggiornamenti successivi dell'agente sono significativamente più rapidi con la distribuzione diretta del codice.

    • Personalizzazione: Direct Code supporta dipendenze personalizzate tramite ZIP-based la creazione di pacchetti, pur mantenendo la semplicità di implementazione, mentre il codice è basato su contenitori e dipende da un file Docker.

    • Dimensioni del pacchetto: la distribuzione diretta del codice limita la dimensione del pacchetto a 250 MB, mentre i pacchetti basati su container possono avere dimensioni fino a 2 GB.

    • Velocità di creazione delle sessioni: l'implementazione diretta del codice consente la creazione di 25 nuove sessioni, sessions/second rispetto alle 1,6 nuove sessions/second implementazioni basate su container.

    La nostra guida generale è

    • Se la dimensione del pacchetto di distribuzione supera i 250 MB e disponi di CI/CD pipeline di container esistenti e hai bisogno di dipendenze e pacchetti altamente specializzati, le implementazioni basate su container sono una buona opzione da scegliere.

    • Se le dimensioni del pacchetto di distribuzione sono ridotte, il codice e il pacchetto non sono complessi da creare e utilizzano framework e linguaggi comuni e sono necessarie prototipazione e iterazione rapide, la soluzione ideale è la distribuzione diretta del codice.

    Esiste anche un'opzione ibrida in cui gli sviluppatori utilizzano l'implementazione diretta del codice per sperimentare e prototipare rapidamente agenti e quindi passare a implementazioni basate su container (per i motivi sopra indicati) per lo sviluppo, il test e l'implementazione in produzione.