adamops 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. adamops/__init__.py +40 -0
  2. adamops/cli.py +163 -0
  3. adamops/data/__init__.py +24 -0
  4. adamops/data/feature_engineering.py +284 -0
  5. adamops/data/loaders.py +922 -0
  6. adamops/data/preprocessors.py +227 -0
  7. adamops/data/splitters.py +218 -0
  8. adamops/data/validators.py +148 -0
  9. adamops/deployment/__init__.py +21 -0
  10. adamops/deployment/api.py +237 -0
  11. adamops/deployment/cloud.py +191 -0
  12. adamops/deployment/containerize.py +262 -0
  13. adamops/deployment/exporters.py +148 -0
  14. adamops/evaluation/__init__.py +24 -0
  15. adamops/evaluation/comparison.py +133 -0
  16. adamops/evaluation/explainability.py +143 -0
  17. adamops/evaluation/metrics.py +233 -0
  18. adamops/evaluation/reports.py +165 -0
  19. adamops/evaluation/visualization.py +238 -0
  20. adamops/models/__init__.py +21 -0
  21. adamops/models/automl.py +277 -0
  22. adamops/models/ensembles.py +228 -0
  23. adamops/models/modelops.py +308 -0
  24. adamops/models/registry.py +250 -0
  25. adamops/monitoring/__init__.py +21 -0
  26. adamops/monitoring/alerts.py +200 -0
  27. adamops/monitoring/dashboard.py +117 -0
  28. adamops/monitoring/drift.py +212 -0
  29. adamops/monitoring/performance.py +195 -0
  30. adamops/pipelines/__init__.py +15 -0
  31. adamops/pipelines/orchestrators.py +183 -0
  32. adamops/pipelines/workflows.py +212 -0
  33. adamops/utils/__init__.py +18 -0
  34. adamops/utils/config.py +457 -0
  35. adamops/utils/helpers.py +663 -0
  36. adamops/utils/logging.py +412 -0
  37. adamops-0.1.0.dist-info/METADATA +310 -0
  38. adamops-0.1.0.dist-info/RECORD +42 -0
  39. adamops-0.1.0.dist-info/WHEEL +5 -0
  40. adamops-0.1.0.dist-info/entry_points.txt +2 -0
  41. adamops-0.1.0.dist-info/licenses/LICENSE +21 -0
  42. adamops-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,310 @@
1
+ Metadata-Version: 2.4
2
+ Name: adamops
3
+ Version: 0.1.0
4
+ Summary: A comprehensive MLOps library for end-to-end machine learning workflows
5
+ Home-page: https://github.com/Ayushmishra05/ADAMOPS
6
+ Author: Team ADAM
7
+ Author-email: Team ADAM <ayush89718@gmail.com>
8
+ Maintainer-email: Team ADAM <ayush89718@gmail.com>
9
+ License: MIT
10
+ Project-URL: Homepage, https://github.com/Ayushmishra05/ADAMOPS
11
+ Project-URL: Documentation, https://github.com/Ayushmishra05/ADAMOPS#readme
12
+ Project-URL: Repository, https://github.com/Ayushmishra05/ADAMOPS
13
+ Project-URL: Bug Tracker, https://github.com/Ayushmishra05/ADAMOPS/issues
14
+ Keywords: mlops,machine-learning,data-science,automl,model-deployment,model-monitoring,feature-engineering
15
+ Classifier: Development Status :: 3 - Alpha
16
+ Classifier: Intended Audience :: Developers
17
+ Classifier: Intended Audience :: Science/Research
18
+ Classifier: License :: OSI Approved :: MIT License
19
+ Classifier: Operating System :: OS Independent
20
+ Classifier: Programming Language :: Python :: 3
21
+ Classifier: Programming Language :: Python :: 3.8
22
+ Classifier: Programming Language :: Python :: 3.9
23
+ Classifier: Programming Language :: Python :: 3.10
24
+ Classifier: Programming Language :: Python :: 3.11
25
+ Classifier: Programming Language :: Python :: 3.12
26
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
27
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
28
+ Requires-Python: >=3.8
29
+ Description-Content-Type: text/markdown
30
+ License-File: LICENSE
31
+ Requires-Dist: pandas>=1.5.0
32
+ Requires-Dist: numpy>=1.23.0
33
+ Requires-Dist: scikit-learn>=1.2.0
34
+ Requires-Dist: joblib>=1.2.0
35
+ Requires-Dist: matplotlib>=3.6.0
36
+ Requires-Dist: seaborn>=0.12.0
37
+ Requires-Dist: xgboost>=1.7.0
38
+ Requires-Dist: lightgbm>=3.3.0
39
+ Requires-Dist: pyyaml>=6.0.0
40
+ Requires-Dist: click>=8.1.0
41
+ Requires-Dist: rich>=13.5.0
42
+ Provides-Extra: dev
43
+ Requires-Dist: pytest>=7.4.0; extra == "dev"
44
+ Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
45
+ Requires-Dist: black>=23.0.0; extra == "dev"
46
+ Requires-Dist: flake8>=6.0.0; extra == "dev"
47
+ Requires-Dist: mypy>=1.0.0; extra == "dev"
48
+ Provides-Extra: api
49
+ Requires-Dist: fastapi>=0.100.0; extra == "api"
50
+ Requires-Dist: uvicorn>=0.22.0; extra == "api"
51
+ Requires-Dist: flask>=2.3.0; extra == "api"
52
+ Requires-Dist: streamlit>=1.25.0; extra == "api"
53
+ Provides-Extra: automl
54
+ Requires-Dist: optuna>=3.0.0; extra == "automl"
55
+ Provides-Extra: explainability
56
+ Requires-Dist: shap>=0.41.0; extra == "explainability"
57
+ Requires-Dist: lime>=0.2.0; extra == "explainability"
58
+ Provides-Extra: export
59
+ Requires-Dist: onnx>=1.14.0; extra == "export"
60
+ Requires-Dist: skl2onnx>=1.15.0; extra == "export"
61
+ Provides-Extra: tracking
62
+ Requires-Dist: mlflow>=2.5.0; extra == "tracking"
63
+ Provides-Extra: all
64
+ Requires-Dist: optuna>=3.0.0; extra == "all"
65
+ Requires-Dist: shap>=0.41.0; extra == "all"
66
+ Requires-Dist: lime>=0.2.0; extra == "all"
67
+ Requires-Dist: onnx>=1.14.0; extra == "all"
68
+ Requires-Dist: skl2onnx>=1.15.0; extra == "all"
69
+ Requires-Dist: fastapi>=0.100.0; extra == "all"
70
+ Requires-Dist: uvicorn>=0.22.0; extra == "all"
71
+ Requires-Dist: flask>=2.3.0; extra == "all"
72
+ Requires-Dist: streamlit>=1.25.0; extra == "all"
73
+ Requires-Dist: mlflow>=2.5.0; extra == "all"
74
+ Dynamic: author
75
+ Dynamic: home-page
76
+ Dynamic: license-file
77
+ Dynamic: requires-python
78
+
79
+ # 🚀 AdamOps
80
+
81
+ [![Python Version](https://img.shields.io/badge/python-3.8%2B-blue.svg)](https://python.org)
82
+ [![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
83
+ [![Version](https://img.shields.io/badge/version-0.1.0-orange.svg)](https://github.com/adamops/adamops)
84
+
85
+ **AdamOps** is a comprehensive MLOps library for end-to-end machine learning workflows. It provides a unified interface for data processing, model training, evaluation, deployment, and monitoring.
86
+
87
+ ## ✨ Features
88
+
89
+ ### 📊 Data Module (DataOps)
90
+ - **Loaders**: CSV, Excel, JSON, SQL, API, compressed files with auto-encoding detection
91
+ - **Validators**: Type validation, missing values, duplicates, shape, statistical checks
92
+ - **Preprocessors**: Missing value imputation, outlier handling, text cleaning
93
+ - **Feature Engineering**: Encoding, scaling, feature selection, auto feature generation
94
+ - **Splitters**: Train/test, time-series, K-Fold, stratified splitting
95
+
96
+ ### 🤖 Model Module (ModelOps)
97
+ - **Regression**: Ridge, Lasso, ElasticNet, XGBoost, LightGBM
98
+ - **Classification**: Decision Tree, Gradient Boosting, XGBoost, LightGBM, Naive Bayes, KNN
99
+ - **Clustering**: K-Means, DBSCAN, Hierarchical, GMM
100
+ - **Ensembles**: Voting, Stacking, Blending, Weighted averaging
101
+ - **AutoML**: Model selection, hyperparameter tuning (Grid, Random, Bayesian)
102
+
103
+ ### 📈 Evaluation Module
104
+ - **Metrics**: Classification, regression, and clustering metrics
105
+ - **Visualization**: Confusion matrices, ROC curves, feature importance plots
106
+ - **Explainability**: SHAP and LIME explanations
107
+ - **Reports**: HTML/PDF report generation
108
+
109
+ ### 🚀 Deployment Module
110
+ - **Exporters**: ONNX, PMML, TFLite, CoreML
111
+ - **APIs**: FastAPI, Flask, Streamlit
112
+ - **Containerization**: Docker, Kubernetes
113
+ - **Cloud**: AWS, GCP, Azure
114
+
115
+ ### 📡 Monitoring Module
116
+ - **Drift Detection**: Data and concept drift
117
+ - **Performance Tracking**: Model metrics over time
118
+ - **Alerts**: Performance degradation notifications
119
+ - **Dashboards**: Real-time monitoring dashboards
120
+
121
+ ### 🔄 Pipelines Module
122
+ - **Workflows**: End-to-end ML workflows as DAGs
123
+ - **Orchestration**: Scheduling and pipeline execution
124
+
125
+ ## 🛠️ Installation
126
+
127
+ ### Basic Installation
128
+ ```bash
129
+ pip install adamops
130
+ ```
131
+
132
+ ### Development Installation
133
+ ```bash
134
+ git clone https://github.com/adamops/adamops.git
135
+ cd adamops
136
+ pip install -e ".[dev]"
137
+ ```
138
+
139
+ ### Full Installation (all extras)
140
+ ```bash
141
+ pip install adamops[all]
142
+ ```
143
+
144
+ ## 🚀 Quick Start
145
+
146
+ ### Data Loading
147
+ ```python
148
+ from adamops.data import loaders
149
+
150
+ # Load CSV with auto-encoding detection
151
+ df = loaders.load_csv("data.csv")
152
+
153
+ # Load from SQL database
154
+ df = loaders.load_sql("SELECT * FROM table", "sqlite:///database.db")
155
+ ```
156
+
157
+ ### Data Validation
158
+ ```python
159
+ from adamops.data import validators
160
+
161
+ # Create validation report
162
+ report = validators.validate(df)
163
+ print(report.summary())
164
+ ```
165
+
166
+ ### Data Preprocessing
167
+ ```python
168
+ from adamops.data import preprocessors
169
+
170
+ # Handle missing values
171
+ df = preprocessors.handle_missing(df, strategy="knn")
172
+
173
+ # Handle outliers
174
+ df = preprocessors.handle_outliers(df, method="iqr")
175
+ ```
176
+
177
+ ### Feature Engineering
178
+ ```python
179
+ from adamops.data import feature_engineering
180
+
181
+ # Encode categorical variables
182
+ df = feature_engineering.encode(df, method="onehot", columns=["category"])
183
+
184
+ # Scale numerical features
185
+ df = feature_engineering.scale(df, method="standard", columns=["value"])
186
+ ```
187
+
188
+ ### Model Training
189
+ ```python
190
+ from adamops.models import modelops
191
+
192
+ # Train a model
193
+ model = modelops.train(
194
+ X_train, y_train,
195
+ task="classification",
196
+ algorithm="xgboost"
197
+ )
198
+
199
+ # Predict
200
+ predictions = model.predict(X_test)
201
+ ```
202
+
203
+ ### AutoML
204
+ ```python
205
+ from adamops.models import automl
206
+
207
+ # Run AutoML
208
+ best_model = automl.run(
209
+ X_train, y_train,
210
+ task="classification",
211
+ tuning="bayesian",
212
+ time_limit=3600
213
+ )
214
+ ```
215
+
216
+ ### Evaluation
217
+ ```python
218
+ from adamops.evaluation import metrics
219
+
220
+ # Compute metrics
221
+ results = metrics.evaluate(y_true, y_pred, task="classification")
222
+ print(results)
223
+ ```
224
+
225
+ ### CLI Usage
226
+ ```bash
227
+ # Train a model
228
+ adamops train --data data.csv --target y --algorithm xgboost
229
+
230
+ # Evaluate a model
231
+ adamops evaluate --model model.pkl --data test.csv
232
+
233
+ # Deploy as API
234
+ adamops deploy --model model.pkl --type api --port 8000
235
+ ```
236
+
237
+ ## 📁 Project Structure
238
+
239
+ ```
240
+ adamops/
241
+ ├── adamops/
242
+ │ ├── __init__.py
243
+ │ ├── cli.py
244
+ │ ├── data/
245
+ │ │ ├── loaders.py
246
+ │ │ ├── validators.py
247
+ │ │ ├── preprocessors.py
248
+ │ │ ├── feature_engineering.py
249
+ │ │ └── splitters.py
250
+ │ ├── models/
251
+ │ │ ├── modelops.py
252
+ │ │ ├── registry.py
253
+ │ │ ├── ensembles.py
254
+ │ │ └── automl.py
255
+ │ ├── evaluation/
256
+ │ │ ├── metrics.py
257
+ │ │ ├── visualization.py
258
+ │ │ ├── explainability.py
259
+ │ │ ├── comparison.py
260
+ │ │ └── reports.py
261
+ │ ├── deployment/
262
+ │ │ ├── exporters.py
263
+ │ │ ├── api.py
264
+ │ │ ├── containerize.py
265
+ │ │ └── cloud.py
266
+ │ ├── monitoring/
267
+ │ │ ├── drift.py
268
+ │ │ ├── performance.py
269
+ │ │ ├── alerts.py
270
+ │ │ └── dashboard.py
271
+ │ ├── pipelines/
272
+ │ │ ├── workflows.py
273
+ │ │ └── orchestrators.py
274
+ │ └── utils/
275
+ │ ├── config.py
276
+ │ ├── logging.py
277
+ │ └── helpers.py
278
+ ├── tests/
279
+ ├── examples/
280
+ ├── docs/
281
+ ├── setup.py
282
+ ├── requirements.txt
283
+ └── README.md
284
+ ```
285
+
286
+ ## 📚 Documentation
287
+
288
+ Full documentation is available at [https://adamops.readthedocs.io](https://adamops.readthedocs.io)
289
+
290
+ ## 🤝 Contributing
291
+
292
+ Contributions are welcome! Please see our [Contributing Guide](CONTRIBUTING.md) for details.
293
+
294
+ ## 📄 License
295
+
296
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
297
+
298
+ ## 🙏 Acknowledgments
299
+
300
+ - scikit-learn team for their excellent ML library
301
+ - XGBoost and LightGBM teams for gradient boosting implementations
302
+ - SHAP and LIME teams for explainability tools
303
+ - The entire open-source ML community
304
+
305
+ ---
306
+
307
+ **Made with ❤️ by the AdamOps Team**
308
+ # ADAMOPS
309
+
310
+
@@ -0,0 +1,42 @@
1
+ adamops/__init__.py,sha256=W3-PYqkUGJ2JsngkEqD_S1T97vOOPtg4iVjRkKhsRic,1045
2
+ adamops/cli.py,sha256=QQeRZfZGmec8SUNWHejLArqpbtvcxMMLgVjS4PPKLZA,6114
3
+ adamops/data/__init__.py,sha256=4YQKVngL9LfHQLylE0wYRCFcfiMtx8qsHszP3uVzziw,784
4
+ adamops/data/feature_engineering.py,sha256=9bigjLSPzB1CBbfncQXFzbAvvr9SkLkbs72oSrwcaUw,10727
5
+ adamops/data/loaders.py,sha256=jAThZuKw-EqMxaSoglrOd5i4PqLqeS54e_T6BdX9n2E,28929
6
+ adamops/data/preprocessors.py,sha256=dZnVIpqne1uj1QzQd2v4vKX0xcVa3hpdKLn3mVusTVU,7794
7
+ adamops/data/splitters.py,sha256=eB9mNTvYMJ4kzQY20jb_bU1gLPJABg2Gaa9uN15mVY4,7626
8
+ adamops/data/validators.py,sha256=4wOz8sQ7RvgLeQ-uR7s6-nLNLFh5NHtBB8K2vnc07_k,5352
9
+ adamops/deployment/__init__.py,sha256=svPaXJ927SK2peqKa_SdAmQFsoeMKLNdENq3AMOUJe0,515
10
+ adamops/deployment/api.py,sha256=Sux1ghkXf910IHI2BKgaifENnbFrs5sVXBhectaCtPg,7009
11
+ adamops/deployment/cloud.py,sha256=XN0xOKSsfptbZZ6_g8CIXLBMN8zU4vdDdth1z_UDPPM,5997
12
+ adamops/deployment/containerize.py,sha256=s9VEZZzFCdNbLriDm4ItnNz6QcJecbl1So-9Yk8vOEU,6801
13
+ adamops/deployment/exporters.py,sha256=etRyA-l_bUv3ZMCYAh1twO0oWZx_DnjuR-tJOUJ6jDs,4398
14
+ adamops/evaluation/__init__.py,sha256=6B0lPD0sAk8r0xdOC_mPi-X47zcVlT-TPeGQ7Q4FyiA,680
15
+ adamops/evaluation/comparison.py,sha256=3tNtJmLC8aCdNd63Z6TOGzNFkIFyJfV1q-kK17IoaF0,3785
16
+ adamops/evaluation/explainability.py,sha256=ikMcXwxeFrj6p_LnSGJ_G1QDYk19t1WwewaeqNCzj_Q,5273
17
+ adamops/evaluation/metrics.py,sha256=ZYUOhiG2yMHJf77guIUKSeXEVDEwJrnFr6wjh9CKZ5I,7997
18
+ adamops/evaluation/reports.py,sha256=CFI5tasqXIEFeIJrX5ldogtUxUvCz4VVk2RQWM0vY8s,6127
19
+ adamops/evaluation/visualization.py,sha256=BIDy5MHRxLyjRKCvZlR9hUc7IRKcgTJJytW6pB0dkNk,7298
20
+ adamops/models/__init__.py,sha256=loI-yaW0OrJTbUdqPO3TyPjSxbD2BZD3zv_Q8LcOt3I,582
21
+ adamops/models/automl.py,sha256=CIAwBYBmKLCgGOjBSw3ttlQIdi7eUsAHLuNOEuOrHEo,9838
22
+ adamops/models/ensembles.py,sha256=GkYqN2L9y3Qqk5z8zqQcWGQTKoUWy0L5E3iNwibEHAs,8127
23
+ adamops/models/modelops.py,sha256=NdErXh_eJ9qHIIpDXKkTycmc84pq6EuStgOzeal4utQ,10102
24
+ adamops/models/registry.py,sha256=8qrCO17nKRjfpQT2RW0JuJ1bq9vHINw_0qkE9HxpBlw,9005
25
+ adamops/monitoring/__init__.py,sha256=cf7jo9UUvY_COIxptdiV_22Cz-Z7e7koZvRBA6h_fRg,516
26
+ adamops/monitoring/alerts.py,sha256=eT_HRBbyLbQQKNxGYj1dse2MqvJX3CGUKTvZZX7wfB8,6581
27
+ adamops/monitoring/dashboard.py,sha256=fIdoqF_Wm45JvRdwQZ7eSihlfj1CMK6UK6afkRE4ti4,3750
28
+ adamops/monitoring/drift.py,sha256=er9BjSFYlHnElHRadMOYCjVihXgNUviPFcrH5txDdmk,7687
29
+ adamops/monitoring/performance.py,sha256=y9vHzdnrYX0GKKauUuMr_ve4tvIdw5E47lDbOeED1XA,6323
30
+ adamops/pipelines/__init__.py,sha256=9f40dmrlWMtoQHsMvta6BM-4Fq3D9yu9Ho8_FWlW-jg,329
31
+ adamops/pipelines/orchestrators.py,sha256=lhyK9Tn_w6Rn_9hp90_edKkB0UTxTHqt_gsaBXiJWSs,6418
32
+ adamops/pipelines/workflows.py,sha256=JQIPUQvM7EnislXgl5MDztMPQvQ7Kq_7MpQWTm2JcTA,7206
33
+ adamops/utils/__init__.py,sha256=2QdK44sy5sY3XEb4byW-XAuvSAlZVu1z0rq72dyVDQA,338
34
+ adamops/utils/config.py,sha256=AqBNrcQebY5spm1HTDrDZUuKhPC_BjuFaxviOckiZ7o,16417
35
+ adamops/utils/helpers.py,sha256=ak3HHbIMi6l9tPk2vPYlipmA4deihNQQsyL3v1osIhQ,19174
36
+ adamops/utils/logging.py,sha256=zRLEsnsEfibKKLCXKC7EUynxI92PwtFgUlpcNg_boEc,13918
37
+ adamops-0.1.0.dist-info/licenses/LICENSE,sha256=8H4T3ManVKsLf44lnHI7ewJf7kd1sMHpcTTymtePy6A,1087
38
+ adamops-0.1.0.dist-info/METADATA,sha256=gvCPvET73XGQx9QEdNj_E2Q2pCN7w-N5UUTOgBHk-jA,9727
39
+ adamops-0.1.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
40
+ adamops-0.1.0.dist-info/entry_points.txt,sha256=9v-SJstPIQKmK7YqSE-vE_4VlvhABKiVoOWatgAsRUY,45
41
+ adamops-0.1.0.dist-info/top_level.txt,sha256=jYV6lpuD16cz3DD_sApHOJlzkjob7wPS8D0RCpEWHHY,8
42
+ adamops-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.10.2)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ adamops = adamops.cli:main
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Team ADAM
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1 @@
1
+ adamops