¿Qué son los embeddings?

Centro de aprendizaje5 min de lectura

Una incrustación (embedding) es una lista de números que representa el significado de un fragmento de texto, como una palabra, una frase o un pasaje. Los textos con un significado similar obtienen listas de números similares, de modo que un ordenador puede encontrar contenido relacionado midiendo la distancia entre ellas. Los motores de búsqueda, los asistentes de IA y los sistemas de recomendación usan embeddings para emparejar una pregunta con el texto que la responde.

La lista se llama vector, y cada número que contiene es una dimensión. Un embedding típico tiene cientos o unos pocos miles de dimensiones. El significado se reparte entre todas ellas, así que no encontrarás un número con una etiqueta legible como "precio" o "color", y un vector solo resulta útil cuando se compara con otro.

¿Cómo representa un embedding el significado?

Imagina un mapa en el que cada frase es un punto. Las frases sobre el mismo tema quedan cerca unas de otras, y las frases sin relación quedan lejos. Un embedding es la coordenada de una frase en ese mapa, salvo que el mapa tiene cientos de direcciones en lugar de dos.

Como la posición codifica el significado, dos textos pueden estar cerca aunque no compartan ninguna palabra. "¿Cómo cancelo mi suscripción?" y "Pasos para terminar un plan mensual" quedan cerca. "Apple lanzó un nuevo teléfono" y "Horneé una tarta de manzana" quedan lejos, aunque en el original inglés ambas contienen la palabra apple, algo que la coincidencia de palabras clave no puede hacer.

¿Cómo se crea un embedding?

Un modelo de embeddings produce el vector. Es una red neuronal, a menudo construida con el mismo diseño que un modelo de lenguaje de gran tamaño, entrenada para que los textos con significado relacionado terminen con vectores cercanos. Durante el entrenamiento ve muchos pares de textos que van juntos, como una pregunta y su respuesta, y aprende a acercarlos mientras aleja los pares sin relación.

Convertir una página web en embeddings suele seguir estos pasos:

  1. Dividir la página en fragmentos. Los documentos largos se cortan en pasajes de unas pocas frases o párrafos, porque un solo vector para toda una página mezclaría muchos temas.
  2. Separar cada fragmento en tokens, las pequeñas piezas de texto que lee un modelo.
  3. Pasar los tokens por el modelo de embeddings, que genera un vector de longitud fija por fragmento.
  4. Guardar cada vector con una referencia al texto original, normalmente en una base de datos diseñada para vectores.

Cuando alguien busca, su pregunta pasa por el mismo modelo. La consulta y los pasajes guardados deben convertirse en embeddings con un mismo modelo, porque los vectores de modelos distintos viven en mapas distintos y no se pueden comparar.

¿Cómo se comparan los embeddings?

Los sistemas comparan dos vectores con una medida de similitud. La más común es la similitud del coseno, que observa el ángulo entre dos vectores: un ángulo pequeño significa un significado similar. Algunos sistemas usan el producto escalar o la distancia en línea recta. Cada una de estas medidas reduce dos largas listas de números a una sola puntuación.

Comparar una consulta con millones de vectores guardados uno por uno sería lento. La búsqueda vectorial usa índices que encuentran los vectores más cercanos de forma aproximada, sacrificando un poco de precisión a cambio de una gran ganancia de velocidad.

¿Dónde usan embeddings los sistemas de búsqueda con IA?

Los embeddings aparecen en varios puntos entre una pregunta y una respuesta escrita.

  • En la recuperación, la búsqueda semántica convierte la consulta en embedding y devuelve los pasajes cuyos vectores están más cerca, lo que encuentra texto relevante escrito con otras palabras.
  • La búsqueda híbrida combina los resultados vectoriales con coincidencias exactas de palabras clave, para que un código de producto o un nombre de marca no se pierda cuando la coincidencia por significado es imprecisa.
  • En la generación aumentada por recuperación, los embeddings ayudan a elegir los pasajes que un modelo de lenguaje lee antes de escribir, lo que fundamenta su respuesta.
  • Después de obtener una página, sus pasajes pueden puntuarse frente a la pregunta y conservarse los más cercanos. Cómo elige la búsqueda con IA qué fuentes citar describe esta etapa de clasificación.
  • Los vectores casi idénticos revelan páginas que dicen lo mismo, de modo que un sistema puede agruparlas y evitar citar varias copias de un mismo texto.

¿Cuáles son los límites de los embeddings?

Los embeddings captan bien el significado general y peor los detalles finos. Sus debilidades se derivan de cómo se construyen los vectores.

DebilidadQué ocurre
Términos exactosLos nombres poco comunes, los números de pieza y los códigos pueden no representarse con precisión, así que una coincidencia aproximada puede superar a la exacta.
Negación"Funciona con Mac" y "no funciona con Mac" pueden producir vectores muy similares.
NúmerosLos precios, las fechas y las cantidades tienen poco peso en el vector en comparación con el tema.
Fragmentos largosUn pasaje que trata varios temas obtiene un vector promediado que no coincide con fuerza con ninguno.
Cambios de modeloCambiar a un nuevo modelo de embeddings obliga a volver a generar el embedding de cada pasaje guardado.

Por estas carencias, muchos sistemas combinan la recuperación vectorial con la búsqueda por palabras clave y añaden un paso de reordenación que lee la consulta y el pasaje juntos con más detenimiento.

¿Qué significan los embeddings para un sitio web?

Un sistema de búsqueda con IA suele evaluar una página por fragmentos, y cada fragmento recibe su propio vector. Una sección que se ciñe a una pregunta y la responde en las primeras frases produce un vector cercano a esa pregunta. Si una sección mezcla configuración, precios e historia en un solo bloque, su vector queda entre varios temas.

La redacción también importa. Un pasaje que usa los términos sencillos que la gente escribe en un buscador queda más cerca de sus consultas que uno basado en jerga interna. Los datos exactos, como números de modelo y precios, conviene expresarlos en texto donde la coincidencia de palabras clave también pueda encontrarlos, ya que el embedding por sí solo puede no distinguirlos de valores similares. Escribir encabezados claros y mantener un solo tema por sección ayuda, y también los párrafos autónomos, porque cada uno da a un fragmento una posición más nítida en el mapa del que lee la recuperación.

Pruébalo gratis 14 días
y recibe tu informe de IA