Loading
Configurar una API de pasarela para la búsqueda de almacenamiento externo

Configurar una API de pasarela para la búsqueda de almacenamiento externo

Exponga Amazon Bedrock o Amazon Kendra a través de una API de AWS que acepta solicitudes de búsqueda de Salesforce y devuelve resultados de búsqueda admitidos.

Antes de empezar, configure y pruebe una base de Knowledge de Amazon Bedrock o un índice de Amazon Kendra.

  1. Cree una función Lambda que acepte la solicitud Búsqueda de almacenamiento externo.
  2. Configure la función para aceptar una consulta de lenguaje natural, Id. de Salesforce ContentDocument, filtros adicionales, un conteo de resultados máximo y un controlador de búsqueda, según corresponda.
  3. Configure la función para consultar el servicio de búsqueda de AWS seleccionado y aplicar filtros compatibles.
  4. Transforme cada resultado en los campos de respuesta esperados por Salesforce.

    La respuesta debe incluir estos valores, según corresponda:

    Campo Tipo Descripción
    contentDocumentIds Matriz de cadenas Id. normalizados desde el campo de metadatos contentDocumentId
    contentType Cadena o nulo Tipo de archivo
    excerpt Cadena Content.text de fragmento coincidente
    externalDocumentInfo2 Cadena URI de Amazon S3
    relevancia Puntuaje Número Puntuaje de relevancia devuelto por el servicio de búsqueda
    sourceUrl Cadena URI de Amazon S3
    title Cadena Nombre de archivo derivado del URI de Amazon S3
    pageNumber Cadena o nulo Número de página desde metadatos de fragmentos
    startTimeMs Número o nulo Hora de inicio de medios relevante en milisegundos
    endTimeMs Número o nulo Hora de finalización de medios relevante en milisegundos

    Consulte Respuesta de entrada y salida de muestra.

  5. Otorgue el permiso de función de ejecución Lambda para consultar el servicio de búsqueda seleccionado.
  6. En la pasarela de API, cree una API de REST.
  7. Cree un recurso de búsqueda, como /search.
  8. Cree un método POST que utilice la función Lambda como su destino de integración.
  9. Active la integración de proxy Lambda.
  10. Establezca la autorización del método en AWS_IAM.
  11. Implemente la API en una etapa, como prod.
  12. Registre la URL de invocación.
  13. Cree un principal de IAM con permiso para invocar la API de la pasarela.
  14. Envíe una solicitud de prueba.
  15. Verifique el esquema de respuesta, los Id. de archivos de Salesforce, los puntuajes de relevancia, los resúmenes y las ubicaciones de origen.
  16. La API de la pasarela está lista para conectarse a Salesforce.

Entrada de muestra y Respuesta de salida

Here is a sample input:
{
  "searchQuery": "Jason image",
  "contentDocumentIds": [
    "069xx0000004Dea",
    "069LT000001BuuL",
    "069xx0000004Deb",
    "069LT000001Bv41"
  ],
  "additionalFilters": {},
  "maxResults": 100,
  "searchHandle": null
}

Here is a sample output:
{
    "executionTimeMs": 1720,
    "hasMore": false,
    "nextSearchHandle": null,
    "results": [
        {
            "contentDocumentIds": [
                "069xx0000004Dea",
                "069xx0000004CIi"
            ],
            "contentType": "PDF",
            "excerpt": "Jason...",
            "externalDocumentInfo2": "s3://my-bucket/Stockholm-Resume-Template-Simple.pdf",
            "relevanceScore": 0.3837699,
            "sourceUrl": "s3://my-bucket/Stockholm-Resume-Template-Simple.pdf",
            "title": "Stockholm-Resume-Template-Simple.pdf",
            "pageNumber": "1",
            "startTimeMs": null,
            "endTimeMs": null
        },
                {
            "contentDocumentIds": [
                "069LT000001BuuL"
            ],
            "contentType": "MP3",
            "excerpt": "",
            "externalDocumentInfo2": "s3://my-bucket/__sfdcroot__/Case/500LT00000K5Ty5YAF/Hyde_1783590525379.mp3",
            "relevanceScore": 0.3344161,
            "sourceUrl": "s3://my-bucket/__sfdcroot__/Case/500LT00000K5Ty5YAF/Hyde_1783590525379.mp3",
            "title": "Hyde_1783590525379.mp3",
            "pageNumber": null,
            "startTimeMs": 730,
            "endTimeMs": 55110
        },
        {
            "contentDocumentIds": [
                "069xx0000004Deb"
            ],
            "contentType": "MP4",
            "excerpt": "",
            "externalDocumentInfo2": "s3://my-bucket/Multi-File Edit.mp4",
            "relevanceScore": 0.34692305,
            "sourceUrl": "s3://my-bucket/Multi-File Edit.mp4",
            "title": "Multi-File Edit.mp4",
            "pageNumber": null,
            "startTimeMs": 0,
            "endTimeMs": 27849
        },
        {
            "contentDocumentIds": [
                "069LT000001Bv41"
            ],
            "contentType": "PNG",
            "excerpt": "The image describes...",
            "externalDocumentInfo2": "s3://my-bucket/__sfdcroot__/Case/500LT00000K5Ty5YAF/image_1783590602375.png",
            "relevanceScore": 0.3374139,
            "sourceUrl": "s3://my-bucket/__sfdcroot__/Case/500LT00000K5Ty5YAF/image_1783590602375.png",
            "title": "image_1783590602375.png",
            "pageNumber": null,
            "startTimeMs": null,
            "endTimeMs": null
        }
    ]
}

Para obtener instrucciones detalladas para el servicio Bedrock, consulte estas referencias de documentación de AWS:

Para obtener instrucciones detalladas para el servicio de Kendra, consulte estas referencias de documentación de AWS:

 
Cargando
Salesforce Help | Article