Esegui ricerca semantica

Esegue una ricerca semantica nel campo specificato e limita il gruppo di record specificato per il testo di ricerca dato e il modello da utilizzare o per i vettori di embedding dati.

Opzioni 

  • Query per specifica se la query è Linguaggio naturale (testo) o Dati vettoriali di embedding.

  • Gruppo di record seleziona se cercare Tutti i record o Gruppo trovato corrente.

  • Campo di destinazione specifica un campo di testo o Contenitore in cui eseguire la ricerca. Il contenuto del campo deve essere costituito da vettori di embedding, sia come array JSON se si tratta di un campo di testo, sia come dati binari se si tratta di un campo Contenitore.

  • Restituisci conteggio è un'espressione numerica per il numero di record semanticamente simili da restituire come gruppo trovato. Se non specificato, l'impostazione predefinita è un massimo di 10 record.

  • Condizione similarità del coseno specifica come la similarità del coseno dei dati viene confrontata con Valore similarità del coseno. Se non specificato, il gruppo trovato non è limitato da una condizione di similarità del coseno.

  • Valore similarità del coseno è la soglia utilizzata insieme a Condizione similarità del coseno per determinare se i dati sono semanticamente simili o dissimili. Questa espressione numerica deve avere un valore compreso tra -1 (dissimile) e 1 (simile), incluso.

Opzioni disponibili solo quando Query per è Linguaggio naturale:

  • Nome account è un'espressione di testo dell'account AI per questa istruzione di script da utilizzare. Nel file corrente, utilizzare l'istruzione di script Configura account AI per configurare l'account e assegnargli questo nome in qualsiasi momento prima che questa istruzione di script venga eseguita.

  • Modello di Embedding è il nome del modello per generare vettori di embedding. Specificare il nome del modello come espressione di testo, disponibile presso il fornitore del modello.

  • Testo è un'espressione di testo per il testo da trovare. Questo testo viene inviato al modello per il confronto con i vettori di embedding nel Campo di destinazione per la similarità.

Opzioni disponibili solo quando Query per è Dati vettoriali:

  • I vettori di embedding che rappresentano il testo da trovare. Si tratta di un'espressione che restituisce i dati contenitore, ad esempio un riferimento a un campo Contenitore. I risultati saranno semanticamente simili al testo rappresentato da questi dati vettoriali.

Compatibilità 

Prodotto Supportata
FileMaker Pro
FileMaker Go
FileMaker WebDirect
FileMaker Server
FileMaker Cloud
FileMaker Data API
Pubblicazione Web personalizzata

Creata nella versione 

21.0

Descrizione 

Questa istruzione di script cerca i record in cui il contenuto del Campo di destinazione è semanticamente simile alla query, anziché cercare corrispondenze letterali per parole chiave come fa l'istruzione di script Esegui la ricerca.

Questa istruzione di script ha due modalità di funzionamento determinate dall'opzione Query per:

  • Se viene impostato Linguaggio naturale, l'utente immette la query come testo in linguaggio naturale nell'opzione Testo. Questa istruzione di script invia il testo della query al modello specificato per la conversione in vettori di embedding. Per questo motivo questa modalità richiede un nome account AI e un modello di embedding.

  • Se viene impostato Dati vettoriali, l'utente fornisce i vettori di embedding come dati contenitore per la query. In caso di utilizzo ricorrente di determinate query, potrebbe essere più efficiente ottenere i vettori di embedding per tali query una prima volta e salvarli anziché riottenerli frequentemente dal modello.

Partendo da tutti i record della tabella corrente oppure solo dai record del gruppo trovato corrente (impostato tramite l'opzione Gruppo di record), questa istruzione di script confronta i dati nel Campo di destinazione con la query per similarità (o dissimilarità) semantica. Il risultato è un gruppo trovato limitato (ristretto) che non supera il numero di record di Restituisci conteggio che soddisfano le condizioni di similarità del coseno. Il gruppo trovato risultante viene ordinato in ordine di similarità del coseno decrescente, in modo che i primi record siano quelli più rilevanti.

Esempio 1 

Configura un account AI, passa al formato Dettagli riunioni, quindi esegue in tutti i record una ricerca semantica per Testo (come linguaggio naturale) nel campo Contenitore Riunioni::Appunto_Embedding, che contiene vettori di embedding per il contenuto del campo Riunioni::Appunto (vedere Esempio 1 in Inserisci Embedding nel gruppo trovato). Per risultati più utili, il numero di risultati è limitato a 10 e la similarità del coseno tra Testo e il contenuto del campo Riunioni::Appunto_Embedding deve essere maggiore di 0,4. Il gruppo trovato risultante viene ordinato con i record più rilevanti all'inizio.

Copia
Configura account AI [ Nome account: "my-account" ; Fornitore modello: OpenAI ; Chiave API: "sk-RZCtpWT..." ]

Vai al formato [ "Dettagli riunioni" (Riunioni) ; Animazione: Nessuna ]

Esegui ricerca semantica [ Query per: Linguaggio naturale ; Nome account: "my-account" ; Modello di Embedding: "text-embedding-3-small" ; Testo: "Reclutamento, definizione lavoro, piano di training" ; Gruppo di record: Tutti i record ; Campo di destinazione: Riunioni::Appunto_Embedding ; Restituisci conteggio: 10 ; Condizione similarità del coseno: maggiore di ; Valore similarità del coseno: .4 ]

Esempio 2 

Configura un account AI, va al formato Dettagli riunioni, quindi chiede all'utente il testo da trovare. La funzione GetEmbedding invia quel testo al modello, quindi Imposta campo salva i vettori di embedding nel campo Contenitore globale Riunioni::Input. Supponendo che il campo Contenitore Riunioni::Appunto_Embedding contenga vettori di embedding per i contenuti del campo Riunioni::Appunto (vedere Esempio 1 in Inserisci Embedding nel gruppo trovato), Esegui ricerca semantica confronta i dati vettoriali in Riunioni::Input con Riunioni::Appunto_Embedding in tutti i record e restituisce un gruppo trovato che soddisfa i criteri del numero di risultati restituiti e della similarità.

Copia
Configura account AI [ Nome account: "my-account" ; Fornitore modello: OpenAI ; Chiave API: "sk-RZCtpWT..." ]

Vai al formato [ "Dettagli riunioni" (Riunioni) ; Animazione: Nessuna ]

Mostra finestra personalizz. [ "Trova riunioni con appunti su:" ; $Input ]
Imposta campo [ Riunioni::Input ; GetEmbedding ( "my-account" ; "text-embedding-3-small" ; $Input ]

Esegui ricerca semantica [ Query per: Dati vettoriali ; Riunioni::Input ; Gruppo di record: Tutti i record ; Campo di destinazione: Riunioni::Appunto_Embedding ; Restituisci conteggio: 10 ; Condizione similarità del coseno: maggiore di ; Valore similarità del coseno: .4 ]