

# AgentCore aprovechar el control de versiones y los puntos finales
<a name="harness-versioning"></a>

Amazon Bedrock AgentCore implementa el control de versiones automático para los AgentCore arneses y le permite administrar diferentes configuraciones mediante puntos de conexión. El versionado de Harness funciona de la misma manera que el [versionado en AgentCore tiempo](agent-runtime-versioning.md) real (el arnés es una abstracción gestionada en lugar de Runtime), pero se administra a través de las API del plano de control de arneses.

Cada arnés de Amazon Bedrock AgentCore se versiona automáticamente:
+ Al crear un arnés, crea AgentCore automáticamente la versión 1 (V1)
+ Cada actualización del arnés crea una nueva versión con una configuración completa e independiente
+ Una vez creadas, las versiones son inmutables
+ Cada versión contiene toda la configuración necesaria para la ejecución: modelo, indicador del sistema, herramientas, memoria, límites y entorno

## ¿Cómo hacen referencia los puntos finales a las versiones
<a name="harness-endpoint-versioning"></a>

Los puntos finales proporcionan una forma de hacer referencia a versiones específicas del arnés:
+ El `DEFAULT` punto final apunta automáticamente a la versión más reciente del arnés
+ Los puntos finales pueden apuntar a versiones específicas, lo que le permite mantener diferentes entornos (por ejemplo, de desarrollo, puesta en escena o producción)
+ Al actualizar un arnés, el `DEFAULT` punto final se actualiza automáticamente para que apunte a la nueva versión
+ Los puntos finales deben actualizarse de forma explícita para que apunten a nuevas versiones

 **Ejemplo: actualizar un punto final a una nueva versión** 

**Example**  

```
import boto3

control_client = boto3.client('bedrock-agentcore-control', region_name='us-west-2')

response = control_client.update_harness_endpoint(
    harnessId='MyHarness-UuFdkQoXSL',
    endpointName='production-endpoint',
    targetVersion='2',
    description='Updated production endpoint'
)

print(response)
```
O con la AWS CLI:  

```
aws bedrock-agentcore-control update-harness-endpoint \
  --harness-id "MyHarness-UuFdkQoXSL" \
  --endpoint-name "production-endpoint" \
  --target-version "2" \
  --description "Updated production endpoint"
```

## Escenarios de control de versiones
<a name="harness-versioning-scenarios"></a>

La siguiente tabla ilustra cómo interactúan el control de versiones y los puntos finales durante el ciclo de vida de un arnés:


| Tipo de cambio | Comportamiento de creación de versiones | Última versión | Comportamiento del terminal | 
| --- | --- | --- | --- | 
| Creación inicial | Crea la versión 1 (V1) automáticamente | V1 | DEFAULT apunta a V1 | 
| Cambio de modelo | Crea una nueva versión con la selección de modelos actualizada | V2 | DEFAULT se actualiza automáticamente a V2 | 
| Cree un punto final «PROD» con V2 | No se ha creado ninguna versión nueva | V2 | El punto final de PROD apunta a la V2 | 
| Actualización de herramienta o habilidad | Crea una nueva versión con la configuración de herramientas actualizada | V3 | DEFAULT se actualiza a la V3, PROD permanece en la V2 | 
| Actualice «PROD» a la V3 | No se ha creado ninguna versión nueva | V3 | PROD se actualiza a la V3 | 
| Límites o modificación del entorno | Crea una nueva versión con parámetros de ejecución actualizados | V4 | DEFAULT se actualiza a la V4, PROD permanece en la V3 | 

## Estados del ciclo de vida del terminal
<a name="harness-endpoint-lifecycle"></a>

Los puntos finales de Harness pasan por varios estados durante su ciclo de vida:

CREAR  
Estado inicial cuando se crea un punto final

CREATE\_FAILED  
Indica un error de creación debido a los permisos, la configuración u otros problemas

PREPARADO  
El punto final está listo para aceptar solicitudes

ACTUALIZANDO  
El punto final se está actualizando a una nueva versión

UPDATE\_FAILED  
Indica un error en la operación de actualización

## Creación de un punto de conexión
<a name="harness-creating-endpoints"></a>

Cree un punto final con nombre para anclar un entorno a una versión de arnés específica. Si lo omite`targetVersion`, el punto final apunta a la versión más reciente en el momento de la creación.

**Example**  

```
import boto3

control_client = boto3.client('bedrock-agentcore-control', region_name='us-west-2')

response = control_client.create_harness_endpoint(
    harnessId='MyHarness-UuFdkQoXSL',
    endpointName='production-endpoint',
    targetVersion='2',
    description='Production endpoint pinned to V2'
)

print(response)
```
O con la AWS CLI:  

```
aws bedrock-agentcore-control create-harness-endpoint \
  --harness-id "MyHarness-UuFdkQoXSL" \
  --endpoint-name "production-endpoint" \
  --target-version "2" \
  --description "Production endpoint pinned to V2"
```

## Listado de versiones de arneses y terminales
<a name="harness-listing-versions"></a>

Puede enumerar todas las versiones de un arnés llamando a la `ListHarnessVersions` operación. Para ver una lista de los puntos finales de un arnés, llame`ListHarnessEndpoints`.

**Example**  

```
import boto3

control_client = boto3.client('bedrock-agentcore-control', region_name='us-west-2')

# List all versions of a harness
versions = control_client.list_harness_versions(
    harnessId='MyHarness-UuFdkQoXSL'
)
for version in versions['harnessVersions']:
    print(version)

# List all endpoints for a harness
endpoints = control_client.list_harness_endpoints(
    harnessId='MyHarness-UuFdkQoXSL'
)
for endpoint in endpoints['endpoints']:
    print(endpoint)
```
O con la AWS CLI:  

```
aws bedrock-agentcore-control list-harness-versions \
  --harness-id "MyHarness-UuFdkQoXSL"

aws bedrock-agentcore-control list-harness-endpoints \
  --harness-id "MyHarness-UuFdkQoXSL"
```
Ambas operaciones admiten la paginación mediante `maxResults` y`nextToken`. Para recuperar la configuración de un único punto final, llame`GetHarnessEndpoint`; para eliminar uno, llame`DeleteHarnessEndpoint`.

## Temas relacionados
<a name="_related_topics"></a>
+  [Introducción](harness-get-started.md)- crea e invoca tu primer arnés
+  [Modelos e instrucciones](harness-models.md)- configurar agentes, modelos y proveedores
+  [Controles de observabilidad y costos](harness-operations.md)- observabilidad, controles de costes y etiquetas
+  [AgentCore Control de versiones en tiempo de ejecución y puntos finales](agent-runtime-versioning.md)- control de versiones y puntos finales para Runtime AgentCore 