About this project
Gorse is an open-source, AI-powered recommender system engine written in Go. It is designed to be a universal recommender system that can be easily integrated into various online services. By importing items, users, and interaction data, Gorse automatically trains models to generate personalized recommendations. Key features include:
- **Multi-source recommendations:** Combines latest items, user-to-user, item-to-item, and collaborative filtering.
- **Multimodal support:** Handles text, images, and videos via embeddings.
- **AI-powered:** Supports both classical and LLM-based recommenders.
- **GUI Dashboard:** Provides a visual interface for pipeline editing, monitoring, and data management.
- **RESTful APIs:** Exposes endpoints for data CRUD and recommendation requests.
**Quick Start:**
Use Docker to run a playground that downloads GitHub repository data from GitRec and provides a dashboard at `localhost:8088`. After the item-to-item generation task completes, you can insert user feedback via API and fetch recommendations.
**Architecture:**
Gorse uses a cluster with a master node (training, config, membership), server nodes (REST APIs, real-time recommendations), and worker nodes (offline batch recommendations). Data can be stored in MySQL, MongoDB, Postgres, or ClickHouse, with caching in Redis or the same databases.
The project is inspired by librec, Surprise, and gopher-vector, and welcomes contributions via issues, discussions, or pull requests.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.