Rekcurd is a software package of managing machine learning (ML) modules. Rekcurd makes it "easy to serve ML module", "easy to manage and deploy ML models" and "easy to integrate into the existing service". Rekcurd can be run on Kubernetes.
- Kubernetes
- Istio
- Developer-Friendly web interface (Rekcurd-dashboard)
- Deploying ML service
- Controlling traffic (AB testing)
- Upload and versioning ML model
- Switch ML model of ML service
- Upload and versioning quality assurance data (TBD)
- Visualizing evaluation result of ML model using QA data (TBD)
- Django-like gRPC micro-framework (Rekcurd)
- SDK (Rekcurd-client)
- Rekcurd: Project for serving ML module. This is a gRPC micro-framework and it can be used like Django and Flask.
- Rekcurd-dashboard: Project for managing ML model and deploying ML module. Any Rekcurd service is manageable. It can deploy the Rekcurd service to Kubernetes cluster and can control traffic weights which Istio manages.
- Rekcurd-client: Project for integrating ML module. Any Rekcurd service is connectable. It can connect the Rekcurd service on Kubernetes.
- dockerfiles: Rekcurd's container image. Since it works with Docker Hub, you can pull image via
docker pull
. - grpc-proto: Rekcurd's gRPC spec.
- Airflow-plugin: Airflow Plugins for Rekcurd Dashboard
- rekcurd-example: Example project of rekcurd.
- rekcurd-client-example: Example project of rekcurd-client.
- Python 3.6
- Kubernetes 1.11~
- MySQL 5.7
- Online storage (Ceph, AWS S3)
- (If necessary) Private Docker registry
- (If necessary) Private git repository (e.g. GitHub Enterprise, GitLab, ...)
See docs.
Give us Star, Issues and Pull requests!
- keigohtr: Lead committer
- Kenji Yamauchi: Frontend
- Wen Chun Kao: Unit test
- yoquankara: Code review
- Shimpei Yotsukura: DAO
- sugyan: Authentication
- yuki-mt: Committer