https://github.com/nlqthinh/weaviateanime
Explore your favorite anime with this interactive search app! 🚀 This project leverages Weaviate for vector search and Gradio for a seamless user interface. Using embeddings from a custom anime dataset, you can perform quick and accurate similarity searches for anime titles
https://github.com/nlqthinh/weaviateanime
anime docker gradio preprocessing-data python vectordb weaviate
Last synced: 23 days ago
JSON representation
Explore your favorite anime with this interactive search app! 🚀 This project leverages Weaviate for vector search and Gradio for a seamless user interface. Using embeddings from a custom anime dataset, you can perform quick and accurate similarity searches for anime titles
- Host: GitHub
- URL: https://github.com/nlqthinh/weaviateanime
- Owner: nlqthinh
- Created: 2025-02-20T15:03:42.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-02-26T09:13:35.000Z (11 months ago)
- Last Synced: 2025-03-13T03:17:44.135Z (10 months ago)
- Topics: anime, docker, gradio, preprocessing-data, python, vectordb, weaviate
- Language: Python
- Homepage:
- Size: 8.87 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Anime Search App Using Weaviate and Gradio

This project demonstrates how to build a simple anime search application using **Weaviate** for vector search and **Gradio** for creating an interactive UI. The app allows users to search for anime using embeddings stored in a Weaviate database.
---
## Prerequisites
Before getting started, ensure you have the following installed on your system:
- Python (3.10.6)
- Docker and Docker Compose
---
## Installation
Follow these steps to set up and run the application:
### 1. Install Required Python Libraries
Run the following command to install the necessary Python dependencies:
```bash
pip install weaviate-client pandas
```
### 2. Start Weaviate Using Docker
Use Docker Compose to spin up a Weaviate instance:
```bash
docker-compose up -d
```
This will start a local Weaviate server that will store and manage the anime data.
### 3. Preprocess the Dataset (Optional)
This dataset has been preprocess so you don't need to run this. But if you want to preprocess a custom dataset, modify the `clean-dataset.py` file according to your needs. Once modified, run the script:
```bash
python clean-dataset.py
```
The original dataset from: https://www.kaggle.com/datasets/andreuvallhernndez/myanimelist-jikan
### 4. Create a Collection in Weaviate
Run the following script to create the anime collection and insert the dataset into the Weaviate instance:
```bash
python create-collection.py
```
Wait for the data to be inserted into Weaviate. Once the process is complete, you should see output similar to this:

This process taking pretty much time depend on your dataset.
### 5. Launch the Anime Search App
Run the search application:
```bash
python search-anime.py
```
After the script starts, you’ll see a local URL (e.g., `http://127.0.0.1:7860`). Open this URL in your browser to interact with the app.

enjoy
