Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Descripción general de la incrustación automatizada

Puedes configurar MongoDB Vector Search para generar y administrar automáticamente incrustaciones vectoriales para los datos de texto en tu clúster Atlas. Al habilitar la incrustación automatizada, MongoDB Vector Search genera automáticamente incrustaciones utilizando el modelo de incrustación de Voyage AI especificado en el momento de la indexación para el campo de texto especificado en tu colección y en el momento de la consulta para la cadena de texto en tu consulta.

La incrustación automatizada simplifica el proceso de creación de búsquedas semánticas. No es necesario generar, almacenar ni gestionar las incrustaciones vectoriales manualmente. Atlas se encarga de la generación, actualización y consulta de las incrustaciones de forma nativa.

Nota

Debe habilitar el escalado automático con un tamaño máximo de instancia de M30 o superior para que los clústeres M10 y M20 utilicen la incrustación automatizada. Para todos los demás niveles de clúster, la incrustación automatizada está habilitada de forma predeterminada.

Puedes implementar MongoDB Vector Search y habilitar una búsqueda semántica inteligente potenciada por IA en tus datos de texto mediante la incrustación automatizada en los índices de MongoDB Vector Search. Las capacidades automatizadas de Embedded de MongoDB transforman el proceso tradicionalmente complejo de implementación de búsqueda vectorial en una solución de un solo paso. En lugar de gestionar infraestructura de embedding por separado, elección de modelos y código de integración, ahora puedes implementar una búsqueda semántica mediante la simple configuración de campos.

Cuando configuras los índices de MongoDB Vector Search, este genera automáticamente incrustaciones vectoriales para los datos de texto de tu colección, utilizando tu selección de un modelo de incrustación de vanguardia de Voyage AI, mantiene las incrustaciones sincronizadas a medida que cambian tus datos y también soporta el uso de consultas de texto en lenguaje natural. Estos embeddings vectoriales capturan relaciones significativas en tus datos y permiten búsquedas basadas en la intención en lugar de palabras clave.

Para habilitar la incrustación automatizada, cree un índice de búsqueda vectorial de MongoDB con el tipo autoEmbed. El tipo autoEmbed especifica el campo para el que desea habilitar la incrustación automatizada y el modelo de incrustación que desea utilizar. También puede incluir uno o más campos para prefiltrar sus datos con el tipo filter.

1{
2 "fields": [
3 {
4 "type": "autoEmbed",
5 "modality": "text",
6 "path": "<field-to-index>",
7 "model": "<embedding-model>"
8 },
9 {
10 "type": "filter",
11 "path": "<field-to-index>"
12 },
13 ...
14 ]
15}

Para obtener más información sobre la sintaxis y los campos del índice, consulte Cómo indexar campos para la búsqueda vectorial.

La función Vector Search de MongoDB genera automáticamente incrustaciones para los documentos existentes y nuevos que usted inserte o actualice.

Una vez creado el índice, puede ejecutar sus consultas. MongoDB Vector Search genera automáticamente incrustaciones para el texto de su consulta utilizando el mismo modelo de incrustación que especificó en el índice. Opcionalmente, puede especificar un modelo de incrustación diferente mediante la model opción en la etapa de la $vectorSearch canalización, pero el modelo de incrustación especificado debe ser compatible con el modelo de incrustación utilizado durante la indexación.

1[
2 {
3 "$vectorSearch": {
4 "index": "<index-name>",
5 "path": "<field-to-index>",
6 "query": "<query-text>",
7 "model": "<embedding-model>"
8 }
9 },
10 {
11 "$project": {
12 "_id": 0,
13 "<field-to-index>": 1,
14 "score": { "$meta": "vectorSearchScore" }
15 }
16 }
17]

Para obtener más información, consulte Ejecutar consultas de Vector Search.

Nota

Esta función está disponible para MongoDB Search y MongoDB Vector Search. Implementaciones mediante Docker, tarball o un gestor de paquetes, y para implementaciones mediante el operador de controladores de MongoDB para Kubernetes con MongoDB 8.2 o posterior Community Edition. La funcionalidad de incrustación automatizada aún no está disponible para MongoDB Enterprise Edition.

Con un simple cambio de configuración, puede habilitar la búsqueda semántica,RAG y la memoria paramongot agentes de IA, sin necesidad de escribir código de incrustación, administrar la infraestructura del modelo ni gestionar las canalizaciones vectoriales. Es decir, al implementar MongoDB Community Edition con el proceso de búsqueda y búsqueda vectorial de MongoDB,, puede proporcionar las claves de API de Voyage AIpara generar incrustaciones, idealmente una para operaciones de indexación y otra para operaciones de consulta de diferentes proyectos.

Después de la implementación:

  1. Desde tu colección, elige el campo de texto para el que deseas habilitar la búsqueda semántica.

  2. De la lista de modelos de incrustación disponibles, selecciona un modelo de incrustación.

  3. En tu definición de índice de MongoDB Vector Search, configura Embedding Automatizado usando el tipo autoEmbed.

Para obtener más información sobre cómo configurar el índice de búsqueda vectorial de MongoDB para la incrustación automatizada, consulte Cómo indexar campos para la búsqueda vectorial.

MongoDB Vector Search genera automáticamente incrustaciones para documentos existentes y nuevos que insertas o actualizas usando el Las claves API que especificó al inicializar MongoDB Community Edition.

Para realizar consultas, utilice la query.text opción en la etapa de la $vectorSearch canalización. MongoDB Vector Search genera incrustaciones para la consulta de texto utilizando el mismo modelo de incrustación que en la definición del índice. Puede especificar un modelo de incrustación diferente mediante la model opción en la etapa de la $vectorSearch canalización, pero el modelo de incrustación especificado debe ser compatible con el modelo de incrustación utilizado en el momento de la indexación. MongoDB Vector Search utiliza la clave de API de consulta que proporcionó durante la inicialización de MongoDB Community para generar las incrustaciones en el momento de la consulta. Para obtener más información, consulte Ejecutar consultas de Vector Search.

Se le cobrará por generar elementos incrustados mediante las claves API. Para obtener más información, consulte la sección Gestionar facturación.

Para automatizar las incrustaciones y ejecutar una consulta de ejemplo, consulte la Guía de inicio rápido de MongoDB Vector Search.

Si bien puede usar una única clave de API para generar embeddings tanto en el momento de indexación como en el momento de query, le recomendamos que use claves de API separadas para evitar que las operaciones de query afecten negativamente las operaciones de indexación.

Puedes generar claves API de las siguientes formas:

Después de crear las claves, debes especificar las claves que deseas utilizar para la incrustación automatizada al configurar mongot durante la implementación con MongoDB Community Edition. MongoDB Vector Search utiliza la clave de la API de Voyage IA que proporcionaste durante la implementación de mongot para generar automáticamente incrustaciones para tus datos en el índice y para tu texto de query en tiempo de query.

Los índices de incrustación automatizada generan incrustaciones vectoriales de forma asíncrona y las almacenan en una base de datos de reserva independiente en su clúster de MongoDB. Cada índice de incrustación automatizada tiene exactamente una colección de incrustaciones generadas correspondiente. Esta colección se almacena en una base de datos interna dedicada en el mismo clúster.

Para obtener más información, consulte la Colección de incrustaciones generadas.

MongoDB Vector Search se integra con los modelos de incrustaciones de última generación de Voyage AI, cada uno optimizado para un caso de uso específico:

Modelo de incrustación
Descripción
Precio por 1M tokens

voyage-4-lite

Optimizados para aplicaciones de alto volumen y sensibles al costo.

$0.02

voyage-4

(Recomendado) Rendimiento equilibrado para búsqueda de texto general.

$0.06

voyage-4-large

Máxima precisión para relaciones semánticas complejas.

$0.12

voyage-code-3

Especializado en búsqueda de código y documentación técnica.

$0.18

Para obtener más información, consulte Modelos para la incrustación automatizada.

modelo de incrustación

Los modelos de incrustación son algoritmos que convierten datos en incrustaciones vectoriales que capturan el significado semántico o subyacente de los datos. Estos vectores permiten realizar búsquedas vectoriales.

Para obtener más información sobre los modelos de incrustación para la incrustación automatizada, consulte Modelos disponibles.

embeddings vectoriales

Una incrustación vectorial es un arreglo de números, siendo cada dimensión la representación de una funcionalidad o atributo diferente de sus datos. Los vectores se pueden utilizar para representar cualquier tipo de datos, desde texto, imágenes y videos hasta datos no estructurados. Crea representaciones vectoriales pasando tus datos por un modelo de representaciones, y puedes almacenar estas representaciones en una base de datos que soporte representaciones vectoriales como MongoDB.

Para obtener más información sobre el almacenamiento de incrustaciones para la incrustación automatizada, consulte la sección "Recopilación de incrustaciones generadas".

tokens

En el contexto de los modelos de embebido y los LLM, los tokens son las unidades fundamentales de texto, como palabras, subpalabras o caracteres, que el modelo procesa para crear embebidos o generar texto. Los tokens son la forma en que se le factura por el uso de modelos de incrustación y LLMs.

Para obtener más información sobre los tokens para la incrustación automatizada, consulte la sección "Gestionar la facturación para la incrustación automatizada".

límites de velocidad

Los límites de tasa son restricciones impuestas por los proveedores de API respecto a la cantidad de solicitudes que un usuario puede realizar en un período de tiempo específico, a menudo medidos en tokens por minuto (TPM) o solicitudes por minuto (RPM). Estos límites garantizan un uso equitativo, previenen abusos y mantienen la estabilidad y el rendimiento del servicio para todos los usuarios.

Para obtener más información sobre los límites de velocidad para la incrustación automatizada, consulte Límites de velocidad.

cuantización

La cuantización reduce la precisión de las incrustaciones vectoriales para disminuir el uso de memoria y almacenamiento, con la consiguiente pérdida de precisión en la búsqueda. Para la incrustación automatizada, MongoDB Vector Search admite los siguientes tipos de cuantización:

Tipo de cuantificación
Descripción

float

Almacena las incrustaciones vectoriales como valores flotantes de 32bits.

scalar

Reduce cada dimensión del vector de un número flotante de 32bits a un número entero de 8bits.

binary

Reduce cada dimensión del vector a un solo bit y vuelve a puntuar los mejores resultados.

binaryNoRescore

Reduce cada dimensión del vector a un solo bit sin recalcular la puntuación.

Para obtener más información sobre la cuantización para la incrustación automatizada, consulte la sección Acerca de la cuantización.

número de dimensiones

El número de dimensiones especifica la longitud del vector de incrustación para cada documento (cuántos números contiene la matriz). Un mayor número de dimensiones captura más detalles semánticos y, por lo general, mejora la precisión de la recuperación, pero aumenta los costos de almacenamiento y procesamiento (tamaño del índice, uso de RAM y, en ocasiones, latencia).

Para obtener más información, consulte numCandidates Selección.

semejanza

La función de similitud se utiliza para medir la similitud entre dos vectores o la proximidad de un vector de consulta a los vectores del índice. MongoDB Vector Search admite las siguientes funciones de similitud:

  • cosine - mide la similitud basándose en el ángulo entre vectores.

  • dotProduct - Mide la similitud como cosine, pero tiene en cuenta la magnitud del vector. Recomendamos esta función de similitud para la cuantización de fidelidad completa o scalar.

  • euclidean - mide la distancia entre los extremos de los vectores. Recomendamos esta función de similitud para la cuantización binary o binaryNoRescore, donde los vectores están comprimidos y la distancia en el espacio de Hamming o euclidiano es la señal adecuada.

Para obtener más información sobre las funciones de similitud para la incrustación automatizada, consulte la sección Acerca de las funciones de similitud.

Volver

Compatibilidad y limitaciones

Obtén una insignia de habilidad

¡Domina "RAG con MongoDB" gratis!

Más información

En esta página