View a markdown version of this page

Aggiornare un pacchetto di configurazione - Fondamento Amazon AgentCore

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

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 catenaparentVersionIds, simile ai commit di git.

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 le informazioni corrette: 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)

Aggiornamento modificando l'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']}")

Aggiorna con un prompt di sistema consigliato in base a un risultato consigliato:

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

Sì

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. Commit di unione: 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 della filiale per questa versione. Se non specificato, eredita il ramo del genitore o il valore predefinito è. mainline

commitMessage

Stringa

No

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

createdBy

Oggetto

No

Fonte che ha creato questa versione. Contiene name (obbligatorio) e arn (opzionale). Usalo per verificare se una versione è stata creata da un utente, da un job 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 trasmetti un genitore single. La nuova versione estende la discendenza delle filiali.

  • Nuova filiale. Specifica una versione branchName che non esiste ancora e una che parentVersionIds punti alla versione da cui vuoi ramificarti.

  • Unisci i commit. Passaggio dueparentVersionIds: la prima è l'ultima versione sul ramo di destinazione, la seconda è l'ultima sul ramo sorgente. Questo crea un merge commit 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 versione. La versione principale specificata non è l'ultima disponibile nella filiale. Recupera la versione più recente e riprova.

AccessDeniedException

403

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

ThrottlingException

429

Percentuale di richieste superata. Riprova con un backoff esponenziale.

InternalServerException

500

Service-side errore. Riprova la richiesta .