Este documento fornece conselhos para solucionar problemas com a Vector Search do MongoDB . Para obter assistência direta com problemas do MongoDB Vector Search, você pode iniciar uma discussão nas comunidades do MongoDB no Reddit ou Stack Overflow, ou entre em contato com o suporte.
Não é possível usar o $vectorSearch estágio no cluster
Para usar o estágio do pipeline $vectorSearch para consultar seu cluster, seu cluster deve executar o MongoDB 7.0.2+. Se você invocar $vectorSearch em uma versão incompatível do MongoDB, poderá ver o seguinte erro:
OperationFailure: $vectorSearch is not allowed with the current configuration. You may need to enable the corresponding feature flag.
Para verificar a versão do MongoDB do seu cluster:
No Atlas, VáGo para a Clusters página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Na barra lateral, clique em Clusters sob o título Database.
A página Clusters é exibida.
Localize o painel de informações do cluster em que você deseja usar o $vectorSearch .
Consulte o número Version na seção inferior do painel de informações.
Se o cluster executar uma versão do MongoDB anterior a 6.0.11 ou 7.0.2, você deve atualizar a versão MongoDB do cluster.
Queries lentas
Para obter recomendações sobre como melhorar o desempenho da query, consulte Benchmark for MongoDB Vector Search.
$vectorSearch não retorna resultados
Se $vectorSearch queries não retornarem resultados, execute as seguintes ações:
Certifique-se de que está a utilizar o mesmo modelo de incorporação para os seus dados e para a sua query. Se você incorporar sua query usando um modelo diferente do que usa para incorporar seus dados,
$vectorSearchnão conseguirá identificar as correspondências.Certifique-se de que sua Vector Search do MongoDB tenha terminado de ser construída. Quando você cria ou atualiza um índice do MongoDB Vector Search, o índice do índice está em um estado de sincronização inicial. Quando terminar de ser criado, você poderá começar a consultar os dados em sua coleção.
Error during document retrieval ao usar filtragem com LangChain
Ao usar o LangChain para executar o RAG com pré-filtragem, você pode encontrar o seguinte erro:
Error during the document retrieval or generation process: MongoServerError: PlanExecutor error during aggregation :: caused by :: Path 'field' needs to be indexed as token
Se houver um índice field no, certifique-se de ter criado esse índice como um índice do MongoDB Vector Search , e não um índice do MongoDB Search. Se não field existirnenhum índice em, crie um. Para saber mais sobre a implementação do RAG com o MongoDB Vector Search e o LangChain, consulte Responder a perguntas sobre seus dados.
Command not found ao criar o índice do MongoDB Vector Search
Ao tentar criar um índice do MongoDB Vector Search programaticamente, você pode encontrar um erro Command not found. Esse erro ocorre por um dos dois motivos:
Você executa o comando em um cluster executando uma versão do MongoDB anterior a 6.0.11 ou 7.0.2. Nesse caso, você deve atualizar a versão do MongoDB do cluster para habilitar a Vector Search do MongoDB para o cluster.
Você executa o comando em um cluster de camada grátis do
M0. Nesse caso, desde que o cluster esteja executando uma versão compatível do MongoDB, você pode criar um índice do MongoDB Vector Search com a UI do Atlas.
Não foi possível filtrar em um determinado campo
Atualmente, a Vector Search do MongoDB suporta filtragem apenas em campos com valores booleanos, data, número, ObjectId, string e UUID. Para saber mais, consulte Sobre o tipo filter.