Sie befinden sich hier:
Konfigurieren einer Gateway-API für die Suche nach externem Speicher
Stellen Sie Amazon Bedrock oder Amazon Kendra über eine AWS-API bereit, die Salesforce-Suchanforderungen akzeptiert und unterstützte Suchergebnisse zurückgibt.
Richten Sie zunächst eine Amazon Bedrock Knowledge Base oder einen Amazon Kendra-Index ein und testen Sie sie.
- Erstellen Sie eine Lambda-Funktion, die die Anforderung "Suche nach externem Speicher" akzeptiert.
- Konfigurieren Sie die Funktion so, dass eine Abfrage in natürlicher Sprache, Salesforce ContentDocument-IDs, zusätzliche Filter, eine maximale Ergebnisanzahl und ggf. ein Suchhandle akzeptiert werden.
- Konfigurieren Sie die Funktion, um den ausgewählten AWS-Suchservice abzufragen und unterstützte Filter anzuwenden.
-
Wandeln Sie jedes Ergebnis in die von Salesforce erwarteten Antwortfelder um.
Die Antwort muss die folgenden Werte enthalten:
Feld Typ Beschreibung contentDocumentIDs Zeichenfolgen-Array Normalisierte IDs aus dem Metadatenfeld contentDocumentId contentType Zeichenfolge oder null Dateityp excerpt Zeichenfolge content.text des abgeglichenen Blöckes ExterneDocumentInfo2 Zeichenfolge Amazon S3-URI RelevanzBewertung Anzahl Vom Suchservice zurückgegebene Relevanzbewertung sourceUrl Zeichenfolge Amazon S3-URI title Zeichenfolge Vom Amazon S3-URI abgeleiteter Dateiname pageNumber Zeichenfolge oder null Seitenzahl aus Blöcken-Metadaten startTimeMs Zahl oder null Relevante Medienstartzeit in Millisekunden endTimeMs Zahl oder null Relevante Medienendzeit in Millisekunden Entsprechende Informationen finden Sie unter Beispieleingabe und -ausgabeantwort.
- Erteilen Sie der Lambda-Ausführungsrolle die Berechtigung, den ausgewählten Suchservice abzufragen.
- Erstellen Sie im API-Gateway eine REST-API.
-
Erstellen Sie eine Suchressource, beispielsweise
/search. - Erstellen Sie eine POST-Methode, die die Lambda-Funktion als Integrationsziel verwendet.
- Aktivieren Sie die Lambda-Proxy-Integration.
- Legen Sie die Methodenautorisierung auf AWS_IAM fest.
-
Stellen Sie die API in einer Phase wie
prodbereit. - Notieren Sie sich den Aufruf-URL.
- Erstellen Sie einen IAM-Prinzipal mit der Berechtigung, die Gateway-API aufzurufen.
- Senden Sie eine Testanforderung.
- Überprüfen Sie das Antwortschema, Salesforce-Datei-IDs, Relevanzbewertungen, Auszüge und Quellstandorte.
- Die Gateway-API kann mit Salesforce verbunden werden.
Beispielantwort für Eingabe und Ausgabe
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
}
]
}
Detaillierte Anweisungen zum Bedrock-Service finden Sie in den folgenden AWS-Dokumentationsverweisen:
Detaillierte Anweisungen zum Kendra-Service finden Sie in den folgenden AWS-Dokumentationsverweisen:
- Beispielantwort für Eingabe und Ausgabe
Überprüfen Sie die Beispielnutzlasten für Anforderungen und Antworten für die Gateway-API für die externe Speichersuche.
