View a markdown version of this page

Actualizar un paquete de configuración - Amazon Bedrock AgentCore

Actualizar un paquete de configuración

Actualice un paquete de configuración para crear una nueva versión inmutable con una configuración modificada. Cada actualización produce un nuevo identificador de versión; las versiones existentes nunca se modifican. Las versiones forman una cadena a través parentVersionIds de una cadena similar a las confirmaciones de git.

Ejemplos de código

ejemplo
AgentCore CLI

Edita la configuración agentcore.json y vuelve a implementarla. La CLI detecta el paquete existente y crea parentVersionIds automáticamente una nueva versión con la correcta:

# 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)

Actualice cambiando el ID del modelo:

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

Actualice con un mensaje del sistema recomendado a partir del resultado de una recomendación:

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

Parámetros de solicitud

Parámetro Tipo Obligatorio Descripción

bundleId

Cadena

El ID del paquete de configuración que se va a actualizar. Se pasa como parámetro de ruta.

bundleName

Cadena

No

Se ha actualizado el nombre del paquete.

description

Cadena

No

Descripción actualizada. Máximo 500 caracteres.

components

Asignación

No

Configuraciones de componentes actualizadas. Crea una nueva versión con estos componentes.

parentVersionIds

Lista de cadenas

No

Identificadores de la versión principal para el seguimiento del linaje. Necesario al realizar la actualizacióncomponents. Compromisos periódicos: monoparental. Confirmaciones de fusión: dos principales (la rama de destino, la última, la rama de origen, la última). Si la rama ya existe, la primera versión principal debe ser la última versión de esa rama.

branchName

Cadena

No

Nombre de la rama de esta versión. Si no se especifica, hereda la rama principal o toma el valor predeterminado. mainline

commitMessage

Cadena

No

Mensaje de confirmación que describe los cambios. 500 caracteres como máximo.

createdBy

Objeto

No

Fuente que creó esta versión. Contiene name (obligatorio) y arn (opcional). Utilice esta opción para comprobar si una versión ha sido creada por un usuario, un trabajo recomendado u otra automatización.

clientToken

Cadena

No

Símbolo de idempotencia.

Respuesta

Campo Tipo Description (Descripción)

bundleArn

Cadena

ARN del paquete de configuración.

bundleId

Cadena

ID del paquete de configuración.

versionId

Cadena

UUID de la nueva versión creada por esta actualización.

updatedAt

Timestamp

Cuándo se aplicó la actualización.

Ramificaciones y fusiones

Los paquetes de configuración admiten ramificaciones similares a las de git:

  • Compromisos lineales. Omitir parentVersionIds o rechazar a un padre soltero. La nueva versión amplía el linaje de la rama.

  • Sucursal nueva. Especifique una branchName que aún no exista y parentVersionIds apunte a la versión desde la que desea ramificarse.

  • Compromisos de fusión. Paso dosparentVersionIds: la primera es la última versión de la rama de destino y la segunda es la última de la rama de origen. Esto crea una confirmación de fusión en la rama de destino.

Errores

Error Estado HTTP Description (Descripción)

ValidationException

400

Parámetros de solicitud no válidos. Compruebe las restricciones de campo.

ResourceNotFoundException

404

Lo especificado bundleId no existe.

ConflictException

409

Conflicto de versiones. La versión principal especificada no es la más reciente de la rama. Busca la última versión y vuelve a intentarlo.

AccessDeniedException

403

Permisos insuficientes. Compruebe que las políticas de IAM estén incluidasbedrock-agentcore:UpdateConfigurationBundle.

ThrottlingException

429

Se superó la tasa de solicitudes. Vuelva a intentarlo con retroceso exponencial.

InternalServerException

500

Service-side error. Intente realizar de nuevo la solicitud .