A RAG system for searching and retrieving information from movies data.
Xuve is a command-line tool that allows you to search for movies based on a keyword query. It utilizes a Retrieval-Augmented Generation (RAG) system to provide relevant results from a dataset of movies.
- Keyword-based search for movies.
- Command-line interface for easy interaction.
- Built with Python and the NLTK library.
-
Clone the repository:
git clone https://github.com/xonoxc/xuve.git cd xuve -
Create and activate a virtual environment:
This project recommends using
uvto manage the virtual environment.uv venv source .venv/bin/activateAlternatively, you can use Python's built-in
venvmodule:python3 -m venv .venv source .venv/bin/activate -
Install dependencies:
This project uses
uvfor package management. If you don't have it, install it first (pip install uv).uv sync
To search for movies, use the search command followed by your query:
python -m cli.main search "your query here"python -m cli.main search "a movie about a spy".
├── cli/ # Command-line interface logic
├── config/ # Configuration files
├── data/ # Data files
├── decors/ # Decorators
├── lib/ # Core application logic
│ ├── indexes/
├── typedicts/ # Type definitions
├── .gitignore
├── .python-version
├── pyproject.toml
├── pyrightconfig.json
├── README.md
└── uv.lock
- nltk: The Natural Language Toolkit, used for processing text data.
This project is licensed under the MIT License. See the LICENSE file for details.