Discover and explore top open-source AI tools and projects—updated daily.
veekaybeeSemantic search engine for book recommendations
Top 69.0% on SourcePulse
Viberary addresses the challenge of book recommendation by moving beyond traditional genre or title-based filtering. It offers a semantic search engine that recommends books based on descriptive "vibes" provided by the user, leveraging learned embeddings from Goodreads data. This approach benefits users seeking nuanced book discovery beyond conventional methods.
How It Works
Viberary employs a two-tower semantic retrieval model, utilizing Sentence Transformers' MSMarco model to encode queries and book data. Embeddings are learned from Goodreads book metadata, with training data generated locally in DuckDB. For efficient, low-latency inference, the model is converted to ONNX format. Corpus embeddings are generated on AWS P3 instances and stored in Redis, enabling retrieval via the Redis Search module using the HNSW algorithm. Results are served through a Flask API, powered by Gunicorn, with a Bootstrap front-end, deployed as a Dockerized application.
Quick Start & Requirements
To run Viberary, fork/clone the repository. Download the model artifacts from https://github.com/veekaybee/viberary_model and the corpus embeddings file. If starting from training data, generate the ONNX model artifact using make onnx. Build the Docker image with make build. Launch the application using Docker Compose with make up-arm (for ARM systems) or make up-intel (for Intel systems). Finally, index the embeddings with make embed. The web server is accessible at localhost:8000. Key prerequisites include Docker, the model artifacts, and corpus embeddings.
Highlighted Details
Maintenance & Community
Viberary is currently in maintenance mode. Further details are available on the project's website (viberary.pizza). No specific community channels or contributor information are detailed in the provided README.
Licensing & Compatibility
The provided README does not specify a software license.
Limitations & Caveats
The project is in maintenance mode, indicating limited active development. The README notes that the API is slated for a future rewrite in Go to improve performance. Setup requires manual downloading of model artifacts and corpus embeddings, along with executing multiple make commands and managing Docker containers.
1 year ago
Inactive
 Shengjia Zhao(Chief Scientist at Meta Superintelligence Lab), 
google
grahamjenson
google-research
triton-inference-server
tensorflow