¿Qué es una base de datos vectorial?

La información se presenta de muchas formas. Parte de la información no está estructurada (como los documentos de texto, los archivos multimedia enriquecidos y el audio) y otra parte está estructurada (como los registros de aplicaciones, las tablas y los gráficos). Las innovaciones en inteligencia artificial y aprendizaje automático (artificial intelligence and machine learning, AI/ML) nos han permitido crear un tipo de modelo de ML: modelos de incrustación. Las incrustaciones codifican todos los tipos de datos en vectores que capturan el significado y el contexto de un activo. Esto nos permite encontrar activos similares mediante la búsqueda de puntos de datos vecinos. Los métodos de búsqueda vectorial permiten experiencias únicas, como tomar una fotografía con el smartphone y buscar imágenes similares. 

Las bases de datos vectoriales proporcionan la capacidad de almacenar y recuperar vectores como puntos de alta dimensión. Añaden capacidades adicionales para la búsqueda eficiente y rápida de los vecinos más cercanos en el espacio N-dimensional. Por lo general, se basan en índices de k vecinos más cercanos (k-nearest neighbor, k-NN) y se crean con algoritmos como los algoritmos Hierarchical Navigable Small World (HNSW) e Inverted File Index (IVF). Las bases de datos vectoriales proporcionan capacidades adicionales (como la gestión de datos, la tolerancia a errores, la autenticación y el control de acceso) y un motor de consultas. 

¿Cómo se usan las bases de datos vectoriales?

Las bases de datos vectoriales se utilizan normalmente para impulsar casos de uso de búsquedas vectoriales, como la búsqueda visual, semántica y multimodal. Más recientemente, se han combinado con modelos de texto de inteligencia artificial (IA) generativa para crear agentes inteligentes que proporcionan experiencias de búsqueda conversacional. También pueden evitar que los modelos de IA generativa tengan alucinaciones, lo que puede provocar que los chatbots proporcionen respuestas no fácticas pero creíbles.

El proceso de desarrollo comienza con la creación de un modelo de incrustación diseñado para codificar imágenes de productos similares a un corpus en vectores. El proceso de importación de datos también se denomina hidratación de datos. El desarrollador de la aplicación ahora puede usar la base de datos para buscar productos similares codificando una imagen del producto y utilizando el vector para buscar imágenes similares.

Dentro del modelo, los índices de k vecino más cercano (k-nearest neighbor, k-NN) proporcionan una recuperación eficiente de los vectores y aplican una función de distancia como el coseno para clasificar los resultados por similitud. 

¿Por qué son importantes las bases de datos vectoriales?

Sus desarrolladores pueden indexar los vectores generados por las incrustaciones en una base de datos vectorial. Esto les permite encontrar activos similares consultando vectores vecinos.

Las bases de datos vectoriales proporcionan un método para hacer operativos los modelos de incrustación. El desarrollo de aplicaciones es más productivo con capacidades de base de datos como la gestión de recursos, los controles de seguridad, la escalabilidad, la tolerancia a errores y la recuperación eficiente de la información mediante lenguajes de consulta sofisticados.

En última instancia, las bases de datos vectoriales permiten a los desarrolladores crear experiencias de aplicaciones únicas. Por ejemplo, los usuarios pueden tomar fotografías en sus smartphones para buscar imágenes similares. 

Los desarrolladores pueden usar otros tipos de modelos de aprendizaje automático para automatizar la extracción de metadatos a partir de contenidos como imágenes y documentos escaneados. Pueden indexar metadatos junto con vectores para permitir la búsqueda híbrida tanto en palabras clave como en vectores. También pueden fusionar la comprensión semántica con el ranking de relevancia para mejorar los resultados de búsqueda.

Las innovaciones en la inteligencia artificial (IA) generativa han introducido nuevos tipos de modelos, como ChatGPT, que pueden generar texto y gestionar conversaciones complejas con humanos. Algunos pueden funcionar en múltiples modalidades; por ejemplo, algunos modelos permiten a los usuarios describir un paisaje y generar una imagen que se ajuste a la descripción.

Sin embargo, los modelos generativos son propensos a las alucinaciones, lo que podría, por ejemplo, provocar que un chatbot engañe a los usuarios. Las bases de datos vectoriales pueden complementar los modelos de IA generativa. Pueden proporcionar una base de conocimientos externa para los chatbots con IA generativa y ayudar a garantizar que proporcionen información confiable. 

¿Quién usa las bases de datos vectoriales?

Las bases de datos vectoriales son para desarrolladores que desean crear experiencias basadas en búsquedas vectoriales. Un desarrollador de aplicaciones puede usar modelos de código abierto, herramientas de aprendizaje automático (ML) automatizado y servicios de modelos básicos para generar incrustaciones e hidratar una base de datos vectorial. Esto requiere una experiencia mínima en ML.

Un equipo de científicos e ingenieros de datos puede crear incrustaciones ajustadas por expertos y ponerlas en funcionamiento a través de una base de datos vectorial. Esto puede ayudarlos a ofrecer una solución de inteligencia artificial (IA) con mayor rapidez.

Los equipos de operaciones se benefician de la gestión de las soluciones como cargas de trabajo de bases de datos conocidas. Pueden utilizar las herramientas y los manuales de estrategias existentes.

¿Cuáles son los beneficios de las bases de datos vectoriales?

Las bases de datos vectoriales permiten a los desarrolladores innovar y crear experiencias únicas impulsadas por la búsqueda vectorial. Pueden acelerar el desarrollo de aplicaciones de inteligencia artificial (IA) y simplificar la operacionalización de las cargas de trabajo de aplicaciones impulsadas por la IA.

Las bases de datos vectoriales ofrecen una alternativa a la creación sobre índices simples de k vecinos más cercanos (K-nn). Ese tipo de índice requiere una gran cantidad de experiencia e ingeniería adicionales para su uso, ajuste y puesta en funcionamiento.

Una buena base de datos vectorial proporciona a las aplicaciones una base mediante funciones como la gestión de datos, la tolerancia a errores, las funciones de seguridad críticas y un motor de consultas. Estas capacidades permiten a los usuarios poner en funcionamiento sus cargas de trabajo para simplificar el escalado, mantener una alta escalabilidad y cumplir con los requisitos de seguridad.

Capacidades como el motor de consultas y los SDK simplifican el desarrollo de aplicaciones. También permiten a los desarrolladores realizar consultas más avanzadas (como buscar y filtrar) en los metadatos como parte de una búsqueda de K-nn. También tienen la opción de utilizar modelos híbridos de puntuación de relevancia que combinan modelos de frecuencia terminológica tradicionales, como el BM25, con puntuaciones vectoriales para mejorar la recuperación de información.

¿Cuáles son los desafíos de las bases de datos vectoriales?

Las bases de datos vectoriales comparten muchos de los mismos desafíos a los que se enfrentan otras tecnologías de bases de datos. Habrá un esfuerzo continuo para mejorar la escalabilidad, la precisión de la aproximación, el rendimiento de la latencia y la economía.

Al tratarse de una tecnología relativamente incipiente, muchas bases de datos vectoriales necesitan desarrollar competencias básicas de bases de datos, como la seguridad, la resiliencia, el soporte operativo y la diversificación del soporte de la carga de trabajo. Esto será importante a medida que las aplicaciones de inteligencia artificial (IA) vayan madurando y requieran algo más que una simple búsqueda vectorial. 

¿Cómo puede AWS cumplir con los requisitos de su base de datos vectorial?

Amazon Web Services (AWS) ofrece muchos servicios para sus requisitos de bases de datos vectoriales:

Cree una cuenta hoy mismo para comenzar a utilizar las bases de datos vectoriales en AWS.

Siguientes pasos con AWS

Descubra otros recursos relacionados con el producto
Vea ofertas gratuitas de servicios de bases de datos en la nube 
Regístrese para obtener una cuenta gratuita

Obtenga acceso instantáneo al nivel Gratuito de AWS.

Regístrese 
Comenzar a crear en la consola

Comience a crear en la consola de administración de AWS.

Iniciar sesión