Verbinden mit Salesforce für Ihre Wissensdatenbank - Amazon Bedrock

Verbinden mit Salesforce für Ihre Wissensdatenbank

Salesforce ist ein Customer Relationship Management (CRM)-Tool zur Verwaltung von Support-, Vertriebs- und Marketingteams. Sie können mit der AWS-Managementkonsole für Amazon Bedrock oder der CreateDataSource-API eine Verbindung mit der Salesforce-Instance für die Amazon-Bedrock-Wissensdatenbank herstellen (siehe von Amazon Bedrock unterstützte SDKs und AWS CLI).

Anmerkung

Beim Datenquellen-Connector Salesforce handelt es sich um eine Vorversion, bei der Änderungen vorbehalten sind.

Salesforce-Datenquellen unterstützen keine multimodalen Daten wie Tabellen, Graphen, Diagramme oder andere Bilder.

Derzeit ist nur der Vektorspeicher von Amazon OpenSearch Serverless für die Verwendung mit dieser Datenquelle verfügbar.

Anzahl und Größe der durchsuchbaren Dateien sind beschränkt. Weitere Informationen finden Sie unter Kontingente für Wissensdatenbanken.

Unterstützte Features

  • Automatische Erkennung der wichtigsten Dokumentfelder

  • Filter zum Ein- und Ausschließen von Inhalten

  • Inkrementelle Inhaltssynchronisierung für hinzugefügte, aktualisierte und gelöschte Inhalte

  • OAuth 2.0-Authentifizierung

Voraussetzungen

Stellen Sie in Salesforce Folgendes sicher:

  • Notieren Sie sich die URL Ihrer Salesforce-Instance. Zum Beispiel https://company.salesforce.com/. Die Instance muss eine Salesforce Connected App ausführen.

  • Erstellen Sie eine Salesforce Connected App und konfigurieren Sie die Client-Anmeldeinformationen. Kopieren Sie dann für Ihre ausgewählte Anwendung den Verbraucherschlüssel (Client-ID) und das Verbrauchergeheimnis (Client-Geheimnis) aus den OAuth-Einstellungen. Weitere Informationen finden Sie in der Salesforce-Dokumentation unter Erstellen einer verbundenen Anwendung und Konfigurieren einer verbundenen Anwendung für die OAuth-2.0-Client-Anmeldeinformationen.

    Anmerkung

    Stellen Sie bei Salesforce Connected Apps unter Client-Anmeldeinformationsfluss sicher, dass Sie im Feld „Ausführen als“ den Namen oder Alias des Benutzers für Ihre Client-Anmeldeinformationen suchen und auswählen.

Stellen Sie in Ihrem AWS-Konto Folgendes sicher:

  • Speichern Sie Ihre Anmeldeinformationen für die Authentifizierung in einem AWS Secrets Manager-Secret und notieren Sie sich dessen Amazon-Ressourcennamen (ARN). Folgen Sie den Anweisungen zur Verbindungskonfiguration auf dieser Seite, um die Schlüssel-Wert-Paare aufzunehmen, die in Ihrem Secret enthalten sein müssen.

  • Nehmen Sie die erforderlichen Berechtigungen für die Verbindung mit der Datenquelle in die AWS Identity and Access Management (IAM)-Rollen-/Berechtigungsrichtlinie für die Wissensdatenbank auf. Informationen zu den Berechtigungen, die erforderlich sind, um diese Datenquelle der IAM-Rolle für die Wissensdatenbank hinzuzufügen, finden Sie unter Berechtigungen für den Zugriff auf Datenquellen.

Anmerkung

Wenn Sie die Konsole verwenden, können Sie Ihr Secret über AWS Secrets Manager hinzufügen oder ein vorhandenes Secret als Teil des Konfigurationsschritts für die Datenquelle verwenden. Die IAM-Rolle kann mit allen erforderlichen Berechtigungen im Rahmen der in der Konsole ausgeführten Schritte zum Erstellen einer Wissensdatenbank für Sie angelegt werden. Nachdem Sie die Datenquelle konfiguriert und andere Konfigurationen vorgenommen haben, wird die IAM-Rolle mit allen erforderlichen Berechtigungen auf die jeweilige Wissensdatenbank angewendet.

Wir empfehlen, die Anmeldeinformationen und Secrets regelmäßig zu aktualisieren oder zu wechseln. Stellen Sie zu Ihrer eigenen Sicherheit nur die unbedingt erforderliche Zugriffsebene bereit. Wir raten davon ab, für mehrere Datenquellen identische Anmeldeinformationen und Secrets zu verwenden.

Konfiguration der Verbindung

Wenn Sie eine Verbindung mit der Salesforce-Instance herstellen möchten, müssen Sie die erforderlichen Konfigurationsinformationen angeben, damit Amazon Bedrock auf Ihre Daten zugreifen und nach ihnen suchen kann. Befolgen Sie zudem Voraussetzungen.

Ein Beispiel für eine Konfiguration für diese Datenquelle ist in diesem Abschnitt enthalten.

Weitere Informationen zur automatischen Erkennung von Dokumentfeldern, Einschluss-/Ausschlussfiltern, inkrementellen Synchronisierung, geheimen Anmeldeinformationen für die Authentifizierung und deren Funktionsweise finden Sie unter:

Der Datenquellen-Connector erkennt und durchsucht automatisch alle wichtigen Metadatenfelder von Dokumenten oder Inhalten. Der Datenquellen-Connector kann beispielsweise den Dokumenttext zu den Dokumenten, den Dokumenttitel, das Erstellungs- oder Änderungsdatum des Dokuments oder andere Kernfelder durchsuchen, die für die Dokumente gelten.

Wichtig

Wenn der Inhalt vertrauliche Informationen enthält, kann Amazon Bedrock mit vertraulichen Informationen antworten.

Sie können Filteroperatoren auf Metadatenfelder anwenden, um die Relevanz von Antworten weiter zu verbessern. Zum Beispiel: Dokument „epoch_modification_time“ oder die Anzahl der Sekunden, die seit dem 1. Januar 1970 vergangen sind, als das Dokument zuletzt aktualisiert wurde. Sie können nach den neuesten Daten filtern, wobei „epoch_modification_time“ größer als eine bestimmte Zahl ist. Weitere Informationen zu den Filteroperatoren, die Sie auf die Metadatenfelder anwenden können, finden Sie unter Metadaten und Filterung.

Sie können das Crawling bestimmter Inhalte ein- oder ausschließen. Durch Angabe eines Ausschlusspräfixes oder eines Musters für reguläre Ausdrücke können Sie beispielsweise festlegen, dass alle Dateien, deren Name das Wort „privat” enthält, beim Crawling übersprungen werden. Sie können bestimmte Inhaltsentitäten oder Inhaltstypen durch Angabe von Einschlusspräfix/Mustern für reguläre Ausdrücke einbeziehen. Wenn Sie einen Ein- und einen Ausschlussfilter angeben und beide auf ein Dokument zutreffen, hat der Ausschlussfilter Vorrang und das Dokument wird nicht durchsucht.

Ein Beispiel für ein Muster für reguläre Ausdrücke zum Ausschließen oder Herausfiltern von Kampagnen, die das Wort „privat“ enthalten: „.*privat.*“

Einschluss-/Ausschlussfilter können auf die folgenden Inhaltstypen angewendet werden:

  • Account: Kontonummer/ID

  • Attachment: Name der Anhangsdatei mit Erweiterung

  • Campaign: Kampagnenname und zugehörige IDs

  • ContentVersion: Version des Dokuments und zugehörige IDs

  • Partner: Felder mit Partnerinformationen, einschließlich der zugehörigen IDs

  • Pricebook2: Name der Produkt-/Preisliste

  • Case: Kundenanfrage-/Ausgabenummer und andere Informationsfelder, einschließlich der zugehörigen IDs (bitte beachten Sie: kann persönliche Informationen enthalten, die Sie ausschließen oder herausfiltern können)

  • Contact: Kundeninformationsfelder (bitte beachten Sie: kann persönliche Informationen enthalten, die Sie ausschließen oder herausfiltern können)

  • Contract: Vertragsname und zugehörige IDs

  • Document: Name der Datei mit Erweiterung

  • Idea: Informationsfelder für Ideen und zugehörige IDs

  • Lead: Potenzielle neue Kundeninformationsfelder (bitte beachten Sie: kann persönliche Informationen enthalten, die Sie ausschließen oder herausfiltern können)

  • Opportunity: Informationsfelder für ausstehende Verkäufe/Vertragsabschlüsse und zugehörige IDs

  • Product2: Produktinformationsfelder und zugehörige IDs

  • Solution: Lösungsname für eine Kundenanfrage/ein Kundenproblem und zugehörige IDs

  • Task: Informationsfelder für Aufgaben und zugehörige IDs

  • FeedItem: ID des Chatter-Feed-Posts

  • FeedComment: ID des Chatter-Feed-Posts, zu dem die Kommentare gehören

  • Knowledge__kav: Titel des Wissensartikels

  • User: Benutzeralias innerhalb Ihrer Organisation

  • CollaborationGroup: Chatter-Gruppenname (eindeutig)

Der Datenquellen-Connector sucht bei jeder Synchronisierung der Datenquelle mit der Wissensdatenbank nach neuen, geänderten und gelöschten Inhalten. Amazon Bedrock kann den Mechanismus der Datenquelle verwenden, um geänderte Inhalte nachzuverfolgen und nach Inhalten zu suchen, die sich seit der letzten Synchronisierung geändert haben. Wenn Sie die Datenquelle zum ersten Mal mit der Wissensdatenbank synchronisieren, werden standardmäßig alle Inhalte synchronisiert.

Zum Synchronisieren der Datenquelle mit der Wissensdatenbank verwenden Sie die StartIngestionJob-API. Alternativ können Sie auch die Wissensdatenbank in der Konsole und dann im Bereich „Datenquellenübersicht“ die Option Synchronisieren auswählen.

Wichtig

Alle Daten, die Sie aus der Datenquelle synchronisieren, stehen allen Personen mit der bedrock:Retrieve-Berechtigung zum Abrufen der Daten zur Verfügung. Dies kann auch alle Daten mit kontrollierten Datenquellenberechtigungen einschließen. Weitere Informationen finden Sie unter Berechtigungen für die Wissensdatenbank.

(Für die OAuth-2.0-Authentifizierung) Die Secret-Anmeldeinformationen für die Authentifizierung in AWS Secrets Manager sollten die folgenden Schlüssel-Wert-Paare enthalten:

  • consumerKey: App-Client-ID

  • consumerSecret: App-Client-Secret

  • authenticationUrl: URL der Salesforce-Instance oder die URL, von der das Authentifizierungstoken angefordert werden soll

Anmerkung

Ihr Secret in AWS Secrets Manager muss dieselbe Region wie die Wissensdatenbank verwenden.

Console
Herstellen einer Verbindung zwischen Salesforce-Instance und Wissensdatenbank
  1. Folgen Sie den Schritten unter So erstellen Sie eine Wissensdatenbank, indem Sie in Wissensdatenbanken für Amazon Bedrock eine Verbindung zu einer Datenquelle herstellen und wählen Sie Salesforce als Datenquelle aus.

  2. Geben Sie den Namen und eine optionale Beschreibung für die Datenquelle an.

  3. Geben Sie Ihre Salesforce-Instance-URL an. Zum Beispiel https://company.salesforce.com/. Die Instance muss eine Salesforce Connected App ausführen.

  4. Im Abschnitt Erweiterte Einstellungen können Sie optional Folgendes konfigurieren:

    • KMS-Schlüssel für den transienten Datenspeicher. – Sie können die transienten Daten verschlüsseln und gleichzeitig Ihre Daten mit dem standardmäßigen Von AWS verwalteter Schlüssel oder einem eigenen KMS-Schlüssel in Einbettungen konvertieren. Weitere Informationen finden Sie unter Verschlüsselung der vorübergehenden Datenspeicherung während der Datenerfassung.

    • Richtlinie zum Löschen von Daten – Sie können die Vektoreinbettungen für die Datenquelle löschen, die standardmäßig im Vektorspeicher enthalten sind, oder die Vektorspeicherdaten beibehalten.

  5. Geben Sie die Authentifizierungsinformationen ein, um eine Verbindung zu Ihrer Salesforce-Instance herzustellen:

    1. Wechseln Sie für die OAuth-2.0-Authentifizierung zu AWS Secrets Manager, um Ihre geheimen Anmeldeinformationen für die Authentifizierung hinzuzufügen, oder verwenden Sie einen vorhandenen Amazon-Ressourcennamen (ARN) für das von Ihnen erstellte Secret. Ihr Secret muss den Salesforce Connected App Consumer Key (Client-ID), das Consumer Secret (Client Secret) und die Salesforce-Instance-URL oder die URL enthalten, von der das Authentifizierungstoken angefordert werden soll. Weitere Informationen finden Sie in der Salesforce-Dokumentation unter Erstellen einer verbundenen Anwendung und Konfigurieren einer verbundenen Anwendung für die OAuth-2.0-Client-Anmeldeinformationen.

  6. (Optional) Im Abschnitt Parsing und Chunking von Inhalten können Sie anpassen, wie die Daten analysiert und aufgeteilt werden sollen. Werfen Sie einen Blick auf die folgenden Ressourcen, um mehr über diese Anpassungen zu erfahren:

  7. Sie können mithilfe von Filtern/regulären Ausdrücken bestimmte Inhalte ein- oder ausschließen. Andernfalls werden alle Standardinhalte gecrawlt.

  8. Wählen Sie ein Einbettungsmodell und einen Vektorspeicher aus. Wenn Sie die verbleibenden Schritte sehen möchten, kehren Sie zu So erstellen Sie eine Wissensdatenbank, indem Sie in Wissensdatenbanken für Amazon Bedrock eine Verbindung zu einer Datenquelle herstellen zurück, nachdem Sie die Datenquelle verbunden haben, und fahren Sie mit diesem Schritt fort.

API

Im Folgenden finden Sie ein Beispiel für eine Konfiguration für die Verbindung mit Salesforce für die Amazon-Bedrock-Wissensdatenbank. Sie konfigurieren die Datenquelle mithilfe der API mit der AWS CLI oder einem unterstützten SDK, z. B. Python. Nach dem Aufruf von CreateKnowledgeBase rufen Sie CreateDataSource auf, um die Datenquelle mit Ihren Verbindungsinformationen in dataSourceConfiguration zu erstellen.

Weitere Informationen zu Anpassungen, die Sie auf die Erfassung anwenden können, indem Sie das optionale vectorIngestionConfiguration-Feld einbeziehen, finden Sie unter So passen Sie die Aufnahme für eine Datenquelle an.

AWS Command Line Interface

aws bedrock create-data-source \ --name "Salesforce connector" \ --description "Salesforce data source connector for Amazon Bedrock to use content in Salesforce" \ --knowledge-base-id "your-knowledge-base-id" \ --data-source-configuration file://salesforce-bedrock-connector-configuration.json \ --data-deletion-policy "DELETE" \ --vector-ingestion-configuration '{"chunkingConfiguration":[{"chunkingStrategy":"FIXED_SIZE","fixedSizeChunkingConfiguration":[{"maxTokens":"100","overlapPercentage":"10"}]}]}' salesforce-bedrock-connector-configuration.json { "salesforceConfiguration": { "sourceConfiguration": { "hostUrl": "https://company.salesforce.com/", "authType": "OAUTH2_CLIENT_CREDENTIALS", "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-Salesforce" }, "crawlerConfiguration": { "filterConfiguration": { "type": "PATTERN", "patternObjectFilter": { "filters": [ { "objectType": "Campaign", "inclusionFilters": [ ".*public.*" ], "exclusionFilters": [ ".*private.*" ] } ] } } } }, "type": "SALESFORCE" }