View a markdown version of this page

Aggiornare un pacchetto di configurazione - Amazon Bedrock AgentCore

Aggiornare un pacchetto di configurazione

Aggiorna un pacchetto di configurazione per creare una nuova versione immutabile con configurazione modificata. Ogni aggiornamento produce un nuovo ID di versione; le versioni esistenti non vengono mai modificate. Le versioni formano una catena viaparentVersionIds, simile ai git commits.

Esempi di codice

Esempio
AgentCore CLI

Modifica la configurazione agentcore.json e ridistribuiscila. La CLI rileva il pacchetto esistente e crea automaticamente una nuova versione con la versione corretta: parentVersionIds

# Edit the bundle configuration in agentcore.json (change model_id, system prompt, etc.) # Then redeploy to create a new version: agentcore deploy # After deploying, confirm a new immutable version was created: agentcore cb versions --name MyBundle # Inspect what changed between two versions (get IDs from `cb versions`): agentcore cb diff --name MyBundle --from <v1> --to <v2>
AWS SDK (boto3)

Aggiorna la modifica dell'ID del modello:

import boto3 import uuid client = boto3.client("bedrock-agentcore-control", region_name="us-west-2") RUNTIME_ARN = "arn:aws:bedrock-agentcore:us-west-2:123456789012:runtime/MyAgent-abc123" response = client.update_configuration_bundle( bundleId="myAgentConfig-a1b2c3d4e5", components={ RUNTIME_ARN: { "configuration": { "system_prompt": "You are a helpful customer support assistant.", "model_id": "us.anthropic.claude-sonnet-4-20250514-v1:0", "temperature": 0.7, } } }, parentVersionIds=["12345678-1234-1234-1234-123456789012"], commitMessage="Switch to Claude Sonnet 4", clientToken=str(uuid.uuid4()), ) print(f"New version ID: {response['versionId']}")

Aggiornamento con un prompt di sistema consigliato in base a un risultato di raccomandazione:

import boto3 import uuid cp_client = boto3.client("bedrock-agentcore-control", region_name="us-west-2") dp_client = boto3.client("bedrock-agentcore", region_name="us-west-2") RUNTIME_ARN = "arn:aws:bedrock-agentcore:us-west-2:123456789012:runtime/MyAgent-abc123" # Get the recommendation result recommendation = dp_client.get_recommendation(recommendationId="myRec-a1b2c3d4e5") recommended_prompt = recommendation["result"]["systemPromptRecommendationResult"]["recommendedSystemPrompt"] # Update the bundle with the recommended prompt response = cp_client.update_configuration_bundle( bundleId="myAgentConfig-a1b2c3d4e5", components={ RUNTIME_ARN: { "configuration": { "system_prompt": recommended_prompt, "model_id": "global.anthropic.claude-sonnet-4-5-20250929-v1:0", "temperature": 0.7, } } }, parentVersionIds=["12345678-1234-1234-1234-123456789012"], commitMessage="Apply recommended system prompt", createdBy={"name": "optimization-job", "arn": recommendation["recommendationArn"]}, clientToken=str(uuid.uuid4()), ) print(f"New version ID: {response['versionId']}")

Parametri della richiesta

Parametro Tipo Campo obbligatorio Descrizione

bundleId

Stringa

L'ID del pacchetto di configurazione da aggiornare. Passato come parametro di percorso.

bundleName

Stringa

No

Nome aggiornato per il pacchetto.

description

Stringa

No

Descrizione aggiornata. Massimo 500 caratteri.

components

Eseguire la mappatura

No

Configurazioni dei componenti aggiornate. Crea una nuova versione con questi componenti.

parentVersionIds

Elenco di stringhe

No

ID della versione principale per il tracciamento del lignaggio. Richiesto durante l'aggiornamentocomponents. Impegni regolari: genitore single. Unisci commit: due genitori (ramo di destinazione più recente, ramo di origine più recente). Se il ramo esiste già, il primo genitore deve essere l'ultima versione di quel ramo.

branchName

Stringa

No

Nome del ramo per questa versione. Se non specificato, eredita il ramo del genitore o l'impostazione predefinita è. mainline

commitMessage

Stringa

No

Messaggio di commit che descrive le modifiche. Massimo 500 caratteri.

createdBy

Oggetto

No

Fonte che ha creato questa versione. Contiene name (obbligatorio) e arn (opzionale). Utilizzalo per verificare se una versione è stata creata da un utente, da un processo di raccomandazione o da un'altra automazione.

clientToken

Stringa

No

Token di idempotenza.

Risposta

Campo Tipo Description

bundleArn

Stringa

ARN del pacchetto di configurazione.

bundleId

Stringa

ID del pacchetto di configurazione.

versionId

Stringa

UUID della nuova versione creata da questo aggiornamento.

updatedAt

Time stamp

Quando è stato applicato l'aggiornamento.

Ramificazioni e fusioni

I pacchetti di configurazione supportano la ramificazione simile a git:

  • Commit lineari. Ometti parentVersionIds o passa un solo genitore. La nuova versione estende la discendenza delle filiali.

  • Nuova filiale. Specificate un elemento branchName che non esiste ancora e un parentVersionIds riferimento alla versione da cui desiderate effettuare la diramazione.

  • Unisci i commit. Secondo passaggioparentVersionIds: la prima è l'ultima versione sul ramo di destinazione, la seconda è l'ultima sul ramo di origine. Questo crea un commit di unione sul ramo di destinazione.

Errori

Errore Stato HTTP Description

ValidationException

400

Parametri di richiesta non validi. Controlla i vincoli dei campi.

ResourceNotFoundException

404

Il valore specificato bundleId non esiste.

ConflictException

409

Conflitto di versioni. La versione principale specificata non è la più recente disponibile nel ramo. Recupera l'ultima versione e riprova.

AccessDeniedException

403

Autorizzazioni insufficienti. Verifica che le politiche IAM includanobedrock-agentcore:UpdateConfigurationBundle.

ThrottlingException

429

Frequenza di richiesta superata. Riprova con backoff esponenziale.

InternalServerException

500

Service-side errore. Riprova la richiesta .