Gorse is a personalized recommendation engine server and machine learning pipeline designed to suggest items to users based on their behavior and preferences. It operates as a distributed system that separates training, candidate generation, and serving nodes to support high-throughput workloads.
The system utilizes a multi-stage recommendation pipeline to refine results through retrieval, scoring, and reranking. It generates personalized suggestions using collaborative filtering, matrix factorization, and item-to-item similarity models, while also providing non-personalized and fallback recommendations when individual profiles are unavailable.
The infrastructure supports scaling via Kubernetes and provides a management dashboard secured with OpenID Connect. Broad capabilities include model training and evaluation, a pluggable database backend, and observability via OpenTelemetry request tracing.
Users can integrate the engine into applications through REST endpoints or dedicated SDKs for Go, Python, Rust, TypeScript, Java, and .NET.