IDs semánticos - Documentación de Entity Enricher

IDs semánticos

Enriquezca el mismo tipo de entidad una y otra vez y seguirá redescubriendo las mismas cosas del mundo real —la misma empresa, el mismo efecto secundario de un medicamento, la misma persona— descritas con palabras ligeramente distintas cada vez. Un ID semántico es un identificador estable, con alcance de organización, que Entity Enricher asigna a un objeto a partir de sus campos clave, de modo que esos casi duplicados se colapsan en una sola identidad por la que puede agrupar, deduplicar y unir.

El problema: la misma cosa, distintas palabras

La identidad de un objeto se construye a partir de sus campos clave, y puede haber uno o varios. Dos ejemplos:

Una clave

Un efecto secundario indexado por name

Aparece como Headache, Céphalée y Cephalalgia en distintas ejecuciones e idiomas. Un mismo campo clave, tres grafías, un solo concepto real.

Dos claves

Una empresa identificada por nombre + país

Acme Inc. · Estados Unidos y Acme Incorporated · Estados Unidos son la misma empresa, mientras que Acme Inc. · Alemania es distinta. La segunda clave desambigua; por eso un objeto puede tener más de una.

La coincidencia de cadenas simple falla en todos estos casos; un humano sabe cuáles son iguales. Los ID semánticos codifican ese criterio automáticamente.

Qué es un ID semántico

Cómo funciona

Cuando el modelo devuelve su resultado, Entity Enricher resuelve cada ID semántico en seis pasos, empezando por el más barato. Los cuatro pasos previos al embedding son pura comparación de texto, por lo que una identidad resuelta ahí no cuesta absolutamente nada:

1
Redactar el texto de identidad
Una los campos clave que identifican al objeto en sí en una única cadena, en su idioma principal. Un objeto anidado que constituye una entidad por derecho propio queda excluido: su clave lo nombra a él, no a aquello que hace referencia a él, y todos los elementos hermanos que remitan a la misma entidad llevarían ese mismo valor — dos misiones que compartan una base de lanzamiento se leerían de forma casi idéntica y correrían el riesgo de fusionarse en una sola. Los objetos anidados que solo agrupan campos sí contribuyen; también lo hace la clave de una entidad relacionada si usted la añade. Los elementos dentro de arrays nunca se incorporan: cada elemento de un array posee su propia identidad. La lista de participantes de identidad del editor de esquemas muestra exactamente qué valores componen el texto y permite reordenarlos o cambiarlos — los esquemas que eligen los mismos participantes en el mismo orden generan IDs idénticos. El texto se normaliza (se convierte a minúsculas, se eliminan los paréntesis, se compactan los espacios) para reducir las diferencias triviales. Si todos esos campos clave vuelven vacíos, no hay nada con lo que identificar el objeto y no se le puede asignar ningún ID — por eso el objeto se elimina en lugar de conservarse como un objeto anónimo sobre el que nada se puede agrupar, unir ni deduplicar: un objeto anidado pasa a ser null en su objeto padre, y un elemento dentro de una lista se descarta de la lista. La entidad enriquecida en sí nunca se elimina; simplemente no tiene ID.
2
Buscar una coincidencia exacta
Si ese texto normalizado exacto ya se ha visto antes en su organización, su ID existente se reutiliza de inmediato, sin llamada al modelo ni coste.
3
Coincidir por un código, si lo hay
Cuando una de las claves de identidad es un code —un campo restringido por un patrón, o uno cuyos ejemplos parecen identificadores—, se compone primero y se compara por separado. Una coincidencia exacta de código resuelve la identidad de inmediato, sea cual sea la redacción que la rodee, de modo que LC-39A unifica todas las formas en que se haya escrito el resto del texto. Igual de importante: funciona también a la inversa, ya que un código distinto veta una fusión que el paso de embedding habría aceptado, porque dos cosas con identificadores distintos son dos cosas por muy parecidas que se lean.
4
Coincidir con las mismas palabras en cualquier orden
Antes de gastar un embedding, se comparan las propias palabras como conjunto: si las palabras de un texto están contenidas en las del otro, se trata de la misma identidad escrita con distinta extensión: «Boeing» y «The Boeing Company». Esto detecta justamente las diferencias de verbosidad que los embeddings miden como muy distantes, y no cuesta nada: igual que en el paso de texto exacto, un acierto aquí significa que no hay llamada de embedding ni cargo.
5
Incrustar y comparar
De lo contrario, el texto se convierte en embedding y se compara, por significado, con los conceptos existentes del mismo tipo de concepto (el nombre del tipo de entidad de forma predeterminada, modificable en el editor para que esquemas con nombres distintos compartan un mismo espacio de conceptos) mediante similitud vectorial, de modo que “Acme Inc.” y“Acme Incorporated” queden juntos.
6
Reutilizar o generar
Si la coincidencia más cercana supera el umbral de similitud (0.92 por defecto, ajustable por propiedad), se reutiliza el ID de ese concepto. De lo contrario, se genera un ID totalmente nuevo y se guarda para la próxima vez. Una excepción anula una puntuación alta: cuando los dos textos son las mismas palabras contadas de forma distinta«segunda etapa» y«tercera etapa» — se tratan como cosas diferentes, porque el recuento es justamente lo que las distingue. El mismo número escrito de dos maneras (2 yII) sí coincide.

Compensación del umbral: un umbral más alto es más estricto (menos fusiones accidentales); uno más bajo es más laxo (deduplicación más agresiva). Ajústelo por propiedad cuando el valor predeterminado de 0,92 fusione de más o de menos.

ID de entrada vs. ID generados

Que un ID se genere depende de si ya está presente en la entrada para ese objeto. Esto es lo que permite el ida y vuelta: enriquezca una vez para obtener los ID, luego vuelva a pasar un ID conocido en ejecuciones posteriores para adjuntar nuevos datos a la misma identidad: más económico e inequívoco.

ID ya presente en la entrada → conservado (búsqueda)

Si el objeto que envía ya lleva un ID semántico, se trata como una búsqueda: el ID se conserva textualmente, el registro se vincula a ese concepto existente y no hay embedding: sin coste, sin coincidir-o-acuñar. Le está diciendo a la plataforma «este objeto ya está identificado en nuestra base de datos».

No hay ID en la entrada → generado

Si el objeto no tiene ID semántico, la plataforma genera uno con los pasos anteriores. A partir de ese momento, ese ID se convierte en el identificador estable del objeto en la base de datos de su organización.

Un valor presente pero irreconocible (que no es un ID de concepto real) se ignora y, en su lugar, se genera un ID.

Cómo habilitarlo

1
Elija un modelo de embedding (una vez por organización)
Un propietario elige un modelo con capacidad de embedding en Ajustes → Organización → Valores predeterminados como modelo de embedding predeterminado de la organización (un ajuste sujeto al plan; consulte Modelos y precios para saber qué modelos pueden generar embeddings). Los vectores almacenados no son comparables entre modelos, así que, una vez que existen conceptos, el ajuste solo puede borrarse: el cambio se ejecuta como una migración desde la página de IDs semánticos, que vuelve a generar el embedding de cada concepto y conserva sus IDs. Sin modelo, los IDs semánticos simplemente se omiten.
2
Añadir IDs semánticos al esquema
Dos formas, ambas en el Editor de flujos de trabajo:
  • Automáticamente durante la generación: marque «Generar ID semánticos para los tipos»; todo objeto con una clave (propia o la de un objeto anidado 1-1) obtiene uno, incluida la entidad raíz.
  • Manualmente — use el control «+ Añadir ID semántico» en cualquier objeto o en el pie de la entidad.

La resolución consume una pequeña cantidad de uso de embeddings por enrichment (medido como cualquier llamada a un model). La caché de coincidencia exacta hace que las repeticiones sean gratuitas, y los ID proporcionados en la entrada no tienen ningún coste.

Dónde aparecen los ID y qué hacer con ellos

Los ID resueltos aparecen en el JSON de salida del enriquecimiento (el campo id de cada objeto), en los conceptos semánticos del detalle del registro y todos juntos en la página de ID semánticos, donde se explora y se depura el vocabulario que forman. Úselos para:

Complementa la fusión multimodelo

La fusión reconcilia las discrepancias entre modelos dentro de una misma ejecución; los ID semánticos reconcilian la misma entidad a lo largo de ejecuciones y del tiempo. Ambos trabajan juntos.