Qué es un embedding
Un embedding es una representación numérica de texto (o imagen, audio) como un vector de cientos o miles de dimensiones. Permite a la IA entender el significado en términos matemáticos.
Cómo funciona conceptualmente
Imagina que cada concepto se ubica en un espacio multidimensional. Conceptos relacionados están cerca unos de otros:
perro → vector cerca de gato (ambos mamíferos domésticos)
perro → vector lejos de rascacielos
agencia digital → cerca de marketing online, consultora SEO
manzana → cerca de fruta, pero también de tecnología (Apple)
Los modelos de embedding aprenden estas relaciones a partir de miles de millones de textos.
Dimensiones típicas
Cada vector tiene cientos o miles de números:
- OpenAI text-embedding-3-small: 1.536 dimensiones
- OpenAI text-embedding-3-large: 3.072 dimensiones
- Google embeddings: 768 dimensiones
- Cohere embeddings: 1.024 dimensiones
Más dimensiones = más matiz pero más coste de cómputo y almacenamiento.
Ejemplo (simplificado a 4 dimensiones)
Si los embeddings fueran de 4 dimensiones (en realidad son miles):
perro → [0.8, 0.2, 0.1, 0.9]
gato → [0.7, 0.3, 0.1, 0.8]
coche → [0.1, 0.9, 0.8, 0.2]
automóvil → [0.2, 0.9, 0.8, 0.3]
Vectores cercanos (perro/gato, coche/automóvil) → conceptos relacionados. Vectores lejanos (perro/coche) → conceptos distintos.
Para qué se usan
1. Búsqueda semántica
En lugar de buscar palabras literales, buscas significado:
- Usuario busca cómo bajar costes de adquisición
- Sistema busca documentos con embedding cercano
- Encuentra documento titulado reducir CAC en B2B (no contiene bajar costes literalmente, pero semánticamente es lo mismo)
2. RAG (Retrieval-Augmented Generation)
Base de cómo funciona RAG:
- Toda tu documentación se convierte a embeddings
- Cuando el usuario pregunta, su pregunta se convierte a embedding
- Buscas los 5 documentos con embedding más cercano a la pregunta
- Pasas esos documentos como contexto al LLM
- LLM responde con la info correcta de tus documentos
3. Clasificación de texto
Si entrenaste con muchos ejemplos:
- Reviews con sentimiento positivo → vectores en cierta región
- Reviews negativas → vectores en otra región
- Para clasificar nueva review: ver dónde cae su vector
4. Detección de duplicados
Si dos textos tienen embeddings muy cercanos → son parecidos (aunque la wording cambie).
5. Recomendaciones
Productos con embeddings cercanos → te puede interesar también…
Cómo se calculan
Modelos especializados de embedding procesan el texto:
import openai
response = openai.embeddings.create(
model=text-embedding-3-small,
input=Tu texto aquí
)
vector = response.data[0].embedding # array de 1536 floats
Distancia entre vectores
Para medir si dos embeddings son cercanos:
Cosine similarity (más usado)
Mide el ángulo entre vectores. Rango -1 a 1.
- 1.0 = idénticos
- 0.0 = no relacionados
- -1.0 = opuestos
En la práctica:
- > 0.85 = muy similares
- 0.7-0.85 = relacionados
- 0.5-0.7 = vagamente
- < 0.5 = distintos
Otras métricas
- Euclidean distance: distancia en el espacio
- Dot product: producto escalar
Coste
API de embeddings es barata comparado con LLMs:
- OpenAI text-embedding-3-small: 0,02$ / 1M tokens
- OpenAI text-embedding-3-large: 0,13$ / 1M tokens
- Cohere embed-multilingual-v3: 0,10$ / 1M tokens
- Voyage AI: 0,12$ / 1M tokens
Embedding de un libro entero (200.000 palabras ≈ 270.000 tokens) cuesta menos de 0,10$.
Modelos populares 2026
| Modelo | Dimensiones | Precio/1M tokens | Uso típico |
|---|---|---|---|
| OpenAI text-embedding-3-small | 1536 | 0,02$ | Recomendado general |
| OpenAI text-embedding-3-large | 3072 | 0,13$ | Alta precisión |
| Cohere embed-multilingual-v3 | 1024 | 0,10$ | Multi-idioma |
| Voyage AI voyage-2 | 1024 | 0,12$ | RAG avanzado |
| Open source (BGE-large, etc.) | 768-1024 | 0 (self-host) | Privacidad |
Para casi cualquier caso de uso de pyme: OpenAI text-embedding-3-small es ideal por coste/calidad.
Almacenamiento
Vectores de 1536 dimensiones × 4 bytes (float) = ~6 KB por vector. 100.000 chunks de documentos = 600 MB.
Se almacenan en vector databases especializadas (Pinecone, Weaviate, Chroma, Qdrant) optimizadas para búsqueda rápida.