Melhorar de forma abrangente a qualidade do RAG! Zilliz se une a Zhiyuan para integrar vários modelos de código aberto BGE, como Sparse Embedding e Reranker


Zilliz continua capacitando desenvolvedores de aplicativos de IA!


Recentemente, a Zilliz firmou uma cooperação com o Zhiyuan Research Institute para integrar vários modelos de código aberto BGE ( BAAI General Embedding ) com o banco de dados vetorial de código aberto Milvus.Graças ao suporte recém-lançado Sparse Vector (vetor esparso) e Multi-vetor (multivetor) no Milvus 2.4, os desenvolvedores têm uma variedade de opções, não apenas a cama Dense Em (modelo de vetor denso) amplamente utilizada na indústria, mas também o uso dos mais recentes modelos Sparse Embedding (modelo de recuperação esparsa) e Reranker (reclassificação) da BGE. Os desenvolvedores podem combinar facilmente essas ferramentas para criar uma solução de recall mais poderosa, abrangendo recuperação semântica, recuperação de texto completo e recursos de classificação refinados.


A integração do BGE e do Milvus melhora de forma abrangente a qualidade do RAG, ao mesmo tempo que mantém a flexibilidade e pode atender melhor aos desenvolvedores de aplicações de IA.



01.

Incorporação esparsa e reclassificação: novas tendências para melhorar o RAG


RAG (Retrieval Augmented Generation) é uma tecnologia que utiliza informações recuperadas de bases de conhecimento externas para aumentar a precisão e a confiabilidade de grandes modelos de linguagem. Foi comprovado que o RAG é capaz de resolver com eficácia uma série de problemas centrais que dificultam a aplicação de grandes modelos (como alucinações, falta de pontualidade, conhecimento insuficiente do domínio profissional, problemas de segurança de dados, etc.) . A incorporação de modelos e bancos de dados vetoriais é a chave para concretizar esta solução. Melhores modelos e bancos de dados vetoriais com funções mais ricas podem efetivamente melhorar a qualidade das respostas RAG e ajudar grandes modelos de linguagem a obter uma melhor experiência de perguntas e respostas de terminal.


No entanto, devido às limitações dos esquemas básicos de incorporação densa e de recuperação de vetores, o efeito final do RAG não é satisfatório em alguns cenários . Atualmente, a indústria tende a adotar duas soluções para melhorar a qualidade das perguntas e respostas do RAG:


A primeira opção é usar vetor esparso e vetor denso para realizar recuperação bidirecional. Entre eles, o Sparse Vector pode cobrir os recursos da pesquisa tradicional de texto completo e ajudar a identificar e capturar palavras-chave específicas, enquanto o Dense Vector pode capturar de forma mais eficaz as informações semânticas gerais do texto. Ao integrar os resultados destas duas recolhas de vetores, podem ser obtidas informações mais ricas e abrangentes, melhorando assim a eficácia do RAG.


Opção dois , use o Cross-Encoder Reranker como a segunda camada de classificação precisa. Primeiro, use Dense Vector, Sparse Vector ou uma combinação dos dois para classificação aproximada e, em seguida, use o modelo Reranker para filtrar e classificar ainda mais os resultados do primeiro estágio para melhorar a qualidade dos resultados finais;


Vale a pena notar que a opção um pode ser usada de forma independente, ou seja, usando um algoritmo baseado em regras para mesclar os resultados da recuperação bidirecional, como o RRF Reciprocal Rank Fusion (RRF) comumente usado, ou pode ser usado em combinação com a opção dois, ou seja, usar Cross-Encoder Reranker Merge e reordenar os resultados bidirecionais.


02.

Milvus se une à BGE para resolver com flexibilidade os problemas de qualidade da RAG


Milvus é um banco de dados vetorial de código aberto para aplicações de IA, servindo pesquisa vetorial e gerenciamento de dados não estruturados. Foi originalmente lançado pela Zilliz Company e de código aberto em 2019. Desde o seu lançamento, Milvus se tornou popular e amplamente adotado entre a comunidade de desenvolvedores de IA e usuários corporativos. Com mais de 26.000 estrelas e mais de 260 colaboradores no GitHub , Milvus foi baixado e instalado mais de 20 milhões de vezes em todo o mundo , tornando-se um. Um dos bancos de dados vetoriais mais utilizados no mundo.


Não muito tempo atrás, o fundador e CEO da Zilliz, Xingjue, lançou oficialmente a versão Milvus 2.4 na conferência NVIDIA GTC, que pode ser considerada uma atualização revolucionária na indústria. Além dos muito discutidos recursos de indexação de vetores baseados em GPU e aceleração de pesquisa, o suporte para vetores esparsos e multivetoriais também é um destaque. A integração de Milvus e Zhiyuan BGE não apenas reúne os recursos de incorporação esparsa, recall multicanal e reranker necessários para melhorar a qualidade do RAG de uma só vez, mas também fornece aos desenvolvedores vários tipos e soluções de recall multinível para ajudar os desenvolvedores de acordo com o real necessidades. Crie aplicativos de IA com flexibilidade.


O BGE desenvolvido em conjunto com Milvus desta vez é um modelo semântico universal criado pelo Intelligent Source Research Institute. Desde seu primeiro lançamento em agosto de 2023, a equipe Zhiyuan lançou sucessivamente os modelos BGE v1.0, v1.5 em chinês e inglês e o modelo BGE-M3 que suporta mais de 100 idiomas e vários métodos de recall. Até agora, os modelos da série BGE foram baixados mais de 15 milhões de vezes em todo o mundo, ocupando o primeiro lugar entre os modelos domésticos de IA de código aberto. O modelo BGE-M3 já foi classificado entre os três modelos mais populares do Hugging Face. No cliente Milvus 2.4 mais recente, é fornecido um encapsulamento de função simples e fácil de usar para o modelo BGE. Os desenvolvedores podem usar mais facilmente uma variedade de modelos de código aberto BGE e cooperar com o banco de dados vetorial Milvus para construir soluções de recall multicanal e multinível para melhorar de forma abrangente a qualidade do RAG. Os modelos de código aberto BGE que foram integrados até agora incluem:


  • Modelo de incorporação


  • BAAI/bge-m3

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

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

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

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

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

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


  • Modelo de reclassificação


  • BAAI/bge-reranker-v2-m3

  • BAAI/bge-reanchor-grande

  • BAAI/bge-reclassificador-base


03.

Exibição de amostra de código


A partir da versão 2.4, o cliente Milvus Python adicionou novos  pymilvus[model]componentes, seja Sparse Vector combinado com o recall multidirecional do Dense Vector ou usando Cross-Encoder Reranker para melhorar a relevância do recall de primeiro nível, os componentes do modelo fornecidos por. Milvus são suportes de solo flexíveis.


Por exemplo, pip install pymilvus[model]você pode facilmente usar o vetor denso gerado pelo modelo BGE-M3 para realizar a pesquisa vetorial do vizinho mais próximo e usar o modelo BGE Reranker para refinar os 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)

Além disso, mais casos podem ser visualizados no link (https://github.com/milvus-io/pymilvus/blob/master/examples/hello_hybrid_sparse_dense.py).


04.

未来展望


Zilliz 作为向量数据库行业的引领者,此次与业界领先的智源研究院合作,支持基于开源 BGE 模型和 Milvus 向量数据库的多种召回方案,集成了两者对 Sparse Embedding 和 Reranker 的支持,极大地便利了 RAG 开发者。


Zilliz 生态集成和 AI 平台负责人陈将表示:“未来,Milvus 将持续与智源在模型研究、开发者推广等方面深度合作,助力 AI 应用的进一步普及和提升。”


智源研究院 BGE 团队负责人表示:“ 智源研究院 BGE 负责人表示:“ BGE 和 Milvus 的集成,为社区用户快速搭建“三位一体的”(稠密检索、稀疏检索、重排序)检索流水线带来的极大便利。未来期待与像 Zilliz 这样行业优秀的企业进一步合作,共同为 AI 应用开发者赋能。”


推荐阅读


本文分享自微信公众号 - ZILLIZ(Zilliztech)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

90后程序员开发视频搬运软件、不到一年获利超 700 万,结局很刑! 高中生自创开源编程语言作为成人礼——网友锐评:依托答辩 RustDesk 由于诈骗猖獗,暂停国内服务 淘宝 (taobao.com) 重启网页版优化工作 Java 17 是最常用的 Java LTS 版本 Windows 10 市场份额达 70%,Windows 11 持续下滑 开源日报 | 谷歌扶持鸿蒙上位;开源Rabbit R1;Docker加持的安卓手机;微软的焦虑和野心;海尔电器把开放平台关了 Apple 发布 M4 芯片 谷歌删除 Android 通用内核 (ACK) 对 RISC-V 架构的支持 云风从阿里离职,未来计划制作 Windows 平台的独立游戏
{{o.name}}
{{m.name}}

Acho que você gosta

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