

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Sincronización de los datos con la base de conocimientos de Amazon Bedrock
<a name="kb-data-source-sync-ingest"></a>

Tras crear la base de conocimientos, puede ingerir o sincronizar los datos para poder consultarlos. La ingesta convierte los datos sin procesar del origen de datos en incrustaciones vectoriales, según el modelo de incrustaciones vectoriales y las configuraciones que haya especificado.

Antes de iniciar la ingesta, compruebe que el origen de datos cumpla las siguientes condiciones:
+ Se ha configurado la información de conexión del origen de datos. Para configurar un conector de origen de datos para que rastree los datos del repositorio de orígenes de datos, consulte [Supported data source connectors](https://docs.aws.amazon.com/bedrock/latest/userguide/data-source-connectors.html). Se ha configurado el origen de datos como parte de los pasos de creación de la base de conocimientos.
+ Se ha configurado el modelo de incrustación vectorial y el almacén vectorial elegidos. Consulte los [modelos de incrustaciones vectoriales compatibles](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-supported.html) y los [almacenes vectoriales para bases de conocimientos](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup.html). Se han configurado las incrustaciones vectoriales como parte de los pasos de creación de la base de conocimientos.
+ Los archivos son del formato admitido. Para obtener más información, consulte [Formatos de documentos admitidos](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-ds.html#kb-ds-supported-doc-formats-limits).
+ Los archivos no deben superar el **Tamaño del archivo de trabajo de ingesta** especificado en los [Amazon Bedrock endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/bedrock.html) en la Referencia general de AWS.
+ Si el origen de datos contiene archivos de metadatos, compruebe las siguientes condiciones para asegurarse de que no se omitan los archivos de metadatos:
  + Cada archivo `.metadata.json` comparte el mismo nombre y extensión que el archivo de origen al que está asociado.
  + Si el índice vectorial de su base de conocimientos se encuentra en un almacén vectorial de Amazon OpenSearch Serverless, compruebe que el índice vectorial esté configurado con el `faiss` motor. Si el índice vectorial está configurado con el motor `nmslib`, deberá realizar una de las siguientes acciones:
    + [Cree una nueva base de conocimientos](knowledge-base-create.md) en la consola y deje que Amazon Bedrock cree automáticamente un índice vectorial en Amazon OpenSearch Serverless por usted.
    + [Crear otro índice vectorial](knowledge-base-setup.md) en el almacén vectorial y seleccionar `faiss` como el **motor**. A continuación, [cree una nueva base de conocimientos](knowledge-base-create.md) y especifique el nuevo índice vectorial.
  + Si el índice vectorial de la base de conocimiento se encuentra en un clúster de bases de datos de Amazon Aurora, le recomendamos que utilice el campo de metadatos personalizado para almacenar todos los metadatos en una sola columna y crear un índice en esa columna. Si no proporciona el campo de metadatos personalizado, compruebe que la tabla del índice contenga una columna para cada propiedad de metadatos de los archivos de metadatos antes de iniciar la ingesta. Para obtener más información, consulte [Requisitos previos para usar un almacén de vectores que haya creado para una base de conocimiento](knowledge-base-setup.md).

Cada vez que añada, modifique o elimine archivos del origen de datos, debe sincronizar el origen de datos para volver a indexarlo en la base de conocimientos. La sincronización es incremental, por lo que Amazon Bedrock solo procesa los documentos añadidos, modificados o eliminados desde la última sincronización.

## Cómo gestiona una base de conocimientos las resincronizaciones
<a name="kb-data-source-sync-ingest-resync"></a>

Cada vez que añada, modifique o elimine archivos de la fuente de datos, debe sincronizar la fuente de datos para volver a indexarla en la base de conocimientos. La sincronización es incremental, por lo que Amazon Bedrock procesa solo los documentos que se han agregado, modificado o eliminado desde la última sincronización. Al sincronizar una fuente de datos, Amazon Bedrock vuelve a ingerir los documentos para garantizar la precisión y la coherencia. Re-ingestion incluye el análisis, la fragmentación, la generación de incrustaciones y la indexación en el almacén de vectores.


**Escenarios de sincronización**  

| Escenario | ¿Qué sucede? | 
| --- | --- | 
| No se detectaron cambios | Se omite el documento. | 
| El contenido o los metadatos han cambiado | El documento se vuelve a ingerir (se vuelve a analizar, se vuelve a segmentar, se vuelve a incrustar y se vuelve a indexar). | 
| Se ha añadido un nuevo documento | Solo se ingiere el documento nuevo. | 
| Documento eliminado | El documento se elimina del almacén de vectores. | 

### Metadata-only optimización
<a name="kb-data-source-sync-ingest-metadata-optimization"></a>

En algunos casos, Amazon Bedrock puede actualizar los metadatos sin volver a ingerir el documento asociado a ese archivo de metadatos. Esta optimización recupera las incrustaciones vectoriales existentes del almacén de vectores, fusiona los nuevos metadatos y vuelve a escribir las incrustaciones actualizadas, lo que evita tener que recurrir al modelo de incrustación.

Esta optimización solo se aplica cuando se cumplen todas las condiciones siguientes:
+ Solo se modifican los `metadata.json` archivos. No se modifica ningún archivo de contenido.
+ Los archivos de contenido asociados no son archivos CSV.
+ La fuente de datos no utiliza una función Lambda de transformación personalizada.

### Re-ingestion comportamiento de los archivos CSV
<a name="kb-data-source-sync-ingest-csv-reingestion"></a>

Los archivos CSV utilizan el `documentStructureConfiguration` campo de los metadatos para controlar qué columnas se indexan. Como Amazon Bedrock no puede determinar si esta configuración estructural ha cambiado sin volver a procesar el archivo, los archivos CSV siempre se vuelven a ingerir cuando se actualizan sus archivos de metadatos.

Para obtener más información sobre cómo ingerir los datos en la base de conocimiento y sincronizarlos con los datos más recientes, seleccione la pestaña correspondiente al método que prefiera y siga estos pasos:

------
#### [ Console ]

**Ingesta de los datos en la base de conocimientos y sincronización con los datos más actuales**

1. Abra la consola Amazon Bedrock en [https://console.aws.amazon.com/bedrock/](https://console.aws.amazon.com/bedrock/).

1. En el panel de navegación izquierdo, seleccione **Base de conocimientos** y elija su base de conocimientos.

1. En la sección **Origen de datos**, seleccione **Sincronizar** para iniciar la ingesta de datos o para sincronizar con los datos más recientes. Para detener la sincronización actual de un origen de datos, seleccione **Detener**. Una fuente de datos debe estar sincronizándose actualmente para detener la sincronización de la fuente de datos. Puede seleccionar **Sincronizar** para ingerir el resto de los datos.

1. Cuando se complete la ingesta de datos, aparecerá un banner verde de confirmación si se ha realizado correctamente.
**nota**  
Una vez finalizada la sincronización de datos, es posible que las incrustaciones vectoriales de los datos que se acaban de sincronizar tarden unos minutos en reflejarse en la base de conocimientos y estar disponibles para realizar consultas si utiliza un almacén vectorial que no sea Amazon Aurora (RDS).

1. Puede elegir un origen de datos para ver su **Historial de sincronización**. Seleccione **Ver advertencias** para ver por qué ha fallado un trabajo de ingesta de datos.

------
#### [ API ]

Para incorporar sus datos a su base de conocimientos y sincronizarlos con los datos más recientes, envíe una [StartIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html)solicitud a un punto límite de tiempo de [compilación de Agents for Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt). Especifique el `knowledgeBaseId` y el `dataSourceId`. También puede detener un trabajo de ingesta de datos que se esté ejecutando actualmente enviando una solicitud. [StopIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StopIngestionJob.html) Especifique los valores de `dataSourceId`, `ingestionJobId` y `knowledgeBaseId`. Debe haber un trabajo de ingesta de datos en ejecución para detener la ingesta de datos. Puede volver a enviar una solicitud `StartIngestionJob` para ingerir el resto de los datos cuando esté listo.

Utilice lo `ingestionJobId` devuelto en la respuesta de una [GetIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetIngestionJob.html)solicitud con un [punto final de tiempo de compilación de Agents for Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt) para realizar un seguimiento del estado del trabajo de ingestión. Además, especifique el `knowledgeBaseId` y el `dataSourceId`.
+ Cuando finalice el trabajo de ingesta, el `status` de la respuesta es `COMPLETE`.
**nota**  
Una vez finalizada la ingesta de datos, es posible que las incrustaciones vectoriales de los datos que se acaban de ingerir tarden unos minutos en estar disponibles en el almacén vectorial para realizar consultas si utiliza un almacén vectorial que no sea Amazon Aurora (RDS).
+ El objeto `statistics` de la respuesta devuelve información sobre si la ingesta se realizó correctamente o no en el caso de los documentos del origen de datos.

También puede ver la información de todos los trabajos de ingestión de una fuente de datos enviando una [ListIngestionJobs](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ListIngestionJobs.html)solicitud con un punto límite de tiempo de [compilación de Agents for Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt). Especifique el `dataSourceId` y el `knowledgeBaseId` de la base de conocimientos desde los que se ingieren los datos.
+ Filtre los resultados especificando el estado que desee buscar en el objeto `filters`.
+ Puede ordenarlos por la hora en que se inició el trabajo o por el estado de un trabajo especificando el objeto `sortBy`. Puede especificar un orden ascendente o descendente.
+ Especifique el número máximo de resultados que se devuelven en una respuesta en el campo `maxResults`. Si hay más resultados que la cantidad que ha establecido, la respuesta devuelve un `nextToken` que puede enviar en otra solicitud [ListIngestionJobs](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_ListIngestionJobs.html) para ver el siguiente lote de trabajos.

------