ID semantici - Documentazione di Entity Enricher

ID semantici

Arricchisca lo stesso tipo di entità ripetutamente e continuerà a riscoprire le stesse cose del mondo reale — la stessa azienda, lo stesso effetto collaterale di un farmaco, la stessa persona — descritte ogni volta con parole leggermente diverse. Un ID semantico è un identificatore stabile, con ambito a livello di organizzazione, che Entity Enricher assegna a un oggetto a partire dai suoi campi chiave, così quei quasi-duplicati collassano in un'unica identità su cui è possibile raggruppare, deduplicare e unire i dati.

Il problema: stessa cosa, parole diverse

L'identità di un oggetto è costruita a partire dai suoi campi chiave — che possono essere uno o più. Due esempi:

Una chiave

Un effetto collaterale indicizzato per name

Compare come Headache, Céphalée e Cephalalgia nelle diverse esecuzioni e lingue. Un solo campo chiave, tre grafie, un unico concetto reale.

Due chiavi

Un'azienda identificata da nome + paese

Acme Inc. · Stati Uniti e Acme Incorporated · Stati Uniti sono la stessa azienda — mentre Acme Inc. · Germania è un'altra. La seconda chiave disambigua; ecco perché un oggetto può contenerne più di una.

Il semplice confronto di stringhe fallisce in tutti questi casi; una persona sa quali sono uguali. Gli ID semantici codificano automaticamente quel giudizio.

Che cos'è un ID semantico

Come funziona

Dopo che il modello restituisce il risultato, Entity Enricher risolve ciascun ID semantico in quattro fasi — a partire dalla più economica:

1
Componi il testo dell'identità
Unisci tutti i campi chiave dell'oggetto — più le chiavi di eventuali oggetti annidati 1-1 che contiene — in un'unica stringa, nella sua lingua principale. Gli elementi all'interno degli array non vengono inclusi: ogni elemento dell'array possiede una propria identità. Il testo viene normalizzato (in minuscolo, con le parentesi rimosse e gli spazi compattati) per ridurre le differenze irrilevanti.
2
Cerca una corrispondenza esatta
Se quel testo normalizzato esatto è già stato visto nella sua organizzazione, il suo ID esistente viene riutilizzato immediatamente, senza chiamate al modello né costi.
3
Incorpora e confronta
In caso contrario il testo viene incorporato e confrontato, per significato, con i concetti esistenti dello stesso tipo tramite similarità vettoriale — così “Acme Inc.” e“Acme Incorporated” finiscono l'uno accanto all'altro.
4
Riutilizza o genera
Se la corrispondenza più vicina supera la soglia di similarità (predefinita 0.92, regolabile per proprietà), l'ID di quel concetto viene riutilizzato. In caso contrario viene generato un ID nuovo di zecca e archiviato per la volta successiva.

Compromesso sulla soglia: una soglia più alta è più rigida (meno unioni accidentali); una più bassa è più permissiva (deduplicazione più aggressiva). Regolala per proprietà quando il valore predefinito di 0,92 unisce troppo o troppo poco.

ID di input vs. ID generati

Se un ID venga generato dipende dal fatto che ne sia già presente uno nell'input per quell'oggetto. È questo che consente il round-trip: arricchire una volta per ottenere gli ID, quindi restituire un ID noto nelle esecuzioni successive per associare nuovi dati alla stessa identità — più economico e privo di ambiguità.

ID già presente nell'input → mantenuto (lookup)

Se l'oggetto che invia ha già un ID semantico, viene trattato come un lookup: l'ID viene mantenuto letteralmente, il record viene collegato a quel concetto esistente e non c'è alcun embedding — nessun costo, nessun match-or-mint. Sta dicendo alla piattaforma “questo oggetto è già identificato nel nostro database”.

Nessun ID nell'input → generato

Se l'oggetto non ha un ID semantico, la piattaforma ne genera uno con i quattro passaggi precedenti. Da quel momento quell'ID diventa l'identificatore stabile dell'oggetto nel database della sua organizzazione.

Un valore presente ma non riconoscibile (non un vero ID di concetto) viene ignorato e al suo posto viene generato un ID.

Come abilitarlo

1
Scegliete un modello di embedding (una volta per organizzazione)
Un proprietario sceglie un modello con capacità di embedding in Gestione modelli come modello di embedding predefinito dell'organizzazione. È quasi immutabile: una volta che esistono dei concetti può solo essere rimosso, non sostituito (i vettori memorizzati non sono comparabili tra modelli diversi). Senza di esso, gli ID semantici vengono semplicemente ignorati.
2
Aggiungi ID semantici allo schema
Due modi, entrambi nell'Editor dello schema:
  • Automaticamente in fase di generazione — selezioni «Genera ID semantici per i tipi»; ogni oggetto con una chiave (propria o su un oggetto annidato 1-1) ne riceve uno, inclusa l'entità radice.
  • Manualmente — usi il controllo “+ Aggiungi ID semantico” su un qualsiasi oggetto o nel piè di pagina dell'entità.

La risoluzione comporta un piccolo consumo di embedding per ogni arricchimento (conteggiato come qualsiasi chiamata al modello). La cache a corrispondenza esatta rende gratuite le ripetizioni e gli ID forniti in input non hanno alcun costo.

Dove compaiono gli ID e cosa farne

Gli ID risolti compaiono nel JSON di output dell'arricchimento (il campo id di ciascun oggetto) e nei concetti semantici del dettaglio del record. Utilizzarli per:

Complementa la fusione multi-modello

La fusione riconcilia i disaccordi tra modelli all'interno di una singola esecuzione; gli ID semantici riconciliano la stessa entità tra esecuzioni e nel tempo. I due meccanismi lavorano insieme.