Open-source tool for tracking & monitoring machine learning models.
- Introduction
- Explanatory video
- Installation & usage
- Technologies
- Documentation
- Examples
- License
- Contact
- References
- To-Do
End-to-end machine learning projects require long-term lifecycles during which different models are evaluated, with various hyperparameters or data representations. Then, out of all the experiments, a final model must be selected for deployment in the production environment. There are some solutions available to manage the model creation process, such as mlflow or neptune.ai. However, none of them support the functionality of monitoring a deployed model in production.
As a part of the mlops project, we aim to create a ready-to-use tool for professionals in the Machine Learning industry allowing them not only to manage experiments during model creation process (tracking module), but also monitoring a deployed model working on real-world production data (monitoring module) with an option to setup email alerts using MailGun (email alerts module).
To install the application locally, you need to have docker and docker-compose installed on your machine. Then, you can run the following command:
docker-compose up
After that you can access the application at http://localhost:3000.
To install the python package make sure you have Python >=3.9 installed on your machine. Then, you can install the package using pip:
pip install mlops-ai
Application consist of two main components:
- Main application (client + server) written in React and FastAPI, which you can run using Docker.
- Python package for communication with the application.
Additionally, we use mongoDB database for storing tracking module data.
You can find the detailed documentation of the application here.
The main end-to-end notebook that
presents key features of the package can be found
here.
Some other example notebooks are also provided inside the library/tests/notebooks
directory.
Distributed under the open-source Apache 2.0 License. See LICENSE
for more information.
Project authors are (in alphabetical order):
- Paweł Łączkowski (front-end)
- Kacper Pękalski (back-end, library)
- Jędrzej Rybczyński (back-end, library)
- Kajetan Szal(back-end, library)
Feel free to contact us in case of any questions or suggestions.
This project was created as a final BE project of Computer Science course at Faculty of Mathematics and Computer Science of Adam Mickiewicz University.
Application is still under development. Here is a list of features we plan to implement in the future:
- Add support for the whole monitoring module
- Add support for email alerts
- AWS EC2 integration
- Add support for multiple users (optionally)