Este projeto rápido foi construído como parte de uma palestra sobre pesquisa semântica para demonstrar a diferença entre a pesquisa de palavras -chave tradicional e a pesquisa semântica no contexto dos filmes. O objetivo é mostrar como a pesquisa semântica pode fornecer resultados mais relevantes e precisos em comparação com a pesquisa simples baseada em palavras-chave, que a maioria dos sites como o IMDB oferece.
Siga estas instruções para configurá -lo localmente.
Clone o repositório.
Instale os pacotes necessários nos diretórios do cliente e do servidor:
npm installConfigure o banco de dados do filme:
Execute o aplicativo no Docker com docker compose :
docker compose up Adicione as seguintes variáveis de ambiente em um arquivo .env no diretório do servidor.
MONGO_DB_URI =
CHROMA_DB_URI = http://localhost:8000
CHROMA_DB_CREDENTIALS =
CHROMA_DB_AUTH_PROVIDER = chromadb.auth.token_authn.TokenAuthenticationServerProvider Acionar a API /api/movies/feed para criar incorporações vetoriais do conjunto de dados do filme. (Sinta -se à vontade para pesquisar e ajustar a variável BATCH_SIZE para criação de incorporação em lote De acordo com suas especificações, eu a defina para 100 em um MacBook Pro M1 16GB)
Teste o aplicativo.
http://localhost:3030 .Boring Search e Cool Search para ver a diferença nos resultados. Sinta -se à vontade para aumentar um PR! Sua ajuda é apreciada. Siga estas etapas para contribuir:
git checkout -b feature/YourFeature ).git commit -m 'Add some feature' ).git push origin feature/YourFeature ).Se você tiver alguma dúvida ou feedback, sinta -se à vontade para abrir um problema.
Feliz pesquisa!