Este projeto demonstra o uso do Elasticsearch para tarefas de pesquisa vetorial. O notebook Jupyter fornecido, vector_search.ipynb , carrega um modelo de incorporação usando sentence-transformers , cria incorporação para o campo de perguntas e respostas combinado e cria um mecanismo de pesquisa vetorial para pesquisar perguntas do usuário em documentos de perguntas frequentes. Avaliamos os resultados do mecanismo de pesquisa usando a taxa de acerto e a classificação recíproca média (MRR). Por fim, avalie o Elasticsearch, que é mais eficiente, pois usa técnicas aproximadas, em vez de calcular a semelhança com todos os vetores, produzindo resultados idênticos.
Para configurar o projeto, siga estas etapas:
pip install pipenv
pipenv installEm seguida, selecione o ambiente Pipenv no kernel Jupyter.
Para executar o contêiner Elasticsearch Docker, use o seguinte comando:
docker run -it
--rm
--name elasticsearch
-p 9200:9200
-p 9300:9300
-e " discovery.type=single-node "
-e " xpack.security.enabled=false "
docker.elastic.co/elasticsearch/elasticsearch:8.4.3