Conexión a Confluence para la base de conocimientos de Amazon Bedrock - Amazon Bedrock

Conexión a Confluence para la base de conocimientos de Amazon Bedrock

Atlassian Confluence is es una herramienta colaborativa de administración del trabajo diseñada para compartir, almacenar y trabajar en la planificación de proyectos, el desarrollo de software y la administración de productos. Puede conectarse a la instancia de Confluence para su base de conocimientos de Amazon Bedrock mediante la Consola de administración de AWS de Amazon Bedrock o la API de CreateDataSource (consulte los SDK compatibles con Amazon Bedrock y AWS CLI).

nota

El conector del origen de datos de Confluence está en versión preliminar y sujeta a cambios.

Amazon Bedrock admite la conexión a instancias de Confluence Cloud. Actualmente, solo el almacén vectorial de Amazon OpenSearch sin servidor se puede usar con este origen de datos.

Existen límites en cuanto al número de archivos y MB por archivo que pueden rastrearse. Consulte Cuotas de las bases de conocimientos.

Características admitidas

  • Detección automática de los campos principales del documento

  • Filtros de inclusión o exclusión de contenido

  • El contenido incremental se sincroniza para añadir, actualizar o eliminar contenido

  • Autenticación OAuth 2.0, autenticación con token de la API de Confluence

Requisitos previos

En Confluence, asegúrese de:

  • Tomar nota de la dirección URL de la instancia de Confluence. Por ejemplo, para Confluence Cloud, https://example.atlassian.net. La URL de Confluence Cloud debe ser la URL básica y terminar en .atlassian.net.

  • Configure las credenciales de autenticación básicas que contengan un nombre de usuario (correo electrónico de la cuenta de administrador) y una contraseña (token de API de Confluence) para permitir que Amazon Bedrock se conecte a su instancia de Confluence Cloud. Para obtener más información sobre cómo crear un token de la API de Confluence, consulte Manage API tokens for your Atlassian account en el sitio web de Atlassian.

  • (Opcional) Configure una aplicación OAuth 2.0 con las credenciales de una clave de aplicación, un secreto de aplicación, un token de acceso y un token de actualización. Para obtener más información, consulte las aplicaciones de OAuth 2.0 en el sitio web de Atlassian.

  • Debe activar ciertos permisos de lectura o ámbitos para que la aplicación de OAuth 2.0 se conecte a Confluence.

    API de Confluence:

    • offline_access

    • readonly:content.attachment:confluence

    • read:confluence-content.all

    • read:confluence-content.summary

    • read:confluence-space.summary

En la cuenta de AWS, asegúrese de:

  • Almacenar sus credenciales de autenticación en un secreto de AWS Secrets Manager y tomar nota del nombre de recurso de Amazon (ARN) del secreto. Siga las instrucciones de la sección Configuración de la conexión que aparecen en esta página para incluir los pares clave-valor que deben incluirse en el secreto.

  • Incluya los permisos necesarios para conectarse al origen de datos en la política de roles y permisos de AWS Identity and Access Management (IAM) de su base de conocimientos. Para obtener más información sobre los permisos necesarios para que este origen de datos se añada a su rol de IAM en la base de conocimientos, consulte Permisos para acceder a los orígenes de datos.

nota

Si utiliza la consola, puede ir a AWS Secrets Manager para agregar el secreto o usar un secreto existente como parte del paso de configuración del origen de datos. El rol de IAM con todos los permisos necesarios se puede crear automáticamente como parte de los pasos de la consola para crear una base de conocimientos. Una vez que haya configurado el origen de datos y otras configuraciones, el rol de IAM con todos los permisos necesarios se aplicará a su base de conocimientos específica.

Le recomendamos que actualice o modifique con regularidad las credenciales y el secreto. Por su propia seguridad, proporcione solo el nivel de acceso necesario. No recomendamos reutilizar las credenciales y los secretos en distintos orígenes de datos.

Configuración de la conexión

Para conectarse a la instancia de Confluence, debe proporcionar la información de configuración necesaria para que Amazon Bedrock pueda acceder a sus datos y rastrearlos. También debe seguir los Requisitos previos.

En esta sección se incluye un ejemplo de configuración para este origen de datos.

Para obtener más información sobre la detección de campos de documento, los filtros de inclusión o exclusión, la sincronización incremental, las credenciales de autenticación secretas y su funcionamiento, seleccione lo siguiente:

El conector del origen de datos detecta y rastrea automáticamente todos los campos de metadatos principales de sus documentos o del contenido. Por ejemplo, el conector del origen de datos puede rastrear el equivalente del cuerpo del documento de sus documentos, el título del documento, la fecha de creación o modificación del documento u otros campos principales que puedan aplicarse a los documentos.

importante

Si el contenido incluye información confidencial, Amazon Bedrock podría responder utilizando información confidencial.

Puede aplicar operadores de filtrado a los campos de metadatos para mejorar aún más la relevancia de las respuestas. Por ejemplo, documente “epoch_modification_time” o el número de segundos transcurridos desde el 1 de enero de 1970 hasta que se actualizó el documento por última vez. Puede filtrar por los datos más recientes, donde “epoch_modification_time” es mayor que un número determinado. Para obtener más información sobre los operadores de filtrado que puede aplicar a los campos de metadatos, consulte Metadatos y filtrado.

Puede incluir o excluir el rastreo de determinado contenido. Por ejemplo, puede especificar un patrón de exclusión de prefijo o expresión regular para evitar el rastreo de cualquier archivo que contenga la palabra “privado” en el nombre del archivo. También puede especificar un patrón de exclusión de prefijo o expresión regular para incluir determinadas entidades o tipos de contenido. Si especifica un filtro de inclusión y exclusión y ambos coinciden con un documento, el filtro de exclusión tiene prioridad y el documento no se rastrea.

Un ejemplo de patrón de expresiones regulares para excluir o filtrar archivos PDF que contienen la palabra “privado” en el nombre del archivo: ".*private.*\\.pdf".

Puede aplicar filtros de inclusión o exclusión a los siguientes tipos de contenido:

  • Space: tecla de espacio única

  • Page: título de la página principal

  • Blog: título principal del blog

  • Comment: comentarios que pertenecen a una determinada página o blog. Especifique Re: Page/Blog Title.

  • Attachment: nombre del archivo asociado con su extensión

El conector del origen de datos rastrea el contenido nuevo, modificado y eliminado cada vez que el origen de datos se sincroniza con la base de conocimientos. Amazon Bedrock puede utilizar el mecanismo del origen de datos para realizar un seguimiento de los cambios en el contenido y rastrear el contenido modificado desde la última sincronización. Al sincronizar el origen de datos con la base de conocimientos por primera vez, todo el contenido se rastrea de forma predeterminada.

Para sincronizar el origen de datos con la base de conocimientos, utilice la API de StartIngestionJob o seleccione su base de conocimientos en la consola y seleccione Sincronizar en la sección de información general del origen de datos.

importante

Todos los datos que sincronice desde el origen de datos estarán disponibles para cualquier persona que tenga permisos bedrock:Retrieve para obtenerlos. Esto también puede incluir los datos con permisos de orígenes de datos controlados. Para obtener más información, consulte Permisos de la base de conocimientos.

(Si utiliza la autenticación básica) Las credenciales de autenticación secretas en AWS Secrets Manager deben incluir los siguientes pares clave-valor:

  • username: dirección de correo electrónico del usuario administrador de la cuenta de Atlassian

  • password: token de la API de Confluence

(Si utiliza la autenticación OAuth 2.0) Las credenciales de autenticación secretas en AWS Secrets Manager deben incluir los siguientes pares clave-valor:

  • confluenceAppKey: clave de aplicación

  • confluenceAppSecret: secreto de aplicación

  • confluenceAccessToken: token de acceso a la aplicación

  • confluenceRefreshToken: token de actualización de la aplicación

nota

El token de acceso OAuth2.0 de Confluence tiene un período de caducidad predeterminado de 60 minutos. Si este token caduca mientras se está sincronizando el origen de datos (trabajo de sincronización), Amazon Bedrock utilizará el token de actualización proporcionado para regenerar este token. Esta regeneración actualiza los tokens de acceso y de actualización. Para mantener los tokens actualizados desde el trabajo de sincronización actual al siguiente trabajo de sincronización, Amazon Bedrock necesita permisos de escritura o colocación para las credenciales secretas como parte del rol de IAM en la base de conocimientos.

nota

Su clave secreta en AWS Secrets Manager debe usar la misma región que su base de conocimientos.

Console

El siguiente es un ejemplo de una configuración para conectarse a Confluence para la base de conocimientos de Amazon Bedrock. El origen de datos se configura como parte de los pasos de creación de la base de conocimientos en la consola.

  1. Inicie sesión en la AWS Management Console con un rol de IAM con los permisos de Amazon Bedrock y abra la consola de Amazon Bedrock en https://console.aws.amazon.com/bedrock/.

  2. En el panel de navegación de la izquierda, seleccione Base de conocimientos.

  3. En la sección Base de conocimientos, seleccione Crear base de conocimientos.

  4. Proporcione los detalles de la base de conocimientos.

    1. Escriba el nombre de la base de conocimientos y una descripción opcional.

    2. Indique el rol de AWS Identity and Access Management correspondiente a los permisos de acceso necesarios para crear una base de conocimientos.

      nota

      El rol de IAM con todos los permisos necesarios se puede crear automáticamente como parte de los pasos de la consola para crear una base de conocimientos. Después de completar los pasos para crear una base de conocimientos, el rol de IAM con todos los permisos necesarios se aplicará a su base de conocimientos específica.

    3. Cree las etiquetas que desee asignar a la base de conocimientos.

    Vaya a la siguiente sección para configurar el origen de datos.

  5. Elija Confluence como el origen de datos y proporcione los detalles de configuración de conexión.

    1. Proporcione un nombre para el origen de datos y una descripción (opcional).

    2. Proporcione la URL de la instancia de Confluence. Por ejemplo, para Confluence Cloud, https://example.atlassian.net. La URL de Confluence Cloud debe ser la URL básica y terminar en .atlassian.net.

    Compruebe la configuración avanzada. Si lo desea, puede cambiar la configuración seleccionada.

  6. Establezca la clave de cifrado de datos transitorio y la política de eliminación de datos en la configuración avanzada

    Para la configuración de KMS key, puede elegir una clave personalizada o utilizar la clave de cifrado de datos proporcionada de forma predeterminada.

    Al convertir sus datos en incrustaciones, Amazon Bedrock cifra los datos transitorios de forma predeterminada con una clave que AWS posee y administra. Puede usar su propia clave de KMS. Para obtener más información, consulte Cifrado del almacenamiento de datos transitorios durante la ingesta de datos.

    En cuanto a la configuración de la política de eliminación de datos, puede elegir cualquiera de las siguientes opciones:

    • Eliminar: elimina todos los datos del origen de datos que se convierten en incrustaciones vectoriales al eliminar una base de conocimientos o un recurso de origen de datos. Tenga en cuenta que el almacén vectorial en sí no se elimina, solo se eliminan los datos. Este indicador se ignora si se elimina una cuenta de AWS.

    • Retener: retiene todos los datos del origen de datos que se convierten en incrustaciones vectoriales al eliminar una base de conocimientos o un recurso de origen de datos. Tenga en cuenta que el almacén vectorial en sí no se elimina si elimina una base de conocimientos o un recurso de origen de datos.

    Continúe con la configuración del origen de datos.

  7. Proporcione la información de autenticación para conectarse a la instancia de Confluence:

    1. Para la autenticación básica, vaya a AWS Secrets Manager para añadir sus credenciales de autenticación secretas o utilice un nombre de recurso de Amazon (ARN) existente para el secreto que ha creado. El secreto debe contener la dirección de correo electrónico del usuario administrador de la cuenta de Atlassian como nombre de usuario y un token de la API de Confluence en lugar de una contraseña. Para obtener más información sobre cómo crear un token de la API de Confluence, consulte Manage API tokens for your Atlassian account en el sitio web de Atlassian.

    2. Para la autenticación OAuth 2.0, vaya a AWS Secrets Manager para añadir sus credenciales de autenticación secretas o utilice un nombre de recurso de Amazon (ARN) existente para el secreto que ha creado. El secreto debe contener la clave de la aplicación de Confluence, el secreto de la aplicación, el token de acceso y el token de actualización. Para obtener más información, consulte las aplicaciones de OAuth 2.0 en el sitio web de Atlassian.

    Continúe con la configuración del origen de datos.

  8. Elija usar patrones de filtros o expresiones regulares para incluir o excluir determinado contenido. De lo contrario, se rastreará todo el contenido estándar.

    Continúe con la configuración del origen de datos.

  9. Elija las configuraciones de fragmentación y análisis predeterminadas o personalizadas.

    1. Si elige una configuración personalizada, seleccione una de las siguientes opciones de fragmentación:

      • Fragmentación de tamaño fijo: el contenido se divide en fragmentos de texto del tamaño aproximado que haya establecido. Puede establecer el número máximo de tokens que no debe superar un fragmento y el porcentaje de superposición entre fragmentos consecutivos.

      • Fragmentación predeterminada: el contenido se divide en fragmentos de texto de hasta 300 tokens. Si un solo documento o parte del contenido contiene menos de 300 tokens, el documento no se divide más.

      • Fragmentación jerárquica: contenido organizado en estructuras anidadas de fragmentos principales y secundarios. Debe establecer el tamaño máximo del token del fragmento principal y el tamaño máximo del token del fragmento secundario. También debe establecer el número absoluto de tokens superpuestos entre los fragmentos principales consecutivos y los fragmentos secundarios consecutivos.

      • Fragmentación semántica: contenido organizado en fragmentos de texto o grupos de oraciones semánticamente similares. Debe establecer el número máximo de oraciones que rodean a la oración objetivo/actual para agruparlas (tamaño del búfer). También debe establecer el umbral del percentil del punto de interrupción para dividir el texto en fragmentos significativos. La fragmentación semántica utiliza un modelo fundacional. Consulte los precios de Amazon Bedrock para obtener más información sobre el costo de los modelos fundacionales.

      • Sin fragmentación: cada documento se trata como un único fragmento de texto. Se recomienda realizar un procesamiento previo de los documentos dividiéndolos en archivos independientes.

      nota

      No puede cambiar la estrategia de fragmentación después de crear el origen de datos.

    2. Puede optar por utilizar el modelo fundacional de Amazon Bedrock para analizar documentos y analizar más texto que el texto estándar. Por ejemplo, puede analizar los datos tabulares de los documentos sin tocar su estructura. Consulte los precios de Amazon Bedrock para obtener más información sobre el costo de los modelos fundacionales.

    3. Puede optar por utilizar una función de AWS Lambda para personalizar la estrategia de fragmentación y la forma en que se tratan e ingieren los atributos o campos de los metadatos del documento. Proporcione la ubicación del bucket de Amazon S3 para la entrada y la salida de la función de Lambda.

    Vaya a la siguiente sección para configurar el almacén vectorial.

  10. Elija un modelo para convertir los datos en incrustaciones vectoriales.

    Cree un almacén vectorial que permita a Amazon Bedrock almacenar, actualizar y administrar las incrustaciones. Puede crear rápidamente un nuevo almacén vectorial o seleccionar uno de los almacenes de vectores compatibles que haya creado. Actualmente, solo el almacén vectorial de Amazon OpenSearch sin servidor se puede usar con este origen de datos. Si crea un nuevo almacén vectorial, se configurará automáticamente una colección y un índice de búsqueda vectorial de Amazon OpenSearch sin servidor con los campos obligatorios. Si selecciona uno de los almacenes vectoriales compatibles, debe asignar los nombres de los campos vectoriales a los nombres de los campos de metadatos.

    Vaya a la siguiente sección para revisar las configuraciones de la base de conocimientos.

  11. Compruebe los detalles de su base de conocimientos. Puede editar cualquier sección antes de continuar con la creación de la base de conocimientos.

    nota

    El tiempo que tarde en crearse la base de conocimientos dependerá de las configuraciones específicas. Una vez finalizada la creación de la base de conocimientos, su estado cambiará a Lista o Disponible.

    Cuando la base de conocimientos esté lista y disponible, sincronice el origen de datos por primera vez y siempre que desee mantener el contenido actualizado. Seleccione la base de conocimientos en la consola y Sincronizar en la sección de información general del origen de datos.

API

El siguiente es un ejemplo de una configuración para conectarse a Confluence Cloud para la base de conocimientos de Amazon Bedrock. El origen de datos se configura mediante la API con la AWS CLI o un SDK compatible, como Python. Después de llamar a CreateKnowledgeBase, llame a CreateDataSource para crear el origen de datos con la información de conexión en dataSourceConfiguration. Recuerde especificar también su estrategia o enfoque de fragmentación en vectorIngestionConfiguration y su política de eliminación de datos en dataDeletionPolicy.

AWS Command Line Interface

aws bedrock create-data-source \ --name "Confluence Cloud/SaaS connector" \ --description "Confluence Cloud/SaaS data source connector for Amazon Bedrock to use content in Confluence" \ --knowledge-base-id "your-knowledge-base-id" \ --data-source-configuration file://confluence-bedrock-connector-configuration.json \ --data-deletion-policy "DELETE" \ --vector-ingestion-configuration '{"chunkingConfiguration":[{"chunkingStrategy":"FIXED_SIZE","fixedSizeChunkingConfiguration":[{"maxTokens":"100","overlapPercentage":"10"}]}]}' confluence-bedrock-connector-configuration.json { "confluenceConfiguration": { "sourceConfiguration": { "hostUrl": "https://example.atlassian.net", "hostType": "SAAS", "authType": "OAUTH2_CLIENT_CREDENTIALS", "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-Confluence" }, "crawlerConfiguration": { "filterConfiguration": { "type": "PATTERN", "patternObjectFilter": { "filters": [ { "objectType": "Attachment", "inclusionFilters": [ ".*\\.pdf" ], "exclusionFilters": [ ".*private.*\\.pdf" ] } ] } } } }, "type": "CONFLUENCE" }