UpTrain - ML Observability and Retraining Framework
Project description
An open-source framework to observe ML applications, built for engineers
Docs - Try it out - Support Community - Bug Report - Feature Request
UpTrain is an open-source, data-secure tool for ML practitioners to observe and refine their ML models by monitoring their performance, checking for (data) distribution shifts, and collecting edge cases to retrain them upon. It integrates seamlessly with your existing production pipelines and takes minutes to get started ⚡.
Key Features 💡
- Data Drift Checks - Identify distribution shifts in your model inputs.
- Performance Monitoring - Track the performance of your models in realtime and get degradation alerts.
- Embeddings Support - Specialized dashboards to understand model-inferred embeddings.
- Edge Case Signals - User-defined signals and statistical techniques to detect out-of-distribution data-points.
- Data Integrity Checks - Checks for missing or inconsistent data, duplicate records, data quality, etc.
- Customizable metrics - Define custom metrics that make sense for your use case.
- Automated Retraining - Automate model retraining by attaching your training and inference pipelines.
- Model Bias - Track bias in your ML model's predictions.
- AI Explainability - Understand relative importance of multiple features on predictions.
- Data Security - Your data never goes out of your machine.
- Slack Integration - Get alerts on Slack.
- Realtime Dashboards - To visualize your model's health live.
🚨Coming soon🚨
- Label Shift - Identify drifts in your predictions. Specially useful in cases when ground truth is unavailable.
- Model confidence interval - Confidence intervals for model predictions
- Advanced drift detection techniques - Outlier-based drift detection methods
- Advanced feature slicing - Ability to slice statistical properties
- Kolmogorov-Smirnov Test - For detecting distribution shifts
- Prediction Stability - Filter cases where model prediction is not stable.
- Adversarial Checks - Combat adversarial attacks
And more.
Get started 🙌
You can quickly get started with Google collab here.
To run it in your machine, follow the steps below:
Install the package through pip:
pip install uptrain
Run your first example:
git clone git@github.com:uptrain-ai/uptrain.git
cd uptrain/examples
pip install jupyterlab
jupyter lab
For more info, visit our get started guide.
UpTrain in action 🎬
One of the most common use cases of ML today is language models, be it text summarization, NER, chatbots, language translation, etc. UpTrain provides ways to visualize differences in the training and real-world data via UMAP clustering of text embeddings (inferred from bert). Following are some replays from the UpTrain dashboard.
AI Explainability out-of-the-box
Live Model Performance Monitoring and Data Integrity Checks
UMAP Dimensionality Reduction and Visualization
Edge-case Collection for Finetuning the Model later
Why UpTrain 🤔?
Machine learning (ML) models are widely used to make critical business decisions. Still, no ML model is 100% accurate, and, further, their accuracy deteriorates over time 😣. For example, Sales prediction becomes inaccurate over time due to a shift in consumer buying habits. Additionally, due to the black box nature of ML models, it's challenging to identify and fix their problems.
UpTrain solves this. We make it easy for data scientists and ML engineers to understand where their models are going wrong and help them fix them before others complain 🗣️.
UpTrain can be used for a wide variety of Machine learning models such as LLMs, recommendation models, prediction models, Computer vision models, etc.
We are constantly working to make UpTrain better. Want a new feature or need any integrations? Feel free to create an issue or contribute directly to the repository.
License 💻
This repo is published under Apache 2.0 license. We're currently focused on developing non-enterprise offerings that should cover most use cases. In the future, we will add a hosted version which we might charge for.
Stay Updated ☎️
We are continuously adding tons of features and use cases. Please support us by giving the project a star ⭐!
Provide feedback (Harsher the better 😉)
We are building UpTrain in public. Help us improve by giving your feedback here.
Contributors 🖥️
We welcome contributions to uptrain. Please see our contribution guide for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file uptrain-0.0.9.tar.gz
.
File metadata
- Download URL: uptrain-0.0.9.tar.gz
- Upload date:
- Size: 51.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41a9ed14337db6980c508a0f0374d2d40e7f4e447a959db7453e3c9e598b060a |
|
MD5 | f80788b93da2f91d1e8240f2fed80570 |
|
BLAKE2b-256 | 1b75384380865cb60ca42222c0d36e993ae7a5ae935ba8933f03f22fafdc0549 |
File details
Details for the file uptrain-0.0.9-py3-none-any.whl
.
File metadata
- Download URL: uptrain-0.0.9-py3-none-any.whl
- Upload date:
- Size: 71.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 78dd4734d5f367335ed2fc4ff03b860f1e2791138706e1e3b5d80ae941a6285b |
|
MD5 | b3f93001467798abb6baabf29b7c58f2 |
|
BLAKE2b-256 | c8bbccb435e385e2b4d7abbae406290b765dc3047fbfea829bd4d56262d682c4 |