Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Las bases de datos vectoriales están diseñadas para almacenar y administrar inserciones de vectores. Las inserciones son representaciones numéricas de datos no numéricos que conservan el significado semántico. Puede vectorizar palabras, documentos, imágenes, audio y otros tipos de datos. Use incrustaciones para ayudar a un modelo de IA a comprender el significado de las entradas para que pueda realizar comparaciones y transformaciones, como resumir texto, buscar datos relacionados contextualmente o crear imágenes a partir de descripciones de texto.
Por ejemplo, puede usar una base de datos vectorial para:
- Identifique imágenes, documentos y canciones similares en función de su contenido, temas, sentimientos y estilos.
- Identifique productos similares en función de sus características, funciones y grupos de usuarios.
- Recomiende el contenido, productos o servicios en función de las preferencias del usuario.
- Identifique las mejores opciones posibles de un gran grupo de opciones para cumplir los requisitos complejos.
- Identifique anomalías de datos o actividades fraudulentas que no sean similares a los patrones predominantes o normales.
Descripción del vector de búsqueda
Las bases de datos vectoriales proporcionan capacidades de búsqueda de vectores para encontrar elementos similares según sus características de datos, en lugar de coincidencias exactas en un campo de propiedades. La búsqueda vectorial funciona mediante el análisis de las representaciones vectoriales de los datos que creó mediante un modelo de inserción de IA, como los modelos de inserción de Azure OpenAI. El proceso de búsqueda mide la distancia entre los vectores de datos y el vector de consulta. Los vectores de datos más cercanos al vector de consulta son los más similares semánticamente.
Algunos servicios como Azure Cosmos DB for MongoDB vCore ofrecen capacidades de búsqueda vectorial nativas para tus datos. Otras bases de datos se pueden mejorar con búsquedas vectoriales mediante la indexación de los datos almacenados usando un servicio como Azure AI Search, que puede escanear e indexar tus datos para proporcionar capacidades de búsqueda vectorial.
Flujos de trabajo de búsqueda vectorial con .NET y OpenAI
Las bases de datos vectoriales y sus características de búsqueda son especialmente útiles en los flujos de trabajo de patrones RAG con Azure OpenAI. Este patrón le permite mejorar su modelo de inteligencia artificial con conocimientos adicionales semánticamente ricos de sus datos. Un flujo de trabajo de IA común mediante bases de datos vectoriales incluye estos pasos:
- Cree embeddings para sus datos mediante un modelo de embeddings de OpenAI.
- Almacene e indexe las inserciones en una base de datos de vectores o un servicio de búsqueda.
- Convierta las solicitudes de usuario de tu aplicación en embeddings.
- Ejecute una búsqueda de vectores en los datos, comparando la inserción del usuario con las incrustaciones de la base de datos.
- Use un modelo de lenguaje como GPT-4o para ensamblar una finalización fácil de usar a partir de los resultados de la búsqueda vectorial.
Consulte el tutorial Implementación de Azure OpenAI con RAG mediante el vector de búsqueda en una aplicación .NET para ver un ejemplo práctico de este flujo.
Entre otras ventajas del patrón RAG se incluyen:
- La generación de respuestas contextualmente relevantes y precisas a las solicitudes del usuario a partir de modelos de inteligencia artificial.
- Superar los límites de tokens del LLM: la búsqueda de vectores de la base de datos realiza la mayor parte del trabajo.
- La reducción de los costos del ajuste frecuente de los datos actualizados.