Embeddings de texto explicados: como funcionan [+exemplos]

Esta guía explica que son os embeddings de texto, como converten o texto en vectores que captan o significado e como escoller, avaliar e aplicar modelos de embeddings á busca, ao RAG e a outros casos de uso reais.

Diagram of what text embeddings are: two customer tickets, “I was charged twice for my subscription.” and “There’s a duplicate payment on my account.”, are converted by a text embedding model into similar vectors that sit close together in the billing issues cluster of a 2D embedding space, so both are routed to the billing support queue.

Se coñeces o concepto básico dos embeddings de texto pero te preguntas como poñelos a traballar, chegaches ao lugar axeitado. Analizaremos os vectores, a tokenización e o cálculo da similitude, mergullarémonos a fondo na avaliación dos modelos de embeddings e amosarémosche casos de uso reais.

Que son os embeddings de texto?

Os embeddings de texto son representacións numéricas de palabras, oracións ou documentos que captan o seu significado semántico e as súas relacións. Xéranse mediante modelos de embeddings que converten o texto en vectores, é dicir, matrices de números que os algoritmos de aprendizaxe automática poden procesar e comparar.

Os enxeñeiros de ML usan embeddings de texto para axudar ás aplicacións de software a recoñecer as relacións entre palabras e oracións, o que facilita buscar, categorizar e analizar grandes volumes de datos.

Imaxina que recibes milleiros de solicitudes de asistencia cada día. Os clientes informan de todos os problemas imaxinables, pero tes que categorizalas e etiquetalas. Unha forma de automatizar este proceso é usar un modelo de embeddings de texto preadestrado para converter cada solicitude nun vector.

Por exemplo, dous clientes envían as seguintes mensaxes:

  • “Cobráronme dúas veces a subscrición”: [0.21, -0.47, 0.83, ...]
  • “Hai un pagamento duplicado na miña conta”: [0.19, -0.45, 0.80, ...]

Estes vectores son simplificados e ilustrativos.

Aínda que os clientes usan palabras diferentes, están a describir o mesmo problema. O modelo de embeddings capta esta relación situando os seus vectores preto un do outro nun espazo matemático. Ambas as solicitudes clasifícanse e envíanse ao equipo de facturación.

Casos de uso dos embeddings de texto nas empresas

Os embeddings de texto úsanse en diversas tarefas de procesamento da linguaxe natural (PLN), entre elas:

  • Busca semántica: atopar información relevante en función do significado. Delivery Hero usa embeddings de produtos e de consultas xunto coa busca por palabras clave para axudar aos clientes de supermercado a atopar produtos relevantes. Por exemplo, unha busca de “iogur baixo en graxa” pode mostrar iogur grego ou iogur con 0,5 % de graxa, mesmo sen unha coincidencia exacta de palabras.
  • Clasificación de textos: categorizar textos, por exemplo, identificar correo lixo ou ordenar documentos por temas. MindCraft.ai desenvolveu un sistema de clasificación de documentos que usa embeddings de texto baseados en transformers e aprendizaxe automática para categorizar documentos corporativos e identificar información sensible co fin de cumprir o RXPD.
  • Agrupamento (clustering): agrupar documentos ou fragmentos de texto similares para identificar patróns. Doczy.ai converte o texto dos contratos en embeddings e agrupa cláusulas e conceptos semanticamente relacionados, mesmo cando contratos diferentes expresan obrigas similares con palabras distintas.
  • Xeración aumentada por recuperación (RAG): recuperar información relevante que un LLM pode usar para xerar respostas máis precisas e adaptadas ao contexto. Ring usa embeddings de texto de Amazon Titan nun chatbot RAG multilingüe para recuperar a documentación de asistencia relevante antes de xerar respostas ás preguntas dos clientes en mercados internacionais.
  • Sistemas de recomendación: suxerir artigos, produtos ou outros contidos relacionados en función de similitudes textuais. O sistema JUDE de LinkedIn usa embeddings de texto xerados por LLM a partir de descricións de empregos e perfís de membros para mellorar as recomendacións de emprego, captando as relacións entre a traxectoria dos candidatos e os postos dispoñibles.
  • Recoñecemento de entidades nomeadas (NER): axudar a identificar e clasificar nomes de persoas, organizacións e lugares nun texto. Amazon Health Services usa o NER para identificar conceptos médicos nas consultas dos clientes, como enfermidades, síntomas, medicamentos e tratamentos. Combina esa comprensión coa busca por similitude baseada en embeddings para conectar as consultas con produtos e servizos sanitarios relevantes.
  • Tradución automática: dar soporte a modelos que traducen texto entre idiomas. Transglot usa embeddings de texto nunha memoria de tradución semántica para identificar pasaxes traducidas anteriormente con significados similares, o que axuda a reutilizar as traducións existentes nos fluxos de traballo de localización.

Como funcionan os embeddings de texto?

Entón, como decide un modelo de embeddings que valores numéricos asignar a un fragmento de texto e por que deberiamos confiar nel?

Todo comeza co adestramento. Os modelos de embeddings aprenden de grandes coleccións de texto e buscan patróns na forma en que as palabras se usan xuntas. Por exemplo, modelos tradicionais como Word2Vec aprenden predicindo unha palabra a partir das palabras que a rodean, ou viceversa. Os modelos modernos centrados na recuperación adoitan usar aprendizaxe contrastiva: adéstranse para asignar puntuacións de similitude máis altas aos pares consulta-documento relevantes que aos que non teñen relación.

Unha vez adestrado o modelo, isto é o que ocorre cando lle dás un novo fragmento de texto:

  1. Tokenización. Primeiro, o modelo divide o texto en anacos máis pequenos chamados tokens. Poden ser palabras enteiras, partes de palabras ou signos de puntuación. Cada token recibe un identificador numérico do vocabulario do modelo, que por si mesmo non ten ningún significado.
  2. Codificación e agrupación (pooling). O modelo procesa estes tokens usando os patróns que aprendeu durante o adestramento e produce un vector. Cada número do vector é unha coordenada ou un compoñente, e unha dimensión é o eixe ao longo do cal ese número define a posición do vector. Cada valor contribúe á posición do texto nun espazo matemático, coñecido como espazo de embeddings.
  3. Cálculo de similitude. Para atopar textos relacionados, un sistema de recuperación compara o embedding da consulta cos embeddings dos documentos mediante unha medida de similitude como a similitude do coseno ou o produto escalar

Así é como, por exemplo, as tendas en liña devolven os artigos que coinciden coa consulta dun usuario.

Cal é a diferenza entre os embeddings de palabras, de oracións e de documentos?

A principal diferenza é canto texto representa cada embedding nun único vector. Podes crear embeddings para palabras individuais, oracións completas ou documentos enteiros, segundo a información que queiras captar.

  • Os embeddings de palabras captan as relacións entre palabras individuais e recoñecen que “interrupción” e “tempo de inactividade” son conceptos relacionados.
  • Os embeddings de oracións comprenden o significado de oracións enteiras, mesmo cando expresan a mesma idea con palabras diferentes.
  • Os embeddings de documentos representan un documento enteiro como un único vector, en lugar de crear un vector separado para cada oración. Isto axuda a conservar o tema xeral e a atopar outros documentos que traten o mesmo tema; porén, os detalles poden ser máis difíciles (se non imposibles) de recuperar.

Que nivel de granularidade convén? O nivel axeitado depende dos teus datos e do que queiras conseguir.

Nos documentos máis longos, unha práctica habitual é dividir o texto en fragmentos máis pequenos e xerar un embedding separado para cada un. Deste xeito, obterás o significado global do documento E os detalles específicos, que poderían perderse cos embeddings de documentos.

Canto afecta o tamaño dos fragmentos á calidade dos embeddings?

Bastante. Segundo Rahul Kumar, vicepresidente de enxeñaría de IA en Xenoss, o reto é atopar un tamaño de fragmento que capte unha idea completa sen perder contexto importante. El explica así o equilibrio que hai que atopar:

“O tamaño do fragmento determina canto contexto semántico leva un embedding. Un fragmento máis grande dálle ao vector máis contexto, pero tamén promedia máis temas nun só vector. Un fragmento que abrangue tres temas queda no medio e non encaixa ben con ningún deles. Un fragmento máis pequeno mantén o significado nítido, pero pode perder o contexto que facía que se puidese atopar.”

Por iso Kumar recomenda escoller unha estratexia de fragmentación en función do contido, en lugar de aterse a un tamaño fixo. Como el mesmo di, “o tamaño fixo con solapamento só funciona ben para texto uniforme, como correos electrónicos ou páxinas web extraídas”.

Para documentos estruturados como contratos ou políticas, encaixa mellor unha división recursiva que teña en conta a estrutura. A fragmentación semántica, pola súa banda, pode funcionar ben para transcricións, porque divide o texto onde cambia o tema ou o significado.

Embeddings de texto fronte á busca por palabras clave

Por que usar embeddings de texto se podes simplemente buscar palabras clave? Porque a busca por palabras clave depende da coincidencia de termos, mentres que a busca semántica baseada en embeddings pode recuperar información relevante mesmo cando a consulta e o documento usan palabras diferentes.

Pero a similitude semántica non sempre significa relevancia. Shaw Talebi, fundador de AI Builder Academy, demostra esta limitación cun sistema de busca de currículos. No caso de Talebi, ao buscar un “enxeñeiro de datos con experiencia en Apache Airflow”, só un dos cinco primeiros resultados mencionaba Apache Airflow, e aparecía en terceiro lugar, aínda que outros tres currículos do conxunto de datos incluían esa competencia.

Isto significa que a busca semántica é útil para atopar información conceptualmente relacionada, pero pode pasar por alto requisitos exactos como competencias técnicas, identificadores de produtos ou códigos de erro.

Para solucionar este problema, Rahul Kumar recomenda escoller un enfoque de recuperación segundo onde falle o sistema de recuperación:

  • A busca híbrida (a combinación da coincidencia de palabras clave coa busca semántica) é a opción predeterminada cando as consultas inclúen termos exactos, como SKU, códigos de erro ou referencias legais.
  • Os reordenadores (rerankers) compensan o seu custo cando só importan os primeiros resultados, como nas respostas xeradas a partir do contexto recuperado.
  • A recuperación baseada en grafos axuda cando a resposta abrangue varias fontes de datos conectadas.

Kumar tamén contou como o seu equipo puxo en práctica estes enfoques. Nun proxecto, executaron en paralelo a busca por palabras clave BM25 e a busca vectorial, combinaron os resultados mediante a fusión de rango recíproco (RRF) e usaron un LLM para reordenar os 124 primeiros resultados ata quedar en 6.

“Pasar a unha recuperación centrada en grafos, na que a busca vectorial atopa espazos latentes similares e despois se fai un percorrido do grafo de dous saltos, elevou a calidade da clasificación (nDCG) de 0,58 a 0,67 e reduciu o tempo de recuperación p90 de 19 s a menos de 3 s”, engade Kumar.

Tipos de modelos de embeddings de texto

Todos os modelos de embeddings, en liñas xerais, fan o mesmo: aprender relacións no texto. Porén, diferéncianse polo labor para o que se adestran, a información que teñen en conta e as tarefas para as que están deseñados.

Modelos de embeddings de palabras estáticos

Os modelos tradicionais de embeddings de palabras aprenden representacións numéricas densas das palabras a partir dos patróns de uso en grandes coleccións de texto. Estes embeddings son estáticos, é dicir, cada palabra recibe o mesmo vector independentemente do seu significado nun contexto concreto.

Dous métodos ben coñecidos son:

  • Word2Vec: desenvolvido por Google en 2013, aprende representacións a partir das palabras veciñas mediante dúas arquitecturas: Continuous Bag of Words (CBOW), que predí unha palabra a partir das súas veciñas, e skip-gram, que predí as palabras veciñas a partir dunha palabra dada.
  • GloVe (Global Vectors for Word Representation): desenvolvido en Stanford en 2014, usa estatísticas de coaparición de palabras para aprender as relacións entre elas.

Modelos de linguaxe contextualizados

A diferenza dos embeddings estáticos, os modelos de linguaxe de propósito xeral producen representacións contextuais que cambian segundo o texto que as rodea. Isto axuda aos modelos a distinguir entre os distintos significados dunha mesma palabra.

  • BERT (2018, Google): usa autoatención bidireccional para ter en conta as palabras a ambos os lados dun token. Por exemplo, xera representacións diferentes para “banco” en “Ingresei cartos no banco” e “Senteime nun banco do parque”.
  • GPT (2018, OpenAI): usa representacións baseadas en transformers que teñen en conta o texto precedente mentres predí o seguinte token. Os modelos GPT están deseñados principalmente para a xeración de linguaxe.

Modelos de embeddings de oracións e de documentos

Representan como vectores fragmentos de texto máis longos, desde oracións individuais ata parágrafos e documentos enteiros.

  • Doc2Vec: estende a aprendizaxe ao estilo de Word2Vec a oracións, parágrafos e documentos. Pode axudar a agrupar artigos relacionados ou a clasificar documentos por tema.
  • Universal Sentence Encoder (USE): desenvolvido por Google en 2018 para xerar representacións de lonxitude fixa de oracións e parágrafos curtos para a similitude semántica e a clasificación de textos.
  • Sentence-BERT (SBERT, 2019): desenvolvido por Nils Reimers e Iryna Gurevych na Universidade Técnica de Darmstadt, baséase no modelo BERT de Google e úsase habitualmente para a busca semántica, a detección de paráfrases e o agrupamento.
  • pplx-embed-v1 (2026, Perplexity): esta familia de modelos de embeddings de texto de última xeración, creada para a recuperación en contornos reais a escala web, usa un preadestramento baseado en difusión para converter un modelo de linguaxe causal nun codificador bidireccional. Xera embeddings densos para consultas e documentos codificados de forma independente, cun adestramento consciente da cuantización para reducir os custos de almacenamento. O noso modelo 4B INT8 acadou 69,66 de nDCG@10 no benchmark de recuperación multilingüe MTEB, fronte aos 67,71 de gemini-embedding-001 de Google.
  • pplx-embed-context-v1 (2026, Perplexity): aborda un problema habitual da fragmentación de documentos: as pasaxes poden perder o seu significado cando se separan do texto que as rodea. Mediante a fragmentación tardía (late chunking), o modelo procesa o documento antes de agrupar as representacións contextualizadas dos tokens en embeddings de fragmentos separados. O noso modelo 4B acadou 81,96 de nDCG@10 en ConTEB, fronte aos 79,45 de voyage-context-3.
  • pplx-embed-v2-context (2026, Perplexity): leva a recuperación contextual máis lonxe. En lugar de adestrarse só para atopar a pasaxe que contén unha resposta, aprende a identificar as pasaxes de apoio que axudan a explicar ou verificar esa resposta. Durante o adestramento, o modelo usa sinais de relevancia destilados dun modelo de compresión de contexto, sen necesitar ese modelo mestre no momento da inferencia. A nosa versión preliminar 9B acadou un 45,5 % de exhaustividade (recall) nas respostas e un 40,6 % nas evidencias con 10 resultados en context-bench.

Os modelos de Perplexity tamén permiten almacenar embeddings a grande escala. Os modelos producen embeddings INT8 e binarios, que reducen os requisitos de almacenamento 4 e 32 veces, respectivamente, en comparación con FP32.

Modelo

Dimensións

Contexto

MRL

Cuantización

Instrución

Agrupación

pplx-embed-v1-0.6B

1024

32K

Si

INT8/BINARIO

Non

Media

pplx-embed-v1-4B

2560

32K

Si

INT8/BINARIO

Non

Media

pplx-embed-context-v1-0.6B

1024

32K

Si

INT8/BINARIO

Non

Media

pplx-embed-context-v1-4B

2560

32K

Si

INT8/BINARIO

Non

Media

Dimensións, lonxitude de contexto, cuantización e configuración de agrupación dos modelos pplx-embed

Embeddings densos, dispersos e multivector

Hai unha distinción máis que paga a pena comprender, especialmente para a busca semántica. Os modelos de embeddings poden diferir en como representan o texto e calculan a relevancia.

  • Embeddings densos: representan o texto mediante vectores compactos nos que a maioría dos valores son distintos de cero.
  • Embeddings dispersos: usan vectores con valores maioritariamente nulos, con pesos aprendidos asociados aos termos importantes. Modelos como SPLADE (2021) aprenden que termos importan para recuperar documentos relevantes.
  • Embeddings multivector: conservan varios vectores para un fragmento de texto, o que permite comparacións máis detalladas entre consultas e documentos. Modelos como ColBERT (2020) usan estas representacións para facer comparacións consulta-documento máis detalladas.
  • Modelos que combinan varios enfoques: BGE-M3 (2024), desenvolvido por BAAI, admite a recuperación densa, dispersa e multivector nun mesmo modelo.

Como escoller e avaliar un modelo de embeddings de texto

Os benchmarks públicos como MTEB son un bo punto de partida. Úsaos para preseleccionar dous ou tres modelos que admitan os teus idiomas, lonxitudes de entrada e requisitos de despregamento. Pero non escollas aínda un gañador. Nunca insistiremos abondo na importancia de probar eses modelos cos teus propios datos.

Velaquí un fluxo de traballo práctico de avaliación:

  1. Crea un conxunto de datos de proba. Recompila entre 50 e 100 consultas de busca representativas como conxunto de avaliación inicial (pode que necesites máis), incluídos casos complicados como paráfrases, terminoloxía técnica e códigos de erro exactos. Para cada consulta, identifica que documentos ou pasaxes conteñen respostas relevantes. Estas etiquetas de relevancia convértense na túa verdade de referencia (ground truth).
  2. Mide a calidade da recuperación. Proba cada modelo co mesmo conxunto de datos de avaliación e mantén comparables a preparación dos documentos e as condicións de recuperación, respectando á vez os requisitos específicos de cada modelo en canto ao formato das consultas, a normalización e a puntuación de similitude. Despois, calcula as seguintes métricas co InformationRetrievalEvaluator de Sentence Transformers:
    • Recall@k: Indica a proporción de pasaxes relevantes que aparecen entre os k primeiros resultados.
    • MRR: Mide a que altura da clasificación aparece o primeiro resultado relevante.
    • nDCG@k: Mide en que medida os k primeiros resultados están ben ordenados segundo a súa relevancia.
  3. Avalía a latencia e a capacidade de procesamento. Mide canto tarda cada modelo en xerar o embedding dunha consulta e indica, idealmente, a latencia mediana (p50) e a do percentil 95 (p95) cunha carga realista.
  4. Calcula os custos de almacenamento e de operación. O almacenamento vectorial depende do número de embeddings, das súas dimensións e da precisión numérica. Por exemplo, un millón de embeddings FP32 de 768 dimensións require aproximadamente 3,1 GB de almacenamento vectorial bruto, sen contar a sobrecarga da indexación. Para reducir as necesidades de almacenamento, podes cuantizar os vectores a unha precisión numérica menor. Pasar de FP32 a INT8, por exemplo, reduce o almacenamento vectorial bruto unhas catro veces. Porén, a compresión pode afectar á calidade da recuperación, así que volve executar as avaliacións para comprobar se compensa.

En definitiva, compara os resultados en paralelo: métricas de recuperación, latencia p95, capacidade de procesamento, almacenamento e custo. Escolle o modelo que cumpra os teus requisitos de calidade dentro das restricións do teu contorno de produción.

Cando deberías usar embeddings en lugar dun LLM?

Agora que os LLM se encargan de todo, desde a análise de documentos ata o razoamento complexo, resulta moi tentador pasarlle todo o texto a un modelo e deixar que el o resolva. Pero seguramente non che fará ningunha graza ter que pagar por iso.

Ademais, os LLM son mellores para avaliar e redactar, pero están limitados pola cantidade de información que pode caber nun único prompt. Os embeddings, en cambio, son baratos, rápidos e coherentes, e funcionan con millóns de elementos.

«Os embeddings gañan na busca, nas recomendacións (“máis coma este”), na detección de duplicados, como solicitudes de asistencia repetidas, e na agrupación de grandes volumes de contido por temas. Tamén funcionan moi ben en distintos idiomas. Un LLM gaña cando a tarefa require razoamento: resumir, comparar opcións ou redactar unha resposta. A maioría dos sistemas reais necesitan ambos, e cada un encárgase da parte que mellor fai», conclúe Kumar.

En que se equivocan os desenvolvedores cos embeddings de texto

Para descubrir o que adoitan pasar por alto os desenvolvedores, falei con Rahul Kumar e con Xibeijia Guan, especialista en ciencia de datos de Ahrefs. Destacaron seis erros aos que convén prestar atención:

  • Omitir o preprocesamento do texto. Se os datos de entrada conteñen HTML, menús de navegación, anuncios ou outro contido irrelevante, os pasos de preprocesamento, como a eliminación de texto repetitivo (boilerplate), poden mellorar a calidade dos embeddings ao eliminar información innecesaria.
  • Ignorar a lonxitude máxima de entrada do modelo. Cada modelo ten os seus propios límites de tokens e comportamentos de truncamento. O texto que supere o límite pode quedar truncado, o que fai que se perda información importante.
  • Non seguir os requisitos específicos do modelo. Algúns modelos de embeddings requiren prefixos concretos, como query: e passage:, ou instrucións distintas para cada tarefa. Non seguir estes requisitos pode reducir o rendemento da recuperación.
  • Usar unha medida de similitude incompatible. A similitude do coseno e o produto escalar non sempre son intercambiables. Comproba se os embeddings están normalizados e usa o método de puntuación recomendado para o modelo e o índice vectorial.
  • Confundir a similitude temática coa relevancia. Nas coleccións dun dominio restrinxido, moitos documentos poden ser semanticamente similares sen responder á mesma pregunta. Revisa as consultas fallidas e as distribucións da clasificación. Proba a recuperación léxica ou híbrida, a reordenación e os filtros de metadatos cando os usuarios necesiten información exacta.
  • Ignorar a normalización dos embeddings. Os distintos modelos de embeddings poden xerar vectores normalizados ou sen normalizar. Comproba se os embeddings están normalizados e se fai falta unha normalización adicional, segundo a métrica de similitude que uses.

Preguntas frecuentes sobre os embeddings de texto

1. Como xero embeddings de texto?

O método máis sinxelo é usar un modelo de embeddings preadestrado. Coa biblioteca Sentence Transformers de Python, por exemplo, podes cargar un modelo como all-MiniLM-L6-v2, pasarlle o texto a model.encode(), e obter un vector numérico. Tamén podes xerar embeddings a través dunha API.

Para a busca semántica ou o RAG, o habitual é dividir os documentos en fragmentos, xerar un embedding para cada un e gardar os vectores nun índice no que se poida buscar.

2. Cales son os mellores modelos de embeddings para texto?

Hai varios modelos que paga a pena considerar, segundo o que esteas a construír:

  • pplx-embed-v1 de Perplexity: Deseñado para a recuperación densa a grande escala, con embeddings INT8 e binarios que reducen as necesidades de almacenamento vectorial.
  • pplx-embed-context-v1 de Perplexity: Útil para recuperar pasaxes de documentos longos nos que os fragmentos individuais perden o significado sen o contexto que os rodea.
  • all-MiniLM-L6-v2: Axeitado para a busca semántica local e lixeira, a agrupación (clustering) e as tarefas de similitude entre oracións. Produce vectores compactos de 384 dimensións, pero trunca as entradas de máis de 256 subpalabras (word pieces).
  • BGE-M3: Útil para RAG multilingüe e recuperación híbrida. Admite máis de 100 idiomas e combina representacións densas, dispersas e multivector.
  • Qwen3-Embedding: Un candidato sólido para a busca multilingüe, a recuperación de código e os embeddings específicos para cada tarefa. Ofrece modelos de pesos abertos de 0,6B, 4B e 8B compatibles con instrucións.
  • text-embedding-3-large de OpenAI: Unha opción baseada en API para a busca semántica e a recuperación de documentos cando non queres aloxar un modelo. Admite ata 3072 dimensións, que podes reducir para aforrar almacenamento.
  • Modelos Gemini Embedding de Google: Útiles para aplicacións de recuperación xestionadas. Gemini Embedding 2 tamén permite buscar en texto, imaxes, audio, vídeo e PDF nun espazo de embeddings compartido.

3. Podo usar un LLM como modelo de embeddings?

Si, pero hai unha diferenza entre un LLM de propósito xeral e un optimizado para embeddings. Os LLM producen representacións vectoriais internas do texto, que podes extraer e agregar (pooling) nun único embedding. Porén, eses vectores non son necesariamente útiles para a busca semántica sen un adestramento adicional.

Por exemplo, Qwen3-Embedding usa como base un LLM adestrado adicionalmente para tarefas de embedding e recuperación. Así, aínda que podes adaptar un LLM para xerar embeddings, un modelo de embeddings específico adoita ser o punto de partida máis práctico.