¿Qué son los embeddings en inteligencia artificial?
Los embeddings son representaciones numéricas de un texto, una imagen u otro contenido: listas de números, llamadas vectores, que calcula un modelo para que los contenidos parecidos queden cerca entre sí. La distancia entre dos embeddings mide cuánto se parecen dos contenidos, no si lo que dicen es verdad. Son la base de la búsqueda semántica.
Lo esencial
- Un embedding convierte un contenido en un vector, una lista de números; los contenidos parecidos quedan cerca.
- El parecido se mide con la distancia entre vectores, normalmente con la similitud del coseno, que va de -1 a 1.
- Las dimensiones de un embedding real se cuentan por cientos o miles, y casi nunca se pueden interpretar una a una.
- Un embedding mide el parecido entre textos, no la verdad: una descripción falsa y una verdadera con las mismas palabras quedan igual de cerca de la pregunta.
- Los embeddings son la pieza que permite buscar por significado: la búsqueda semántica y la generación aumentada por recuperación (RAG) se apoyan en ellos.
Un comprador escribe «hervidor que no sepa a plástico» y el sistema le devuelve tu hervidor con interior de acero inoxidable, aunque tu ficha no contenga ni «sabor» ni «plástico». Eso es lo que hacen posible los embeddings: encontrar contenidos por lo que significan y no por las palabras que comparten. Es una pieza técnica que no vas a configurar en tu tienda, pero conviene entender qué mide, porque se usa cada vez más para decidir qué ficha encaja con qué pregunta, y porque mide menos de lo que parece.
Cómo funciona
OpenAI lo define en su documentación con una frase: un embedding es un vector, una lista de números decimales, y la distancia entre dos vectores mide su relación. Distancias pequeñas indican mucha relación; distancias grandes, poca. Se usan para buscar, agrupar, recomendar, clasificar o detectar lo que no encaja.[1]OpenAI, documentación de la API. Vector embeddings
El curso de aprendizaje automático de Google lo explica con comida. Si colocas platos en una línea según lo mucho que se parecen a un sándwich, el perrito y el shawarma quedan cerca; si añades una segunda dimensión, «lo mucho que es un postre», el strudel de manzana se separa de los dos. Cada dimensión añadida recoge un matiz más, y la distancia entre dos puntos se lee como su parecido relativo dentro de esa representación.[2]Google for Developers, Machine Learning Crash Course. Embeddings: Embedding space and static embeddings La diferencia con la vida real es de escala y de claridad: los espacios reales tienen muchas más dimensiones (en los de palabras, a menudo 256, 512 o 1024) y sus dimensiones casi nunca son tan comprensibles como «postre» o «líquido». Además, cada embedding depende de la tarea para la que se creó.[2]Google for Developers, Machine Learning Crash Course. Embeddings: Embedding space and static embeddings
Los modelos actuales trabajan con más dimensiones todavía. Los de OpenAI devuelven por defecto vectores de 1536 números (text-embedding-3-small) o de 3072 (text-embedding-3-large).[1]OpenAI, documentación de la API. Vector embeddings Los de Gemini devuelven 3072 por defecto, y Google recomienda 768, 1536 o 3072. Su modelo más reciente, gemini-embedding-2, coloca texto, imágenes, vídeo, audio y documentos en un mismo espacio, en más de cien idiomas.[3]Google AI for Developers, documentación de la API de Gemini. Embeddings
Para comparar dos vectores se usa casi siempre la similitud del coseno. La documentación de Gemini explica por qué: mide la dirección y no el tamaño, que refleja mejor la cercanía entre conceptos, y va de -1 (opuestos) a 1 (máximo parecido).[3]Google AI for Developers, documentación de la API de Gemini. Embeddings OpenAI también la recomienda.[1]OpenAI, documentación de la API. Vector embeddings
Hay un matiz que importa en una tienda con vocabulario ambiguo. Los embeddings estáticos, como los del clásico word2vec, dan un solo punto a cada palabra con todos sus significados, y eso es una limitación en algunos casos.[2]Google for Developers, Machine Learning Crash Course. Embeddings: Embedding space and static embeddings Piensa en «batería»: de cocina, de móvil o de música. Los modelos de embeddings de texto actuales calculan el vector del texto entero, que es lo que miden cuando comparan una pregunta con una ficha.[1]OpenAI, documentación de la API. Vector embeddings
La guía de Google sobre sus sistemas de clasificación no detalla qué técnica usa cada uno, pero sí describe dos que trabajan con conceptos y no solo con palabras: RankBrain, que le ayuda a entender cómo se relacionan las palabras con los conceptos y a devolver contenido relevante aunque no contenga todas las palabras de la búsqueda, y el neural matching, que entiende representaciones de conceptos en consultas y páginas y las empareja.[4]Google Search Central. A guide to Google Search ranking systems Y Google cita la RAG (generación aumentada por recuperación), la técnica con la que un asistente recupera documentos antes de responder, como uno de los usos habituales de los embeddings.[3]Google AI for Developers, documentación de la API de Gemini. Embeddings
En una tienda
Un ejemplo ficticio, con un espacio de juguete de tres dimensiones inventadas: cuánto tiene que ver un texto con hervir agua, con el metal y con el plástico. Las coordenadas no salen de ningún modelo; están puestas a mano para ver la cuenta.
| Texto | Hervir agua | Metal | Plástico |
|---|---|---|---|
| Búsqueda: «hervidor de acero» | 0,8 | 0,6 | 0,0 |
| Ficha A: «Hervidor eléctrico con interior de acero inoxidable» | 0,9 | 0,7 | 0,1 |
| Ficha B: «Sartén de acero inoxidable» | 0,1 | 0,9 | 0,0 |
| Ficha C: «Hervidor eléctrico de plástico sin BPA» | 0,9 | 0,0 | 0,8 |
La similitud del coseno de la búsqueda con cada ficha, con la cuenta de la ficha A desarrollada:
A: (0,8 × 0,9) + (0,6 × 0,7) + (0,0 × 0,1) = 1,14
longitud de la búsqueda = 1,000 longitud de A = 1,145
similitud = 1,14 / (1,000 × 1,145) = 0,996
B: similitud = 0,685
C: similitud = 0,598
La ficha A gana, y tiene sentido. Ahora imagina que alguien copia por error la descripción de A en la ficha C, que es de plástico: la ficha C tendría exactamente el mismo vector que A y quedaría igual de cerca de la búsqueda. El embedding se calcula a partir del texto, no del producto, así que no sabe si lo que el texto dice es cierto. Por eso un dato bien escrito en la ficha importa: es lo único que el vector puede representar. Clione, por ejemplo, calcula para cada producto, categoría, colección y página de contenido un vector de 1536 dimensiones para la búsqueda semántica dentro del catálogo.
Lo que se suele confundir
Que una similitud alta significa que el sistema «entiende» el producto o que la ficha responde bien a la pregunta. El curso de Google lo dice con cuidado: la distancia se interpreta como parecido relativo dentro de la representación del modelo, y sus dimensiones casi nunca se pueden leer.[2]Google for Developers, Machine Learning Crash Course. Embeddings: Embedding space and static embeddings OpenAI habla de relación entre textos, no de verdad.[1]OpenAI, documentación de la API. Vector embeddings Un texto falso que se parece a la pregunta queda tan cerca como uno verdadero.
Cómo comprobarlo
Para quien quiera verlo con sus fichas, con unas líneas de código o un cuaderno de Python:
- Escribe tres búsquedas reales de tus clientes, sacadas del buscador de tu tienda o de Search Console, y copia las descripciones de los productos que deberían salir.
- Calcula los embeddings con una API: las documentaciones de OpenAI y de Gemini traen el ejemplo de llamada, con el nombre del modelo y el texto como entrada.[1]OpenAI, documentación de la API. Vector embeddings[3]Google AI for Developers, documentación de la API de Gemini. Embeddings
- Compara cada búsqueda con cada descripción con la similitud del coseno, que va de -1 a 1.[3]Google AI for Developers, documentación de la API de Gemini. Embeddings Con los modelos de OpenAI, que devuelven vectores normalizados, basta el producto escalar.[1]OpenAI, documentación de la API. Vector embeddings
- Compara siempre dentro del mismo modelo y la misma tarea: los embeddings dependen de la tarea para la que se crearon.[2]Google for Developers, Machine Learning Crash Course. Embeddings: Embedding space and static embeddings
- Revisa a mano los primeros resultados contra los datos reales de cada producto. El número dice qué texto se parece más, no cuál es cierto.
Concepto cercano: búsqueda semántica
La búsqueda semántica es el uso; los embeddings, la representación que la hace posible en la mayoría de sistemas actuales. Google presenta sus embeddings justo para eso: buscar, clasificar y agrupar con resultados más precisos y más atentos al contexto que los de las búsquedas por palabras clave.[3]Google AI for Developers, documentación de la API de Gemini. Embeddings La búsqueda vectorial es la parte mecánica: guardar millones de vectores y encontrar los más cercanos a uno dado con rapidez. Un embedding sin búsqueda no encuentra nada, y una búsqueda semántica sin embeddings necesita otra forma de representar el significado.
Para seguir, la entrada de búsqueda con IA cuenta cómo un asistente recupera páginas antes de responder, y la ruta de lectura ordena el resto de términos.
Sinónimos
- English
- embeddings, vector embeddings
- Español
- vectores semánticos
Fuentes
- [1] OpenAI, documentación de la API. Vector embeddings. Consultado el . ↑ ↑ ↑ ↑ ↑ ↑ ↑
- [2] Google for Developers, Machine Learning Crash Course. Embeddings: Embedding space and static embeddings. Consultado el . ↑ ↑ ↑ ↑ ↑
- [3] Google AI for Developers, documentación de la API de Gemini. Embeddings. Consultado el . ↑ ↑ ↑ ↑ ↑ ↑
- [4] Google Search Central. A guide to Google Search ranking systems. Consultado el . ↑
Historial de cambios
- Primera versión.
Esta definición se publica bajo licencia CC BY 4.0. Puedes reutilizar esta definición citando a Clione con un enlace a esta página.
Términos relacionados
Búsqueda semántica
Qué es la búsqueda semántica, cómo entiende Google una consulta por su significado y no por sus palabras, y qué cambia en las fichas de una tienda.
Búsqueda vectorial
Qué es la búsqueda vectorial, cómo encuentra productos por parecido con embeddings, por qué falla con un SKU y qué aporta la búsqueda híbrida de Google.
RAG
Qué es RAG en IA, de qué artículo sale, cómo lo usan Google y ChatGPT para responder con fuentes y qué parte de tu ficha de producto acaba en la respuesta.
Alucinación
Qué es una alucinación de la IA, por qué ChatGPT o AI Overviews pueden inventar datos de tus productos y cómo comprobar qué dicen de tu catálogo.
Zero-click
Qué es una búsqueda zero-click, cuántas búsquedas en Google acaban sin clic, qué cambian AI Overviews y el Modo IA y cómo medirlo en tu tienda.
Scaled content abuse
Qué es el scaled content abuse de Google, qué ejemplos pone, qué pasa con la IA y las páginas en serie de una tienda, y cómo revisar tu sitio.
Haz que los bots entiendan tu catálogo
Clione completa cada ficha de producto con lo que los bots leen mejor: el grafo JSON-LD con sus datos estructurados, la meta description y las preguntas frecuentes. Tú revisas y pulsas Push; después comprobamos tu tienda en vivo para que todo siga publicado.