
Si has leído sobre RAG, búsqueda semántica o bases de datos vectoriales, te habrás encontrado con la palabra "embeddings" una y otra vez. Suena técnico, parece complejo, pero la idea detrás es elegante y sorprendentemente intuitiva.
Los embeddings son uno de los conceptos más importantes de la IA moderna. Y una vez que los entiendes, entiendes cómo la IA "comprende" el significado de las cosas.
Qué es un embedding (explicación simple)
Un embedding es una representación numérica del significado de un texto. Convierte palabras, frases o documentos completos en una lista de números (un vector) que captura su significado.
Imaginemos que pudieras convertir cualquier palabra en coordenadas en un mapa:
- "Perro" → [0.82, 0.15, 0.63, ...]
- "Gato" → [0.79, 0.18, 0.61, ...]
- "Coche" → [0.12, 0.87, 0.34, ...]
"Perro" y "gato" tienen coordenadas cercanas (son conceptos similares). "Coche" está lejos de ambos (concepto diferente). Eso es exactamente lo que hacen los embeddings: colocan conceptos en un "espacio" donde la distancia entre puntos representa la similitud de significado.
Un embedding convierte significado en geometría. Conceptos similares = puntos cercanos. Conceptos diferentes = puntos lejanos.

Cómo funcionan los embeddings
Paso 1: Tokenización
El texto se divide en tokens (fragmentos de palabras). "Inteligencia artificial" se convierte en tokens como ["inteli", "gencia", "artifi", "cial"].
Paso 2: Procesamiento por el modelo
Cada token pasa por una red neuronal entrenada con millones de textos. El modelo ha aprendido que "rey" está relacionado con "reina", que "Madrid" está relacionado con "España", que "programar" está relacionado con "código".
Paso 3: Vector resultante
El resultado es un vector: una lista de números (normalmente entre 384 y 3.072 números, dependiendo del modelo). Cada número representa una dimensión del significado.
No puedes interpretar los números individualmente (no es que el número 7 signifique "animal"). Pero la combinación de todos los números captura el significado completo.
La propiedad mágica
Lo increíble es que estos vectores capturan relaciones semánticas reales. El ejemplo clásico:
vector("Rey") - vector("Hombre") + vector("Mujer") ≈ vector("Reina")
El modelo ha aprendido que la relación entre "rey" y "hombre" es la misma que entre "reina" y "mujer". Sin que nadie se lo haya programado explícitamente.

Nota Importante
Presta atención a este detalle.
Para qué se usan los embeddings
Búsqueda semántica
La aplicación estrella. En vez de buscar por palabras exactas (como Google en 2005), buscas por significado.
Si buscas "cómo solucionar problemas de sueño", una búsqueda por palabras clave no encontraría un artículo titulado "Técnicas para dormir mejor". Una búsqueda semántica con embeddings sí, porque entiende que el significado es similar.
Así funcionan los buscadores modernos, los asistentes de IA y cualquier sistema que necesite entender la intención del usuario.
RAG (Retrieval-Augmented Generation)
Los embeddings son la pieza clave del RAG. Cuando quieres que una IA responda con información de tus documentos:
- Conviertes todos tus documentos en embeddings
- Guardas esos embeddings en una base de datos vectorial
- Cuando alguien hace una pregunta, conviertes la pregunta en embedding
- Buscas los embeddings de documentos más cercanos a la pregunta
- Le pasas esos documentos al LLM como contexto
Sin embeddings, el RAG no funciona. Son el puente entre "buscar" y "entender".
Sistemas de recomendación
Netflix, Spotify y Amazon usan embeddings para representar usuarios y contenido en el mismo espacio. Si tu embedding de usuario está cerca del embedding de una película, esa película te gustará.
Detección de duplicados y similitudes
Detectar plagios, encontrar tickets de soporte duplicados, agrupar artículos por tema... todo se reduce a calcular la distancia entre embeddings.
Clasificación de texto
Sentimiento (positivo/negativo), categorización de emails, filtrado de spam... los embeddings son la base de muchos clasificadores modernos.

Inteligencia Artificial aplicada a negocio
Sin humo. Solo experimentos reales, prompts que funcionan y estrategias de escalabilidad.
Los modelos de embeddings más usados
| Modelo | Proveedor | Dimensiones | Mejor para |
|---|---|---|---|
| text-embedding-3-small | OpenAI | 1.536 | Uso general, buen balance coste/calidad |
| text-embedding-3-large | OpenAI | 3.072 | Máxima calidad, más caro |
| embed-v4 | Cohere | 1.024 | Multilingüe, búsqueda |
| all-MiniLM-L6-v2 | Open source | 384 | Gratis, rápido, bueno para prototipos |
| BGE-M3 | Open source | 1.024 | Multilingüe, open source potente |
| Gemini Embedding | 768 | Integración con ecosistema Google |
¿Cuál elegir?
- Para empezar:
all-MiniLM-L6-v2(gratis, fácil, suficiente para prototipos) - Para producción:
text-embedding-3-smallde OpenAI (buen equilibrio) oembed-v4de Cohere - Para máxima calidad:
text-embedding-3-largede OpenAI - Para privacidad total: cualquier modelo open source que corras localmente
Bases de datos vectoriales: dónde guardar embeddings
Una vez que tienes los embeddings, necesitas almacenarlos en algún sitio que permita buscar por similitud de forma rápida. Para eso existen las bases de datos vectoriales:
Pinecone: la más popular en producción. Cloud, fácil de usar, escalable. Tier gratuito limitado.
Weaviate: open source, potente, con búsqueda híbrida (vectorial + keywords). Buena documentación.
ChromaDB: ligera, pensada para prototipos y proyectos pequeños. Se ejecuta en memoria, ideal para empezar.
Qdrant: open source, alto rendimiento, escrita en Rust. Muy eficiente.
pgvector: extensión de PostgreSQL. Si ya usas Postgres, no necesitas otra base de datos.
La elección depende de tu escala: para prototipos, ChromaDB. Para producción seria, Pinecone o Weaviate. Si ya tienes PostgreSQL, pgvector te ahorra complejidad.
Ejemplo práctico: búsqueda semántica en 10 líneas
Para que veas lo accesible que es, esto es una búsqueda semántica funcional en Python:
from sentence_transformers import SentenceTransformer
import numpy as np
# 1. Cargar modelo
model = SentenceTransformer('all-MiniLM-L6-v2')
# 2. Tus documentos
docs = [
"Cómo hacer una paella valenciana",
"Receta de risotto italiano",
"Configurar un servidor Linux",
"Tutorial de Python para principiantes"
]
# 3. Crear embeddings
doc_embeddings = model.encode(docs)
# 4. Buscar
query = "platos de arroz tradicionales"
query_embedding = model.encode([query])
# 5. Calcular similitud
similarities = np.dot(doc_embeddings, query_embedding.T).flatten()
best_match = docs[np.argmax(similarities)]
print(f"Mejor resultado: {best_match}")
# → "Cómo hacer una paella valenciana"
La búsqueda de "platos de arroz tradicionales" encuentra "paella valenciana" aunque no comparten ninguna palabra. Eso es el poder de los embeddings.
Limitaciones de los embeddings
Contexto limitado. La mayoría de modelos tienen un límite de tokens que pueden procesar (normalmente 512 tokens). Para documentos largos, necesitas dividirlos en chunks.
No son perfectos. A veces conceptos que un humano vería como similares tienen embeddings lejanos, y viceversa. La calidad depende mucho del modelo y del idioma.
Idioma. Los modelos multilingües funcionan peor que los entrenados en un solo idioma. Para español, los resultados son buenos pero no tan finos como para inglés.
Actualización. Si tu contenido cambia, necesitas regenerar los embeddings. No se actualizan solos.

¿Te preocupa el futuro con la IA?
Descubre cómo la inteligencia artificial ha liquidado las viejas reglas del juego y qué puedes hacer tú al respecto.
Leer más sobre el libroPor qué deberías conocer los embeddings
Los embeddings son el "lenguaje secreto" de la IA moderna. Cada vez que usas búsqueda semántica, recomendaciones personalizadas o un chatbot con RAG, los embeddings están trabajando por detrás.
No necesitas saber implementarlos para beneficiarte de ellos. Pero entender cómo funcionan te ayuda a:
- Evaluar soluciones de IA: cuando alguien te venda "búsqueda inteligente", sabrás qué hay detrás y qué preguntas hacer
- Diseñar mejores sistemas: si trabajas con IA, saber elegir el modelo de embeddings y la estrategia de chunking correctos marca la diferencia
- Entender los límites: saber por qué a veces la búsqueda semántica falla te permite diseñar workarounds
Los embeddings son el puente entre el lenguaje humano y las matemáticas de la IA. Y ese puente es lo que hace posible todo lo que hoy llamamos "inteligencia artificial".
Inteligencia Artificial aplicada a negocio
Sin humo. Solo experimentos reales, prompts que funcionan y estrategias de escalabilidad.