Verrijk hetzelfde soort entiteit keer op keer en je blijft dezelfde dingen uit de echte wereld opnieuw ontdekken — hetzelfde bedrijf, dezelfde bijwerking van een medicijn, dezelfde persoon — elke keer met net iets andere woorden beschreven. Een semantische ID is een stabiele, tot de organisatie beperkte identifier die Entity Enricher aan een object toekent op basis van zijn sleutelvelden, zodat die bijna-duplicaten samenvallen tot één identiteit waarop je kunt groeperen, dedupliceren en joinen.
De identiteit van een object wordt opgebouwd uit de sleutelvelden — en dat kunnen er een of meerdere zijn. Twee voorbeelden:
nameHet verschijnt als Headache, Céphalée en Cephalalgia door verschillende runs en talen heen. Eén sleutelveld, drie schrijfwijzen, één echt concept.
naam + landAcme Inc. · United States en Acme Incorporated · United States zijn hetzelfde bedrijf — terwijl Acme Inc. · Germany een ander bedrijf is. De tweede sleutel maakt het onderscheid; daarom kan een object er meer dan één dragen.
Eenvoudige tekstvergelijking faalt bij al deze gevallen; een mens weet welke hetzelfde zijn. Semantische ID's leggen dat oordeel automatisch vast.
string-eigenschap op een object (standaard id genoemd), die een ondoorzichtige, stabiele identificator bevat.manufacturer), of elk item in een array (bijv. elke side_effect).Nadat het model zijn resultaat heeft teruggegeven, lost Entity Enricher elke semantische ID in zes stappen op — de goedkoopste eerst. De vier stappen vóór de embedding zijn pure tekstvergelijking, dus een identiteit die daar wordt vastgesteld kost helemaal niets:
null in zijn ouderobject, en een item in een lijst verdwijnt uit de lijst. De verrijkte entiteit zelf wordt nooit verwijderd; die heeft simpelweg geen ID.LC-39A alle schrijfwijzen van de rest van de tekst verenigt. Minstens zo belangrijk: het werkt ook omgekeerd: een andere code blokkeert een samenvoeging die de embeddingstap anders had geaccepteerd, want twee dingen met verschillende identificatiecodes zijn twee dingen, hoe gelijk ze ook lezen.“Boeing” en “The Boeing Company”. Dit vangt precies de lengteverschillen op die embeddings als ver uit elkaar meten, en het kost niets: net als bij de stap met exacte tekst betekent een treffer hier geen embedding-aanroep en geen kosten.“Acme Inc.” en“Acme Incorporated” naast elkaar terechtkomen.0.92, per eigenschap instelbaar), wordt de ID van dat concept hergebruikt. Anders wordt er een gloednieuwe ID aangemaakt en bewaard voor de volgende keer. Eén uitzondering gaat boven een hoge score: als beide teksten dezelfde woorden zijn maar anders geteld — “tweede trap” en“derde trap” — worden ze als verschillende dingen behandeld, want juist het tellen onderscheidt ze. Hetzelfde getal op twee manieren geschreven (2 enII) komt nog steeds overeen.Drempel-afweging: een hogere drempel is strenger (minder onbedoelde samenvoegingen); een lagere is losser (agressievere deduplicatie). Stel deze per eigenschap af wanneer de standaardwaarde van 0,92 te veel of te weinig samenvoegt.
Of er een ID wordt gegenereerd hangt ervan af of er al een aanwezig is in de invoer voor dat object. Dit is wat je in staat stelt om een round-trip te doen: verrijk één keer om ID's te verkrijgen en geef een bekend ID later terug bij volgende runs om nieuwe feiten aan dezelfde identiteit te koppelen — goedkoper en ondubbelzinnig.
Als het object dat je verstuurt al een semantische ID bevat, wordt het als een lookup behandeld: de ID wordt letterlijk behouden, het record wordt aan dat bestaande concept gekoppeld en er is geen embedding — geen kosten, geen match-of-mint. Je vertelt het platform “dit object is al geïdentificeerd in onze database.”
Heeft het object geen semantische ID, dan genereert het platform er een met de bovenstaande stappen. Die ID is vanaf dat moment de stabiele identificator van het object in de database van je organisatie.
Een aanwezige maar onherkenbare waarde (geen echte concept-ID) wordt genegeerd en er wordt in plaats daarvan een ID gegenereerd.
Resolutie kost een klein beetje embeddinggebruik per enrichment (afgerekend zoals elke modelaanroep). De exacte-match-cache maakt herhalingen gratis en door de invoer aangeleverde ID's kosten niets.
Herleide ID’s verschijnen in de JSON-output van de verrijking (het veld id op elk object), bij de semantische concepten in het recorddetail, en allemaal samen op de pagina Semantische ID’s, waar je het vocabulaire dat ze vormen doorbladert en cureert. Gebruik ze om:
Fusie verzoent meningsverschillen tussen modellen binnen één run; semantische ID's verzoenen dezelfde entiteit over runs en tijd heen. De twee werken samen.