Melhorar de forma abrangente a qualidade do RAG! Zilliz se une a Zhiyuan para integrar Sparse Embedding e Reranke

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, incluindo não apenas o Dense Embedding (modelo de vetor denso) amplamente utilizado na indústria, mas também o uso de BGE Os recém-lançados modelos Sparse Embedding (modelo de recuperação esparsa) e Reranker (reordenação). Os desenvolvedores podem combinar facilmente essas ferramentas para criar uma solução de recuperação 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 na melhoria do 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 profissional insuficiente do domínio, 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, usar 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 empresa Zilliz e de código aberto em 2019. Desde o seu lançamento, o 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, o 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 de vetores 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 o componente pymilvus[model] Seja Sparse Vector combinado com o recall multidirecional do Dense Vector ou usando Cross-Encoder Reranker para melhorar a relevância da primeira camada de recall, o. Os modelos fornecidos pela Milvus Components podem ser suportados de forma flexível.

Por exemplo, apenas pip install pymilvus[model], você pode facilmente usar o Dense Vector gerado pelo modelo BGE-M3 para realizar a pesquisa do vizinho mais próximo do vetor 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. Perspectivas Futuras

Como líder no setor de bancos de dados vetoriais, a Zilliz cooperou com o Zhiyuan Research Institute, líder do setor, para oferecer suporte a uma variedade de soluções de recall baseadas no modelo BGE de código aberto e no banco de dados vetorial Milvus, integrando o suporte de Sparse Embedding e Reranker, que muito conveniente para desenvolvedores RAG.

Chen Jiang, chefe da integração ecológica e plataforma de IA da Zilliz, disse: "No futuro, Milvus continuará a cooperar profundamente com Zhiyuan na pesquisa de modelos, promoção de desenvolvedores e outros aspectos para ajudar a popularizar e melhorar ainda mais as aplicações de IA".

O chefe da equipe BGE do Zhiyuan Research Institute disse: “A integração do BGE e do Milvus oferece aos usuários da comunidade a capacidade de construir rapidamente um pipeline de recuperação de “trindade” (recuperação densa, recuperação esparsa e reordenamento). No futuro, esperamos continuar a cooperar com empresas líderes do setor, como a Zilliz, para capacitar conjuntamente os desenvolvedores de aplicações de IA. "

Leia o artigo original


  • Boas notícias, a comunidade Milvus está procurando o " Beichen Messenger " em toda a rede! ! !​
  • Se você tiver algum problema ao usar os produtos Milvus ou Zilliz, você pode adicionar o assistente WeChat "zilliz-tech" para ingressar no grupo de comunicação.​
  • Bem-vindo a seguir a conta pública do WeChat "Zilliz" para obter as informações mais recentes.
Decidi desistir do software industrial de código aberto . Grandes eventos - OGG 1.0 foi lançado, a Huawei contribuiu com todo o código-fonte do Ubuntu 24.04 LTS foi oficialmente demitido . ". O Fedora Linux 40 foi lançado oficialmente. Uma conhecida empresa de jogos lançou novos regulamentos: os presentes de casamento dos funcionários não devem exceder 100.000 yuans. A China Unicom lança a primeira versão chinesa Llama3 8B do mundo do modelo de código aberto. Pinduoduo é condenado a compensar 5 milhões de yuans por concorrência desleal Método de entrada na nuvem doméstica - apenas a Huawei não tem problemas de segurança de upload de dados na nuvem.
{{o.nome}}
{{m.nome}}

Acho que você gosta

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