¡Mejora integralmente la calidad de RAG! Zilliz se une a Zhiyuan para integrar Sparse Embedding y Reranke

¡Zilliz continúa capacitando a los desarrolladores de aplicaciones de IA!

Recientemente, Zilliz ha llegado a una cooperación con el Instituto de Investigación Zhiyuan para integrar varios modelos de código abierto BGE (BAAI General Embedding) con la base de datos de vectores de código abierto Milvus. Gracias al soporte Sparse Vector (vector disperso) y Multi-vector (multi-vector) recientemente lanzado en Milvus 2.4, los desarrolladores tienen una variedad de opciones, que incluyen no solo el Dense Embedding (modelo de vector denso) ampliamente utilizado en la industria, sino también también el uso de BGE Los modelos Sparse Embedding (modelo de recuperación dispersa) y Reranker (reordenamiento) recientemente lanzados. Los desarrolladores pueden combinar fácilmente estas herramientas para crear una solución de recuperación más poderosa, que cubra la recuperación semántica, la recuperación de texto completo y capacidades de clasificación refinadas.

La integración de BGE y Milvus mejora integralmente la calidad de RAG al tiempo que mantiene la flexibilidad y puede servir mejor a los desarrolladores de aplicaciones de IA.

01.Sparse Embedding and Reranker: Nuevas tendencias para mejorar RAG

RAG (Retrieval Augmented Generation) es una tecnología que utiliza información recuperada de bases de conocimiento externas para mejorar la precisión y confiabilidad de grandes modelos de lenguaje. Se ha demostrado que RAG puede resolver eficazmente una serie de problemas centrales que dificultan la aplicación de modelos grandes (como alucinaciones, falta de puntualidad, conocimiento insuficiente del dominio profesional, problemas de seguridad de los datos, etc.). La incorporación de modelos y bases de datos vectoriales es la clave para implementar esta solución. Mejores modelos y bases de datos vectoriales con funciones más ricas pueden mejorar efectivamente la calidad de las respuestas RAG y ayudar a los modelos de lenguaje grandes a lograr una mejor experiencia de preguntas y respuestas en el terminal.

Sin embargo, debido a las limitaciones de los esquemas básicos de incrustación densa y recuperación de vectores, el efecto final de RAG no es satisfactorio en algunos escenarios. En la actualidad, la industria tiende a adoptar dos soluciones para mejorar la calidad de las preguntas y respuestas de RAG:

La primera opción es utilizar Sparse Vector y Dense Vector para realizar una recuperación bidireccional. Entre ellos, Sparse Vector puede cubrir las capacidades de la búsqueda tradicional de texto completo y ayudar a identificar y capturar palabras clave específicas, mientras que Dense Vector puede capturar de manera más efectiva la información semántica general del texto. Al integrar los resultados de estos dos retiros de vectores, se puede obtener información más rica y completa, mejorando así la efectividad de RAG.

Opción dos: utilizar Cross-Encoder Reranker como segunda capa de clasificación fina. Primero, use Dense Vector, Sparse Vector o una combinación de los dos para una clasificación aproximada; luego use el modelo Reranker para filtrar y ordenar aún más los resultados de la primera etapa para mejorar la calidad de los resultados finales.

Vale la pena señalar que la opción uno se puede usar de forma independiente, es decir, usar un algoritmo basado en reglas para fusionar los resultados de la recuperación bidireccional, como la fusión de rango recíproco (RRF) RRF comúnmente utilizada, o se puede usar en combinación con la opción dos, es decir, usar Cross-Encoder Reranker Merge y reordenar los resultados bidireccionales.

02.Milvus se une a BGE para resolver de manera flexible los problemas de calidad de RAG

Milvus es una base de datos de vectores de código abierto para aplicaciones de inteligencia artificial, que sirve para búsqueda de vectores y gestión de datos no estructurados. Fue lanzado originalmente por la empresa Zilliz y de código abierto en 2019. Desde su lanzamiento, Milvus se ha vuelto popular y ampliamente adoptado entre la comunidad de desarrolladores de IA y usuarios empresariales. Con más de 26.000 estrellas y más de 260 colaboradores en GitHub, Milvus se ha descargado e instalado más de 20 millones de veces en todo el mundo, convirtiéndose en un. Una de las bases de datos vectoriales más utilizadas en el mundo.

No hace mucho, el fundador y director ejecutivo de Zilliz, Xingjue, lanzó oficialmente la versión Milvus 2.4 en la conferencia NVIDIA GTC, que puede considerarse una actualización revolucionaria en la industria. Además de las muy discutidas capacidades de aceleración de búsqueda e indexación de vectores basadas en GPU, la compatibilidad con Sparse Vector y Multi-Vector también es un punto destacado. La integración de Milvus y Zhiyuan BGE no solo reúne las capacidades Sparse Embedding, recuperación multicanal y Reranker necesarias para mejorar la calidad de RAG al mismo tiempo, sino que también proporciona a los desarrolladores múltiples tipos y soluciones de recuperación multinivel para ayudar a los desarrolladores de acuerdo con las necesidades reales. necesidades. Cree aplicaciones de IA de forma flexible.

El BGE desarrollado conjuntamente con Milvus esta vez es un modelo semántico universal creado por el Intelligent Source Research Institute. Desde su primer lanzamiento en agosto de 2023, el equipo de Zhiyuan ha lanzado sucesivamente los modelos BGE v1.0, v1.5 en chino e inglés y el modelo BGE-M3 que admite más de 100 idiomas y múltiples métodos de recuperación. Hasta ahora, los modelos de la serie BGE se han descargado más de 15 millones de veces en todo el mundo, ocupando el primer lugar entre los modelos nacionales de IA de código abierto. El modelo BGE-M3 alguna vez estuvo entre los tres modelos más populares de Hugging Face. En el último cliente Milvus 2.4, se proporciona una encapsulación de funciones simple y fácil de usar para el modelo BGE. Los desarrolladores pueden utilizar más fácilmente una variedad de modelos de código abierto BGE y cooperar con la base de datos vectorial Milvus para crear soluciones de recuperación multicanal y multinivel para mejorar integralmente la calidad de RAG. Los modelos de código abierto de BGE que se han integrado hasta ahora incluyen:

Modelo de incrustación

  • BAAI/bge-m3

  • BAAI/bge-large-es-v1.5

  • BAI/bge-base-es-v1.5

  • BAY/bge-small-es-v1.5

  • BAAI/bge-grande-zh-v1.5

  • BAAI/bge-base-zh-v1.5

  • BAAI/bge-small-zh-v1.5

Modelo reclasificador

  • BAAI/bge-reranker-v2-m3

  • BAAI/bge-reanchor-grande

  • BAAI/bge-reranker-base

03. Visualización de muestra de código

A partir de la versión 2.4, el cliente Milvus Python ha agregado el componente pymilvus [modelo], ya sea Sparse Vector combinado con la recuperación multidireccional de Dense Vector o usando Cross-Encoder Reranker para mejorar la relevancia de la primera capa de recuperación. Todos los modelos proporcionados por Milvus Components pueden admitirse de manera flexible.

Por ejemplo, simplemente pip install pymilvus[modelo], puede usar fácilmente el vector denso generado por el modelo BGE-M3 para realizar una búsqueda vectorial del vecino más cercano y usar el modelo BGE Reranker para refinar los resultados:

from pymilvus.model.hybrid import BGEM3EmbeddingFunction
from pymilvus.model.reranker import BGERerankFunction

client = MilvusClient(uri="http://localhost:19530")
embed_fn = BGEM3EmbeddingFunction(device='cuda:0')
rerank_fn = BGERerankFunction(device="cuda:0")
query = "tell me information about France."
query_vector = [embed_fn([query])["dense"][0]]
# Search for top 20 nearest neighbour vectors
retrieved_results = client.search(collection_name="my_collection", data=query_vector, limit=20, output_fields=["text"])
# Rerank the vector search results and select the top 5
final_results = rerank_fn(query, [result['entity']['text'] for result in retrieved_results[0]], top_k=5)

Además, se pueden ver más casos en el enlace ( https://github.com/milvus-io/pymilvus/blob/master/examples/hello_hybrid_sparse_dense.py ).

04.Perspectivas futuras

Como líder en la industria de bases de datos vectoriales, Zilliz ha cooperado con el Instituto de Investigación Zhiyuan, líder en la industria, para respaldar una variedad de soluciones de recuperación basadas en el modelo BGE de código abierto y la base de datos vectorial Milvus, integrando el soporte de Sparse Embedding y Reranker, que Muy conveniente para los desarrolladores de RAG.

Chen Jiang, jefe de la plataforma de inteligencia artificial e integración ecológica de Zilliz, dijo: "En el futuro, Milvus continuará cooperando en profundidad con Zhiyuan en la investigación de modelos, la promoción de desarrolladores y otros aspectos para ayudar a popularizar y mejorar aún más las aplicaciones de inteligencia artificial".

El jefe del equipo de BGE en el Instituto de Investigación Zhiyuan dijo: “La integración de BGE y Milvus brinda a los usuarios de la comunidad la capacidad de construir rápidamente un canal de recuperación de “trinidad” (recuperación densa, recuperación dispersa y reordenamiento) de gran conveniencia. En el futuro, esperamos seguir cooperando con empresas líderes de la industria como Zilliz para empoderar conjuntamente a los desarrolladores de aplicaciones de IA. "

Leer el artículo original


  • ¡Buenas noticias, la comunidad Milvus está buscando el " Beichen Messenger " en toda la red! ! !​
  • Si tiene algún problema al utilizar los productos Milvus o Zilliz, puede agregar el asistente WeChat "zilliz-tech" para unirse al grupo de comunicación.​
  • Bienvenido a seguir la cuenta pública de WeChat "Zilliz" para conocer la información más reciente.
Decidí renunciar al software industrial de código abierto. Eventos importantes: se lanzó OGG 1.0, Huawei contribuyó con todo el código fuente y se lanzó oficialmente Ubuntu 24.04. El equipo de la Fundación Google Python fue despedido por la "montaña de código de mierda" . ". Se lanzó oficialmente Fedora Linux 40. Una conocida compañía de juegos lanzó Nuevas regulaciones: los obsequios de boda de los empleados no deben exceder los 100.000 yuanes. China Unicom lanza la primera versión china Llama3 8B del mundo del modelo de código abierto. Pinduoduo es sentenciado a compensar 5 millones de yuanes por competencia desleal. Método de entrada en la nube nacional: solo Huawei no tiene problemas de seguridad para cargar datos en la nube.
{{o.nombre}}
{{m.nombre}}

Supongo que te gusta

Origin my.oschina.net/u/4209276/blog/11063572
Recomendado
Clasificación