Ganancias:
- Comprender que la incrustación convierte el texto en un vector en el espacio semántico y que significados similares son vectores cercanos.
- Explicando cómo funciona la búsqueda de ANN con métricas de similitud de puntos y cosenos
- Seleccionar bases de datos vectoriales comunes en función del costo, la escala y la necesidad de filtrado de metadatos
En el centro de RAG hay una única pregunta: "¿Qué fragmento de texto se parece más a la pregunta del usuario?" La computadora procesa texto con números, no literalmente. Es por eso que primero debemos convertir el texto en números que transmitan su significado. Eso es la incrustación: el proceso de convertir un texto en una secuencia de números (vector) que representa el significado de ese texto. Cuando termine esta unidad, sabrá cómo funciona la incrustación, cómo se mide la similitud y cómo elegir la base de datos vectorial adecuada.
Incrustación: traducir significado en coordenadas
Un modelo de incrustación (una inteligencia artificial especialmente entrenada) convierte el texto que usted proporciona en un vector de, por ejemplo, 1024 números. Piense en este vector como una coordenada en un espacio multidimensional. La magia es esta: los textos que tienen un significado similar caen en coordenadas cercanas en este espacio.
Un ejemplo sencillo: “vacaciones anuales”, “derecho a vacaciones” y “vacaciones anuales retribuidas” utilizan palabras diferentes pero significan lo mismo: sus vectores están próximos entre sí. La “cuenta de nómina” es un asunto diferente: su vector es distante. Entonces el usuario pregunta “¿cuántos días de vacaciones tengo?” Cuando preguntas, incluso podemos encontrar un documento que no contiene la palabra "vacaciones" sino que dice "las vacaciones anuales son de 14 días". Esto es lo que la búsqueda clásica de palabras clave (búsqueda que coincide exactamente con la palabra) no puede hacer.
Consejo: piense en la incrustación como una "huella digital de significado". Las huellas dactilares de dos frases con el mismo significado parecen similares; Incluso si las palabras son diferentes.
Una regla importante: el modelo que utilice al insertar la pregunta debe ser el mismo modelo que utilice al insertar documentos. Diferentes modelos producen diferentes espacios; Las coordenadas se vuelven incomparables.
¿Cómo medir la similitud?
Existen varios métodos para medir qué tan similares son dos vectores. La más común es la similitud coseno: mide el ángulo entre dos vectores. Si el ángulo es pequeño (vectores que apuntan en la misma dirección), la similitud es alta. El valor está entre −1 y 1; Cerca de 1 = muy similar.
criterio
¿Qué mide?
¿Cuándo se prefiere?
coseno
Ángulo (dirección) entre vectores
El más común; defecto en la similitud semántica del texto
Producto escalar
Dirección + magnitud juntas
Si los vectores están normalizados, se obtiene el mismo resultado que el coseno; es rapido
Euclidiana (distancia euclidiana)
Distancia recta entre coordenadas
En algunos escenarios de agrupación; menos usado en el texto
En la práctica, la mayoría de los modelos de incrustación producen vectores normalizados (tamaño establecido en 1); En este caso, el coseno y el producto escalar dan el mismo orden. No se quede paralizado por las decisiones: comience con el coseno.
Entre millones de vectores, compararlos uno por uno a la vez es lento. Es por eso que las bases de datos vectoriales utilizan algoritmos ANN (vecino más cercano aproximado). ANN encuentra "casi exactamente lo más cercano" en lugar de lo "exactamente más cercano" muy rápidamente. Por ejemplo, el método llamado HNSW puede devolver resultados en unos pocos milisegundos incluso para 10 millones de vectores. Obtienes una gran velocidad con un pequeño sacrificio de precisión.
¿Qué hace la base de datos vectorial?
Una base de datos de vectores hace tres cosas a la vez: (1) almacena vectores, (2) encuentra rápidamente los vectores más similares a un vector de consulta, (3) filtra por metadatos junto a cada vector. Los metadatos son las etiquetas que se adjuntan a esa pieza: archivo fuente, fecha, departamento, nivel de privacidad, etc. El filtrado de metadatos es fundamental en el RAG empresarial; porque necesita poder establecer restricciones como "buscar solo en los documentos 2025 del departamento de Finanzas".
# Regístrese en la base de datos vectorial (conceptual)vektor_db.add( id="izin-politikasi-parca-3", vektor=embed("La licencia anual retribuida es de 14 días..."), text="La licencia anual retribuida es de 14 días...", metadata={"source": "ik_el_kitabi.pdf", "department": "IK", "date": "2025-06", "privacy": "ic"})
# Resultado de la búsqueda filtrada por metadatos (conceptual) = vektor_db.search( vektor=embed("¿cuántos días de licencia tengo?"), top_k=4, filter={"department": "HR", "privacy": ["internal", "on"]})
Elegir la base de datos adecuada
vehículo
Aspecto destacado
Situación adecuada
Integrado/basado en archivos (biblioteca integrada)
Sin instalación, una sola máquina
Prototipo, kit pequeño (< unos cientos de miles de piezas)
Servicio de nube gestionado
El escalado y el mantenimiento no son su responsabilidad.
Producción, datos de rápido crecimiento, equipo pequeño
Código abierto en su propio servidor
Control total, tus datos siguen siendo tuyos
Obligación de privacidad, infraestructura existente
Adición a la base de datos existente
No gestionas sistemas separados.
Agregar soporte vectorial a la base de datos que ya usas
Preguntar al elegir: ¿Cuántas piezas habrá? ¿Qué importancia tiene el filtrado de metadatos? ¿Pueden los datos salir de la empresa (confidencialidad)? ¿Puede el equipo operar una infraestructura? A menudo es aconsejable empezar poco a poco y ampliar según sea necesario.
Enfoque débil / Enfoque fuerte
Débil (almacenamiento de incrustación simple, sin metadatos):
Simplemente guarde el texto y el vector. Búsqueda: devuelve los 4 vectores más similares.# Problema: no se puede filtrar como "solo documentos de recursos humanos actuales";# también se pueden incluir partes antiguas/no autorizadas en la respuesta.
Potente (metadatos enriquecidos + búsqueda filtrada):
Agregue fuente, fecha, departamento y etiqueta de privacidad a cada pieza. Filtre según la autoridad y actualidad del usuario durante la búsqueda: filter = {"privacy": user_authority, "date_date": "2024-01"}# Por lo tanto, el resultado es seguro y está actualizado.
Tres mini estuches
Caso 1: Mezcla de modelos incorrecta. Un equipo incorporó documentos con el modelo A y preguntas con el modelo B. Las búsquedas arrojaron resultados sin sentido y la tasa de respuestas correctas se mantuvo en el 31%. Cuando cambié a un solo modelo (ambos con el mismo modelo de integración), la tasa saltó al 88%. Lección: pregunta y documento deben estar en el mismo espacio.
Caso 2: Riesgo de privacidad sin metadatos. En una empresa de atención médica, todos los documentos del departamento se agrupaban en un único grupo sin metadatos. Cuando un asociado de ventas hacía una pregunta, el sistema contextualizaba un dato del paciente. Cuando se agregaron metadatos + filtro (según el nivel de autorización), se eliminó este riesgo; En la recuperación no se traen 12 piezas no autorizadas.
Caso 3: Cuello de botella de escala. Una empresa de comercio electrónico buscó 8 millones de descripciones de productos con un método simple de "escanear todo"; Cada consulta tomó 6 segundos. Cuando cambiamos a ANN basada en HNSW, el tiempo disminuyó a 45 milisegundos, con solo un 1% de pérdida de precisión. Lección: ANN es obligatoria en el gran conjunto.
Errores comunes
- Incorporar la pregunta y el documento con diferentes modelos: los resultados no tienen sentido; Siempre un modelo.
- Saltar metadatos: no se pueden filtrar; Pierdes el control de la privacidad y la actualización.
- Confundir la incrustación con el cifrado: la incrustación transporta información reversible; Es un error suponer que los datos confidenciales están "ocultos".
- Construir una infraestructura innecesariamente grande en un conjunto pequeño: un clúster gigante administrado por 5000 partes es una complejidad innecesaria.
- No se preocupe demasiado por el criterio de similitud: comience con el coseno en el texto; El ajuste fino viene después.
Precaución: La incrustación incorpora el significado del texto en números, pero no "destruye" el contenido. Si se filtra una base de datos vectorial, los textos almacenados originales (en la mayoría de las instalaciones el texto también se almacena) también se ven comprometidos. Mantenga el repositorio de vectores tan confidencial como los documentos que contiene.
En resumen
- La incrustación convierte el texto en un vector de números que lleva su significado; Significados similares son vectores cercanos.
- La similitud a menudo se mide mediante el coseno; Para vectores normalizados, el producto escalar da el mismo resultado.
- En big data, ANN (por ejemplo, HNSW) reemplaza la búsqueda exacta: gran velocidad con poco sacrificio de precisión.
- La base de datos de vectores realiza almacenamiento de vectores + búsqueda de similitud + filtrado de metadatos; Los metadatos son esenciales para el RAG empresarial.
- La pregunta y el documento deben traducirse con el mismo modelo de incrustación; de lo contrario, las coordenadas no se pueden comparar.
Tarea de aplicación
Extraiga 10 pasajes cortos (de 3 a 6 oraciones cada uno) del documento que seleccionó en la unidad anterior. (1) Diseñe al menos tres etiquetas de metadatos para cada pieza (fuente, fecha y una tercera adecuada a su contexto empresarial: departamento, producto, privacidad, etc.). (2) Escriba qué filtro de metadatos se debe aplicar para 3 preguntas de usuarios diferentes. (3) Encuentre 3 pares de preguntas y partes que expresen el mismo significado en diferentes palabras (por ejemplo, “derecho a vacaciones” ↔ “vacaciones anuales”) y explique en una oración por qué no coincidirán con la búsqueda de palabras clave pero sí con la incrustación.
lista de verificación
- [] Puedo decir que la incrustación convierte el texto en un vector en el espacio semántico y que hay significados similares.
- Sé que [] La similitud del coseno mide el ángulo y es la preferencia predeterminada en el texto.
- [] Puedo explicar por qué ANN es necesaria en big data.
- [] Sé por qué los metadatos son fundamentales para la confidencialidad y el control de actualización.
- [] Sigo la regla de traducir la pregunta y el documento con el mismo modelo de incrustación.