Connettersi a Salesforce per una knowledge base - Amazon Bedrock

Connettersi a Salesforce per una knowledge base

Salesforce è uno strumento di gestione delle relazioni con i clienti (CRM, Customer Relationship Management) per la gestione dei team di supporto, vendita e marketing. Per connetterti all’istanza Salesforce per Knowledge Base per Amazon Bedrock, utilizza la Console di gestione AWS per Amazon Bedrock oppure l’API CreateDataSource (consulta gli SDK supportati di Amazon Bedrock e la AWS CLI).

Nota

Il connettore delle origini dati in Salesforce è disponibile nella versione di anteprima ed è soggetto a modifiche.

Le origini dati Salesforce non supportano dati multimodali, come tabelle, grafici, diagrammi o altre immagini.

Attualmente, solo l’archivio vettoriale Amazon OpenSearch serverless è disponibile per l’utilizzo con questa origine dati.

Il numero di file e le dimensioni in MB per file che è possibile sottoporre a crawling sono limitati. Consulta Quote per le knowledge base.

Funzionalità supportate

  • Rilevamento automatico dei campi principali dei documenti

  • Filtri per inclusione/esclusione del contenuto

  • Sincronizzazione incrementale dei contenuti per aggiunte, aggiornamenti ed eliminazioni

  • Autenticazione OAuth 2.0

Prerequisiti

In Salesforce, verifica quanto segue:

  • Prendi nota dell’URL della tua istanza Salesforce. Ad esempio, https://company.salesforce.com/. L’istanza deve eseguire un’app connessa Salesforce.

  • Crea un’app connessa Salesforce e configura le credenziali del client. Quindi, per l’app selezionata, copia la chiave utente (ID client) e il segreto utente (segreto del cliente) dalle impostazioni OAuth. Per ulteriori informazioni, consulta la documentazione di Salesforce su come creare un’app connessa e configurare un’app connessa per le credenziali del client OAuth 2.0.

    Nota

    Per le app connesse Salesforce, in Client Credentials Flow, assicurati di cercare e selezionare il nome o l’alias dell’utente per le credenziali del client nel campo “Run As”.

Nell’account AWS, verifica quanto segue:

  • Archivia le credenziali di autenticazione in un segreto di Gestione dei segreti AWS e prendi nota del nome della risorsa Amazon (ARN) del segreto stesso. Segui le istruzioni nella sezione Configurazione della connessione in questa pagina per includere le coppie chiave-valore da inserire nel segreto.

  • Includi le autorizzazioni necessarie per la connessione all’origine dati nella policy di ruolo/autorizzazioni di AWS Identity and Access Management (IAM) per la knowledge base corrente. Per informazioni sulle autorizzazioni necessarie per aggiungere l’origine dati al ruolo IAM della knowledge base, consulta Autorizzazioni per accedere alle origini dati.

Nota

Se utilizzi la console, è possibile passare ad Gestione dei segreti AWS per aggiungere il segreto oppure utilizzare un segreto esistente nell’ambito della fase di configurazione dell’origine dati. Il ruolo IAM e tutte le autorizzazioni richieste possono essere creati automaticamente durante le fasi di creazione di una knowledge base nella console. Dopo la configurazione dell’origine dati e delle altre impostazioni, il ruolo IAM e tutte le autorizzazioni vengono applicati alla knowledge base specifica.

Ti consigliamo di aggiornare o ruotare regolarmente le credenziali e il segreto. e fornire solo il livello di accesso necessario per motivi di sicurezza. Il riutilizzo di credenziali e segreti tra origini dati diverse non è consigliato.

Configurazione della connessione

Per connetterti all’istanza di Salesforce corrente, devi fornire le informazioni di configurazione richieste per consentire ad Amazon Bedrock di accedere ai dati e di sottoporli a crawling, nonché rispettare le indicazioni presenti nella sezione Prerequisiti.

Un esempio di configurazione per l’origine dati è incluso in questa sezione.

Per ulteriori informazioni sul rilevamento automatico dei campi del documento, sui filtri di inclusione/esclusione, sulla sincronizzazione incrementale, sulle credenziali di autenticazione dei segreti e sul relativo funzionamento, consulta le sezioni seguenti:

Il connettore delle origini dati rileva automaticamente tutti i campi di metadati principali dei documenti o dei contenuti e li sottopone a crawling. Ad esempio, il connettore delle origini dati può sottoporre a crawling l’equivalente del corpo del documento, il titolo del documento, la data di creazione o di modifica del documento o altri campi principali che potrebbero essere applicati ai documenti.

Importante

Se i contenuti includono informazioni sensibili, Amazon Bedrock potrebbe rispondere utilizzando informazioni di questo tipo.

Per migliorare ulteriormente la pertinenza delle risposte, è possibile applicare operatori di filtro ai campi di metadati, ad esempio “epoch_modification_time” del documento oppure il numero di secondi trascorsi dal 1° gennaio 1970, data dell’ultimo aggiornamento del documento. È possibile filtrare in base ai dati più recenti, in cui “epoch_modification_time” è maggiore di un determinato numero. Per ulteriori informazioni sugli operatori di filtro che è possibile applicare ai campi di metadati, consulta Metadati e filtri.

È possibile includere o escludere il crawling di determinati contenuti, specificando ad esempio un prefisso di esclusione o un modello di espressione regolare per ignorare il crawling dei file che contengono il termine “privato” nel nome. È anche possibile specificare un prefisso di inclusione oppure un modello di espressione regolare per includere determinate entità o tipi di contenuto. Se si specifica un filtro di inclusione ed esclusione ed entrambi corrispondono a un documento, il filtro di esclusione ha la precedenza e il documento non viene sottoposto a crawling.

Un esempio di modello di espressione regolare per escludere o filtrare le campagne che contengono “privato” nel nome è il seguente: “.*privato.*”.

I filtri di inclusione/esclusione possono essere applicati ai seguenti tipi di contenuto:

  • Account: numero/identificatore dell’account

  • Attachment: nome del file allegato con relativa estensione

  • Campaign: nome della campagna e identificatori associati

  • ContentVersion: versione del documento e identificatori associati

  • Partner: campi di informazioni partner, inclusi gli identificatori associati

  • Pricebook2: nome del prodotto/listino prezzi

  • Case: numero di richiesta/problema del cliente e altri campi informativi, compresi gli identificatori associati (nota: può contenere informazioni personali, che puoi escludere o filtrare)

  • Contact: campi informativi sul cliente (nota: può contenere informazioni personali, che puoi escludere o filtrare)

  • Contract: nome del contratto e identificatori associati

  • Document: nome del file con relativa estensione

  • Idea: campi informativi sull’idea e identificatori associati

  • Lead: campi informativi su nuovi clienti potenziali (nota: può contenere informazioni personali, che puoi escludere o filtrare)

  • Opportunity: campi informativi sulla vendita o sull’offerta in sospeso e identificatori associati

  • Product2: campi informativi sul prodotto e identificatori associati

  • Solution: nome della soluzione per la richiesta/problema di un cliente e identificatori associati

  • Task: campi informativi sull’attività e identificatori associati

  • FeedItem: identificatore del post del feed di chat

  • FeedComment: identificatore del post del feed di chat a cui appartengono i commenti

  • Knowledge__kav: titolo dell’articolo della knowledge base

  • User: alias utente all’interno dell’organizzazione

  • CollaborationGroup: nome del gruppo di chat (univoco)

Il connettore delle origini dati sottopone a crawling il contenuto nuovo, modificato ed eliminato ogni volta che l’origine dati si sincronizza con la knowledge base. Amazon Bedrock può utilizzare il meccanismo dell’origine dati per tenere traccia delle modifiche al contenuto e sottoporre a crawling il contenuto modificato dall’ultima sincronizzazione. Quando sincronizzi per la prima volta l’origine dati con la knowledge base, per impostazione predefinita tutti i contenuti vengono sottoposti a crawling.

Per sincronizzare l’origine dati con la knowledge base, utilizza l’API StartIngestionJob o seleziona la knowledge base nella console, quindi scegli Sincronizza nella sezione di panoramica dell’origine dati.

Importante

Tutti i dati sincronizzati dall’origine dati diventano disponibili per chiunque disponga delle autorizzazioni bedrock:Retrieve per recuperarli. Ciò può includere anche tutti i dati con autorizzazioni per l’origine dati controllate. Per ulteriori informazioni, consulta Autorizzazioni della knowledge base.

(Per l’autenticazione OAuth 2.0) Le credenziali di autenticazione dei segreti in Gestione dei segreti AWS devono includere queste coppie chiave-valore:

  • consumerKey: ID del client dell’app

  • consumerSecret: segreto del client dell’app

  • authenticationUrl: URL dell’istanza Salesforce o URL da cui richiedere il token di autenticazione

Nota

Il segreto in Gestione dei segreti AWS deve utilizzare la stessa Regione della knowledge base.

Console
Connettere un’istanza Salesforce alla knowledge base
  1. Segui la procedura in Creazione di una knowledge base mediante connessione a un’origine dati in Knowledge Base per Amazon Bedrock e scegli Salesforce come origine dati.

  2. Specifica un nome e una descrizione facoltativa per l’origine dati.

  3. Fornisci l’URL della tua istanza Salesforce. Ad esempio, https://company.salesforce.com/. L’istanza deve eseguire un’app connessa Salesforce.

  4. Nella sezione Impostazioni avanzate, puoi configurare gli elementi seguenti (facoltativo):

    • Chiave KMS per l’archiviazione di dati transitori. Puoi crittografare i dati transitori durante la conversione in embedding con la chiave Chiave gestita da AWS predefinita o con la chiave KMS in uso. Per ulteriori informazioni, consulta Crittografia dell'archiviazione di dati transitoria durante l'importazione dei dati.

    • Policy di eliminazione dei dati: è possibile eliminare gli embedding vettoriali per l’origine dati corrente presenti nell’archivio vettoriale per impostazione predefinita oppure scegliere di mantenere i dati dell’archivio vettoriale.

  5. Fornisci le informazioni di autenticazione per connetterti alla tua istanza Salesforce:

    1. Per l’autenticazione OAuth 2.0, vai in Gestione dei segreti AWS per aggiungere le credenziali di autenticazione segrete oppure usa un nome della risorsa Amazon (ARN) esistente per il segreto creato. Il tuo segreto deve contenere la chiave utente (ID cliente) dell’app connessa Salesforce, il segreto utente (segreto del cliente) e l’URL dell’istanza Salesforce o l’URL da cui richiedere il token di autenticazione. Per ulteriori informazioni, consulta la documentazione di Salesforce su come creare un’app connessa e configurare un’app connessa per le credenziali del client OAuth 2.0.

  6. (Facoltativo) Nella sezione relativa a chunking e analisi dei contenuti, puoi personalizzare il modo in cui analizzare i dati ed eseguirne il chunking. Per ulteriori informazioni su queste personalizzazioni, consulta le risorse seguenti:

  7. Scegli di utilizzare filtri o modelli di espressione regolare per includere o escludere determinati contenuti. Altrimenti, tutto il contenuto standard viene sottoposto a crawling.

  8. Continua a scegliere un modello di embedding e un archivio vettoriale. Per visualizzare le fasi rimanenti, torna a Creazione di una knowledge base mediante connessione a un’origine dati in Knowledge Base per Amazon Bedrock e continua dalla fase successiva alla connessione all’origine dati.

API

Di seguito è riportato un esempio di configurazione per la connessione a Salesforce per Knowledge Base per Amazon Bedrock. Per configurare l’origine dati, utilizza l’API con la AWS CLI o con il componente SDK supportato, ad esempio Python. Dopo aver chiamato CreateKnowledgeBase, chiama CreateDataSource per creare l’origine dati con le informazioni di connessione in dataSourceConfiguration.

Per informazioni sulle personalizzazioni che è possibile applicare all’importazione includendo il campo vectorIngestionConfiguration opzionale, consulta Personalizzare l’importazione per un’origine dati.

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" }