Grounding, no geometría

  • IA
  • Investigación
  • Ingeniería
Grounding, no geometría

Si construyes IA específica de dominio en 2026, hay una pregunta que debería ponerte nervioso y que normalmente no lo hace: ¿tu embedding sigue ganándose el sueldo frente a un modelo frontera? Es muy probable que el modelo haya ingerido el mismo corpus público con el que tú entrenaste, más todo lo que lo rodea, y que razone sobre el espacio entero. Es una pregunta incómoda, así que la mayoría de los proyectos la esquiva discretamente y compara su embedding contra… un embedding más débil. Yo quería hacérmela de verdad, sobre un dominio que había cartografiado en detalle: el olfato, y después el sabor.

Una aclaración por delante, porque hace mucho trabajo. Esto va de embeddings de entidades — vectores para materiales y moléculas, aprendidos a partir de cómo coaparecen — no de los embeddings de texto o de documentos que estudian la mayoría de los artículos sobre «¿necesitas un modelo de dominio?». Y va del caso en el que ya existe un catálogo estructurado. Si no tienes catálogo, un embedding puede ser tu única opción; no es la situación que se pone a prueba aquí.

Dos cosas que la gente mete en el mismo saco

«¿Sirve de algo mi recurso?» es la pregunta equivocada, porque mete en el mismo saco dos artefactos muy distintos:

  • un catálogo estructurado — nombres, identificadores, etiquetas descriptivas de experto, una capa regulatoria. Se consulta simbólicamente: lo buscas, lo filtras, lo intersectas. Es una base de datos.
  • un embedding aprendido sobre esas mismas entidades — similitud vectorial, interpolación, una geometría. Se consulta por vecino más cercano. Es un modelo.

Sepáralos y aparece la pregunta real: ¿la geometría aprendida añade algo por encima del catálogo, para un modelo que ya tiene ambos al alcance? El contraste limpio es una única comparación — mismo modelo, mismo grounding, y la única diferencia es si además dispone del embedding.

Dos reglas, para no poder engañarme a mí mismo

Preregistro. Escribí la comparación principal y la dirección que esperaba antes de ejecutar nada. (Esperaba que el embedding ayudara un poco. No lo hizo — menos mal que había quedado por escrito.)

Una escala de contaminación. Esta es la parte que estas evaluaciones suelen hacer mal. El embedding, el modelo y la búsqueda web bebieron todos de pozos que se solapan. Si tu «verdad de referencia» está extraída de los mismos datos de coaparición con los que entrenó el embedding, todos los brazos ganan de forma tautológica y lo que has medido es memorización, no capacidad. Etiqueté cada conjunto de prueba desde «circular» hasta «no memorizable» y dejé que solo los niveles limpios sostuvieran la conclusión: hechos regulatorios objetivos; el dataset de olores estándar del campo; etiquetas próximas a la revisión por pares. Tres modelos frontera, intervalos de confianza pareados, dos dominios.

Gana el grounding — sobre el modelo en crudo y sobre la búsqueda web

Pregúntale a un modelo frontera si un material de perfumería es un alérgeno de declaración obligatoria en la UE y acertará entre el 60 y el 85 % de las veces. Por qué falla es instructivo, porque la verdad de referencia se movió. Durante años el conjunto declarable eran los célebres 26 alérgenos; en 2023, el Reglamento 2023/1545 lo amplió a 80 — 56 sustancias nuevas — con entrada escalonada hasta 2026. Un modelo entrenado a caballo de esa frontera mezcla la lista vieja y la nueva, con aplomo, y por la respuesta no puedes saber cuál ha usado. Peor aún: te recomendará alegremente materiales que hoy son sencillamente ilegales. Lilial (butylphenyl methylpropional) fue durante años el caballo de batalla del floral de muguete, hasta que la UE lo clasificó como tóxico para la reproducción y lo prohibió en cosmética en marzo de 2022 — y aun así, si le pides una nota de muguete, el modelo seguirá echando mano de él.

Dale al modelo una consulta regulatoria anclada en la norma y el recall sube al 100 %, en todos los modelos, sin falsos positivos. La búsqueda web es un sustituto inestable — fuerte con un modelo, floja con otro — y no algo en lo que apoyarse cuando la respuesta tiene que ser correcta. Y el efecto va más allá de los hechos: en sustitución con restricciones — encuentra cinco reemplazos conformes que mantengan el olor — darle al agente el catálogo y las herramientas regulatorias más que duplicó su producción conforme y en diana frente a trabajar de memoria. Lo que gana es la base de datos, puesta a disposición del modelo. No nada aprendido.

El embedding no se gana el sueldo

¿Dónde queda entonces la geometría aprendida? Sobre el dataset de olores estándar del campo, un baseline trivial de vecinos más cercanos estructurales ya llega al entorno del estado del arte publicado, y los modelos frontera igualan más o menos eso. Con ese telón de fondo:

  • Por sí solo, el embedding no supera a un baseline sin aprendizaje. En predicción de descriptores odorantes sobre datos reservados empata con los vecinos más cercanos estructurales simples — por un pelo, a veces un paso por detrás. En una tarea aparte de recuperación por similitud odorante pierde frente a una simple coincidencia simbólica de etiquetas. Empata o pierde; no gana.
  • En manos de un agente, perjudica activamente. Añadir la herramienta de similitud por embedding bajó la producción conforme y relevante del agente de sustitución frente a usar solo las herramientas de catálogo — de forma consistente, en los tres modelos, con todos los intervalos de confianza excluyendo el cero. Los agentes llamaban a la herramienta; simplemente les seguía entregando cosas que se usan juntas en lugar de cosas que huelen parecido, y los sacaba del camino.

Repetí la figura entera en un segundo dominio — comida, con un embedding de sabor revisado por pares — y salió la misma línea: pierde frente a las etiquetas de sabor por sí solo, y lo que levanta al modelo es anclarlo en datos reales de sabor. No es una rareza de un dominio.

Una nota sobre la fuga — calibrada

El pliegue más interesante, y el que querría que un lector atento se llevara. Mi primer resultado por sí solo parecía una victoria limpia del embedding — hasta que me di cuenta de que la lente se había entrenado sobre los mismísimos enlaces de descriptores que yo estaba reservando para puntuarla. Circular. Reconstruí una versión sin descriptores y la «victoria» se invirtió en derrota.

Pero ¿hasta qué punto es general esa trampa? Lo comprobé con un pequeño experimento autocontenido: entrenar el embedding de dos maneras — con las etiquetas dentro, y con las etiquetas de test reservadas, tal como el campo de los grafos de conocimiento reconstruyó sus benchmarks (FB15k se convirtió en FB15k-237) cuando encontró exactamente este tipo de fuga — y comparar. En un dataset donde la estructura ya predice bien las etiquetas, la inflación fue mínima; el embedding sin fuga se limitó a empatar con el baseline estructural. En el mapa basado en uso, donde la estructura no estaba haciendo todo el trabajo, la misma clase de fuga fue lo bastante grande como para dar la vuelta a la conclusión.

Así que el enunciado honesto está calibrado: la fuga de evaluación puede darle la vuelta a tu resultado, pero su magnitud depende del montaje — grande cuando el embedding aporta poca señal propia, despreciable cuando la estructura ya satura la tarea. De antemano no sabes en qué régimen estás, así que lo controlas igualmente.

Lo que me llevo

La afirmación está acotada a propósito: embeddings de entidades, dominios quimiosensoriales, tareas aplicadas, el caso en que existe un catálogo. No es «los embeddings no sirven» — son la herramienta correcta cuando no hay catálogo, y para problemas estructurales como la predicción de enlaces, donde el campo los prefiere con razón. Y no va de embeddings de texto, que son otro objeto.

Dentro de ese ámbito, las lecciones prácticas viajan bien:

  • Separa la base de datos del modelo. La mayor parte de tu valor está probablemente en el catálogo anclado — lo que arregla los huecos factuales del modelo. Entrégalo primero.
  • Prueba el embedding contra el modelo frontera real, no contra un embedding más débil — y aísla su valor marginal por encima del catálogo que el modelo ya tiene.
  • La búsqueda web no sustituye a un catálogo curado en hechos que tienen que ser correctos.
  • Construye una escala de contaminación antes de fiarte de un número. Si tu referencia sale del corpus con el que entrenó tu embedding, estás midiendo memorización — y la magnitud de la fuga es impredecible, así que contrólala en cualquier caso.
  • Preregistra la dirección, para que no puedas convencerte de la respuesta que querías.

La versión de una línea, dentro de ese ámbito: el valor estaba en el grounding, no en la geometría — en la base de datos, no en el modelo. Lo más útil fue hacer la prueba lo bastante limpia como para descubrirlo, y mantener la base de datos y el modelo lo bastante separados como para ver cuál de los dos estaba haciendo el trabajo.