Saltar al contenido

¿Cómo soluciono el error «Failed to delete knowledge base» en Amazon Bedrock?

4 minutos de lectura
0

He intentado eliminar la base de conocimientos de Amazon Bedrock y recibí el error «Failed to delete knowledge base».

Descripción corta

Al crear una base de conocimientos, la dataDeletionPolicy predeterminada se establece en Eliminar. Si eliminas el origen de datos asociado a la base de conocimientos, la política elimina todos los datos, pero no elimina el almacén vectorial. Si configuras la dataDeletionPolicy en Retener, la política conservará todos los datos si eliminas el origen de datos.

Al eliminar una base de conocimientos de Amazon Bedrock, es posible que recibas el siguiente error:

«Failed to delete example-knowledge-base. Unable to delete data from vector store for data source with example-id. Check your vector store configurations and permissions and retry your request. If the issue persists, consider updating the dataDeletionPolicy of the data source to RETAIN and retry your request».

Este error se produce por uno de los siguientes motivos:

  • El almacén de vectores no existe o se eliminó anteriormente.
  • El rol de ejecución de la base de conocimientos no cuenta con los permisos de AWS Identity and Access Management (IAM) para eliminar los datos almacenados en el almacén de vectores.
  • El rol de servicio de base de conocimientos no tiene los permisos necesarios para operar API de bases de datos específicas.

Para solucionar este error, completa una o más de estas resoluciones.

Resolución

Confirmación de que el almacén de vectores asociado existe

Sigue estos pasos:

  1. Abre la consola de Amazon OpenSearch Service.
  2. En el panel de navegación, expande Sin servidor y elige Recopilaciones.
  3. En la barra de búsqueda, introduce la recopilación asociada a la base de conocimientos. Si la recopilación no está disponible, ya has eliminado el almacén de vectores.

Configuración de la política de eliminación de datos en Retener

Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de problemas de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.

Sigue estos pasos:

  1. Abre la consola de Amazon Bedrock.
  2. En el panel de navegación, en Crear, elige Bases de conocimientos.
  3. Busca la base de conocimientos con el estado Eliminación fallida.
  4. Selecciona el nombre del origen de datos para esa base de conocimientos.
  5. Selecciona Editar.
  6. Expande Configuración avanzada y define la política de eliminación de datos en Retener.
  7. Selecciona Enviar.
  8. Elimina el origen de datos.
  9. Elimina la base de conocimientos.

También puedes ejecutar el comando update-data-source de la AWS CLI para cambiar la política de eliminación de orígenes de datos:

aws bedrock-agent update-data-source --region region-name --data-source-id your-data-source-id --knowledge-base-id your-knowledge-base-id --name "your-knowledge-base-name" --data-source-configuration '{"s3Configuration":{"bucketArn":"arn:aws:s3:::<S3_Bucket_Name>"},"type":"S3"}' --vector-ingestion-configuration '{"parsingConfiguration":{"bedrockFoundationModelConfiguration":{"modelArn":"arn:aws:bedrock:region: account-id:inference-profile/model_id"},"parsingStrategy":"BEDROCK_FOUNDATION_MODEL"}}' --data-deletion-policy "RETAIN"

Nota: Sustituye los siguientes valores:

  • region-name por tu región de AWS
  • your-data-source-id por el ID de tu origen de datos
  • your-knowledge-base-id por el ID de tu base de conocimientos
  • your-knowledge-base-name por el nombre de tu base de conocimientos
  • region por tu región
  • account-id por el ID de tu cuenta de AWS
  • model_id por el ID de tu modelo de Amazon Bedrock

Concesión de permisos al rol de IAM para eliminar datos

Para resolver tus problemas de permisos, realiza una de las siguientes acciones en función del servicio que utilices para el almacén de vectores:

  • Para Amazon OpenSearch sin servidor, actualiza la política de acceso a los datos con los permisos de eliminación.

  • Para la edición de Amazon Aurora compatible con PostgreSQL, ejecuta uno de los siguientes comandos SQL para conceder el permiso al usuario principal:

    GRANT pg_read_all_data, pg_write_all_data TO example-username;

    Nota: Sustituye example-username por el nombre de usuario principal.
    Alternativa:
    Ejecuta el siguiente código:

    GRANT SELECT, DELETE ON example-schema-name. example-table-name TO example-username;

    Nota: Sustituye example-schema-name por el nombre del esquema, example-table-name por el nombre de la tabla y example-username por el usuario principal.

  • En el caso de las bases de datos de terceros, asegúrate de tener los permisos necesarios para la eliminación de datos.

OFICIAL DE AWSActualizada hace 8 meses