

# Activos de habilidades para agentes de IA
<a name="catalog-skill-assets"></a>

**nota**  
El contexto empresarial y la búsqueda semántica se encuentran en una versión preliminar para AWS Glue, y están sujetos a cambios.

## Qué son los activos de habilidades
<a name="catalog-skill-assets-overview"></a>

Los activos de habilidades son activos de catálogo que remiten a una ubicación URI que contiene información contextual utilizada por los agentes de IA al trabajar con sus datos. El URI puede hacer referencia a una ubicación accesible (como un archivo Markdown en Amazon S3, un documento en un repositorio de Git o una página wiki) donde se almacenan conocimientos organizativos y de dominio, así como referencias e instrucciones específicas de uno o más conjuntos de datos.

Los usos comunes del contenido relacionado con las habilidades son los siguientes:
+ Contexto organizacional (por ejemplo, qué equipos poseen qué dominios de datos, cómo establecen las métricas clave y qué procesos empresariales generan los datos)
+ Reglas y restricciones de uso de datos específicas de su organización
+ Patrones de consulta comunes y ejemplos de SQL para los conjuntos de datos

Con el formulario `amazon::RelatedTo`, puede asociar las habilidades con los activos de datos. Cuando un agente recupera un activo, encuentra los ID de habilidad asociados, busca la habilidad y carga el contenido del URI en su contexto de razonamiento.

Existen dos tipos de habilidades:
+ **Habilidades personalizadas**: las ha creado usted y se pueden buscar a través de la API `SearchAssets`. Los identificadores no deben empezar por `amazon.`
+ **Habilidades integradas**: propiedad de Amazon, inmutables, a las que se accede directamente mediante un ID (por ejemplo, `amazon.skill::querying-aws-s3`).

## Cómo crear y asociar una habilidad
<a name="catalog-skill-assets-create"></a>

### Paso 1: Crear la habilidad
<a name="catalog-skill-assets-create-skill"></a>

```
aws glue put-asset \
    --asset-type-id "amazon::Skill" \
    --identifier "sales-table-skill" \
    --name "sales-table-skill" \
    --forms '{"amazon::Skill":{"FormTypeId":"amazon::Skill","Content":"{\"uri\": \"s3://my-bucket/skills/sales-table-skill.md\"}"}}'
```

### Paso 2: Asociar la habilidad a una tabla
<a name="catalog-skill-assets-create-associate"></a>

```
aws glue put-attachment \
    --asset-identifier "arn:aws:glue:us-east-1:123456789012:table/mydb/sales_transactions" \
    --attachment-name relatedTo \
    --form-type-id "amazon::RelatedTo" \
    --content '{"assetIdentifiers":["sales-table-skill"]}'
```

## Cómo se definen las relaciones
<a name="catalog-skill-assets-relationships"></a>

Las relaciones utilizan el formulario integrado `amazon::RelatedTo`. Una relación declarada en cualquiera de los activos aparece de forma simétrica para ambos en la búsqueda basada en relaciones.

```
{ "assetIdentifiers": ["<related-asset-id>"] }
```

Asócielo directamente al crear el activo (`PutAsset --forms`) o después (`PutAttachment`).

## Cómo buscar recursos de habilidades
<a name="catalog-skill-assets-list"></a>

```
aws glue search-assets \
    --filter-clause '{"AttributeFilter":{"Attribute":"type","Operator":"equals","Value":{"StringValue":"Skill"}}}' \
    --max-results 20
```

## Habilidades integradas
<a name="catalog-skill-assets-builtin"></a>

Utilice los siguientes ID de las habilidades de Amazon:
+ `amazon.skill::querying-aws-s3`
+ `amazon.skill::querying-aws-cloudwatch`
+ `amazon.skill::querying-aws-sagemaker-catalog`

## Cómo eliminar un activo de habilidades
<a name="catalog-skill-assets-delete"></a>

```
aws glue delete-asset \
    --identifier {{skill-asset-id}}
```

**nota**  
Eliminar un recurso de habilidades no elimina el contenido del URI al que hace referencia.

## Consideraciones
<a name="catalog-skill-assets-considerations"></a>
+ Revise el contenido de las habilidades cuando cambie el nombre de las columnas, desapruebe las tablas o modifique las métricas.
+ Durante la vista previa, el acceso se gestiona mediante roles de IAM sin control de acceso a nivel de activos.
+ Los agentes deben tener acceso al URI de la habilidad (por ejemplo, `s3:GetObject` para los URI de Amazon S3).
+ Mantenga el contenido de las habilidades conciso para minimizar el uso de la ventana de contexto.