@codin-io/mlxd 1.0.32
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.
Potentially problematic release.
This version of @codin-io/mlxd might be problematic. Click here for more details.
- package/LICENSE +0 -0
- package/README.md +181 -0
- package/config.yaml +17 -0
- package/mlxd/LICENSE +0 -0
- package/mlxd/README.md +181 -0
- package/mlxd/config.yaml +17 -0
- package/mlxd/index.bundle.js +2 -0
- package/package.json +56 -0
- package/python/model_inference.py +71 -0
package/LICENSE
ADDED
File without changes
|
package/README.md
ADDED
@@ -0,0 +1,181 @@
|
|
1
|
+
# `@codin/mlxd`
|
2
|
+
|
3
|
+
**MLXD (Machine Learning eXperiment Deployment)** is a CI/CD testing tool for machine learning models. This CLI simplifies testing, configuration, and encryption of ML model performance metrics in a secure, standalone manner.
|
4
|
+
|
5
|
+
## **Features**
|
6
|
+
|
7
|
+
- **Run ML Tests**: Evaluate model accuracy, precision, and other metrics.
|
8
|
+
- **Fully Configurable**: Easily define model paths, datasets, and test criteria in `config.yaml`.
|
9
|
+
|
10
|
+
## **Quick Start**
|
11
|
+
|
12
|
+
### **1. Initialize Configuration**
|
13
|
+
|
14
|
+
Run:
|
15
|
+
|
16
|
+
```bash
|
17
|
+
mlxd init
|
18
|
+
```
|
19
|
+
|
20
|
+
This creates a `config.yaml` file in the current directory with the following structure:
|
21
|
+
|
22
|
+
```yaml
|
23
|
+
modelPath: "./my_model.pth" # Path to your ML model
|
24
|
+
dataPath: "./data/test_data.csv" # Path to your test dataset
|
25
|
+
tests:
|
26
|
+
- name: "Model Accuracy"
|
27
|
+
type: "metric_threshold"
|
28
|
+
metric: "accuracy"
|
29
|
+
threshold: 0.85
|
30
|
+
```
|
31
|
+
|
32
|
+
### **2. Configure `config.yaml`**
|
33
|
+
|
34
|
+
Edit the file to match your specific model and dataset paths:
|
35
|
+
|
36
|
+
```yaml
|
37
|
+
modelPath: "./models/mymodel.h5"
|
38
|
+
dataPath: "./datasets/test.csv"
|
39
|
+
tests:
|
40
|
+
- name: "Accuracy Test"
|
41
|
+
type: "metric_threshold"
|
42
|
+
metric: "accuracy"
|
43
|
+
threshold: 0.9
|
44
|
+
```
|
45
|
+
|
46
|
+
### **3. Run Tests**
|
47
|
+
|
48
|
+
1. Run tests without encryption:
|
49
|
+
|
50
|
+
```bash
|
51
|
+
mlxd run
|
52
|
+
```
|
53
|
+
|
54
|
+
This outputs test results in the console.
|
55
|
+
|
56
|
+
### **Initialization**
|
57
|
+
|
58
|
+
- `mlxd init`
|
59
|
+
Creates a `config.yaml` template in the current directory.
|
60
|
+
|
61
|
+
### **Version**
|
62
|
+
|
63
|
+
- `mlxd --version or -v`
|
64
|
+
Prints the CLI version.
|
65
|
+
|
66
|
+
### **Run Tests**
|
67
|
+
|
68
|
+
- `mlxd run`
|
69
|
+
- Runs tests defined in `config.yaml`.
|
70
|
+
|
71
|
+
### **Uninstall**
|
72
|
+
|
73
|
+
- `mlxd uninstall`
|
74
|
+
- Removes the CLI globally.
|
75
|
+
|
76
|
+
## **Example Workflow**
|
77
|
+
|
78
|
+
1. Install the CLI:
|
79
|
+
|
80
|
+
```bash
|
81
|
+
npm install -g @codin/mlxd
|
82
|
+
```
|
83
|
+
|
84
|
+
2. Create `config.yaml`:
|
85
|
+
|
86
|
+
```bash
|
87
|
+
mlxd init
|
88
|
+
```
|
89
|
+
|
90
|
+
3. Edit `config.yaml`:
|
91
|
+
|
92
|
+
```yaml
|
93
|
+
modelPath: "./models/mymodel.h5"
|
94
|
+
dataPath: "./datasets/test.csv"
|
95
|
+
tests:
|
96
|
+
- name: "Accuracy Test"
|
97
|
+
type: "metric_threshold"
|
98
|
+
metric: "accuracy"
|
99
|
+
threshold: 0.9
|
100
|
+
```
|
101
|
+
|
102
|
+
4. Run tests:
|
103
|
+
|
104
|
+
```bash
|
105
|
+
mlxd run
|
106
|
+
```
|
107
|
+
|
108
|
+
5. Uninstall:
|
109
|
+
```bash
|
110
|
+
mlxd uninstall
|
111
|
+
```
|
112
|
+
|
113
|
+
## **Troubleshooting**
|
114
|
+
|
115
|
+
### **1. Common Errors**
|
116
|
+
|
117
|
+
- **No `config.yaml` found**:
|
118
|
+
Run `mlxd init` to create a new configuration file.
|
119
|
+
|
120
|
+
- **Model or dataset file not found**:
|
121
|
+
Ensure the `modelPath` and `dataPath` in `config.yaml` point to valid files.
|
122
|
+
|
123
|
+
### **2. Check Installed Version**
|
124
|
+
|
125
|
+
```bash
|
126
|
+
mlxd --version or -v
|
127
|
+
```
|
128
|
+
|
129
|
+
## **License**
|
130
|
+
|
131
|
+
This project is licensed under the ISC License.
|
132
|
+
|
133
|
+
---
|
134
|
+
|
135
|
+
## **Usage Agreement**
|
136
|
+
|
137
|
+
By installing or using the `@codin/mlxd` CLI tool, you acknowledge and agree to the following terms:
|
138
|
+
|
139
|
+
### **1. Development Status**
|
140
|
+
|
141
|
+
- This CLI tool is under active development and may undergo significant changes in functionality, structure, and features.
|
142
|
+
- The current version provides limited functionality (Automated model performance checks) and may include experimental or unstable features.
|
143
|
+
|
144
|
+
### **2. Usage Terms**
|
145
|
+
|
146
|
+
- You are permitted to use this CLI tool solely for its intended purpose: testing machine learning models within your projects.
|
147
|
+
- Redistribution, reverse engineering, or modification of the tool for commercial purposes without explicit permission from the authors is prohibited.
|
148
|
+
- You are responsible for any actions or consequences arising from the use of this CLI tool, including but not limited to data handling and processing.
|
149
|
+
|
150
|
+
### **3. Data Responsibility**
|
151
|
+
|
152
|
+
- This CLI does not transmit or store any user data externally. However, you are responsible for ensuring the security and confidentiality of the datasets, models, and configuration files (`config.yaml`) used with the CLI.
|
153
|
+
- It is your responsibility to comply with applicable data privacy, security, and governance laws while using this tool.
|
154
|
+
|
155
|
+
### **4. Disclaimer of Warranty**
|
156
|
+
|
157
|
+
- This CLI is provided on an "as-is" basis, without any guarantees or warranties, express or implied, including but not limited to fitness for a particular purpose, non-infringement, or merchantability.
|
158
|
+
- The authors make no guarantee that the tool is free of errors, bugs, or vulnerabilities.
|
159
|
+
|
160
|
+
### **5. Limitation of Liability**
|
161
|
+
|
162
|
+
- The authors and contributors shall not be held liable for any direct, indirect, incidental, special, or consequential damages arising from the use or inability to use the CLI, even if advised of the possibility of such damages.
|
163
|
+
|
164
|
+
### **6. Updates and Changes**
|
165
|
+
|
166
|
+
- The tool may be updated frequently during development. These updates may alter or remove features without prior notice.
|
167
|
+
- Users are encouraged to keep the CLI updated to ensure compatibility and access to the latest improvements.
|
168
|
+
|
169
|
+
### **7. Feedback and Contributions**
|
170
|
+
|
171
|
+
- By providing feedback, suggestions, or contributions to the project, you grant the authors a non-exclusive, royalty-free, worldwide license to use, modify, and distribute your contributions as part of the project.
|
172
|
+
|
173
|
+
### **8. Termination of Use**
|
174
|
+
|
175
|
+
- The authors reserve the right to revoke access to this CLI tool at any time if the terms of this agreement are violated.
|
176
|
+
|
177
|
+
### **9. Governing License**
|
178
|
+
|
179
|
+
- This tool is licensed under the [ISC License](./LICENSE). The terms of the ISC License apply in addition to this Usage Agreement.
|
180
|
+
|
181
|
+
---
|
package/config.yaml
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
tests:
|
2
|
+
- name: Model Accuracy
|
3
|
+
type: metric_threshold
|
4
|
+
metric: accuracy
|
5
|
+
threshold: 0.85
|
6
|
+
dataPath: ./data/my_real_dataset.csv
|
7
|
+
dataValidation:
|
8
|
+
requiredColumns:
|
9
|
+
- prompt
|
10
|
+
- expected_label
|
11
|
+
maxRows: 100000
|
12
|
+
checkNulls: true
|
13
|
+
checkStats: true
|
14
|
+
maxStdDev: 100
|
15
|
+
environment:
|
16
|
+
pythonVersion: '3.8'
|
17
|
+
requiredPackages: {}
|
package/mlxd/LICENSE
ADDED
File without changes
|
package/mlxd/README.md
ADDED
@@ -0,0 +1,181 @@
|
|
1
|
+
# `@codin/mlxd`
|
2
|
+
|
3
|
+
**MLXD (Machine Learning eXperiment Deployment)** is a CI/CD testing tool for machine learning models. This CLI simplifies testing, configuration, and encryption of ML model performance metrics in a secure, standalone manner.
|
4
|
+
|
5
|
+
## **Features**
|
6
|
+
|
7
|
+
- **Run ML Tests**: Evaluate model accuracy, precision, and other metrics.
|
8
|
+
- **Fully Configurable**: Easily define model paths, datasets, and test criteria in `config.yaml`.
|
9
|
+
|
10
|
+
## **Quick Start**
|
11
|
+
|
12
|
+
### **1. Initialize Configuration**
|
13
|
+
|
14
|
+
Run:
|
15
|
+
|
16
|
+
```bash
|
17
|
+
mlxd init
|
18
|
+
```
|
19
|
+
|
20
|
+
This creates a `config.yaml` file in the current directory with the following structure:
|
21
|
+
|
22
|
+
```yaml
|
23
|
+
modelPath: "./my_model.pth" # Path to your ML model
|
24
|
+
dataPath: "./data/test_data.csv" # Path to your test dataset
|
25
|
+
tests:
|
26
|
+
- name: "Model Accuracy"
|
27
|
+
type: "metric_threshold"
|
28
|
+
metric: "accuracy"
|
29
|
+
threshold: 0.85
|
30
|
+
```
|
31
|
+
|
32
|
+
### **2. Configure `config.yaml`**
|
33
|
+
|
34
|
+
Edit the file to match your specific model and dataset paths:
|
35
|
+
|
36
|
+
```yaml
|
37
|
+
modelPath: "./models/mymodel.h5"
|
38
|
+
dataPath: "./datasets/test.csv"
|
39
|
+
tests:
|
40
|
+
- name: "Accuracy Test"
|
41
|
+
type: "metric_threshold"
|
42
|
+
metric: "accuracy"
|
43
|
+
threshold: 0.9
|
44
|
+
```
|
45
|
+
|
46
|
+
### **3. Run Tests**
|
47
|
+
|
48
|
+
1. Run tests without encryption:
|
49
|
+
|
50
|
+
```bash
|
51
|
+
mlxd run
|
52
|
+
```
|
53
|
+
|
54
|
+
This outputs test results in the console.
|
55
|
+
|
56
|
+
### **Initialization**
|
57
|
+
|
58
|
+
- `mlxd init`
|
59
|
+
Creates a `config.yaml` template in the current directory.
|
60
|
+
|
61
|
+
### **Version**
|
62
|
+
|
63
|
+
- `mlxd --version or -v`
|
64
|
+
Prints the CLI version.
|
65
|
+
|
66
|
+
### **Run Tests**
|
67
|
+
|
68
|
+
- `mlxd run`
|
69
|
+
- Runs tests defined in `config.yaml`.
|
70
|
+
|
71
|
+
### **Uninstall**
|
72
|
+
|
73
|
+
- `mlxd uninstall`
|
74
|
+
- Removes the CLI globally.
|
75
|
+
|
76
|
+
## **Example Workflow**
|
77
|
+
|
78
|
+
1. Install the CLI:
|
79
|
+
|
80
|
+
```bash
|
81
|
+
npm install -g @codin/mlxd
|
82
|
+
```
|
83
|
+
|
84
|
+
2. Create `config.yaml`:
|
85
|
+
|
86
|
+
```bash
|
87
|
+
mlxd init
|
88
|
+
```
|
89
|
+
|
90
|
+
3. Edit `config.yaml`:
|
91
|
+
|
92
|
+
```yaml
|
93
|
+
modelPath: "./models/mymodel.h5"
|
94
|
+
dataPath: "./datasets/test.csv"
|
95
|
+
tests:
|
96
|
+
- name: "Accuracy Test"
|
97
|
+
type: "metric_threshold"
|
98
|
+
metric: "accuracy"
|
99
|
+
threshold: 0.9
|
100
|
+
```
|
101
|
+
|
102
|
+
4. Run tests:
|
103
|
+
|
104
|
+
```bash
|
105
|
+
mlxd run
|
106
|
+
```
|
107
|
+
|
108
|
+
5. Uninstall:
|
109
|
+
```bash
|
110
|
+
mlxd uninstall
|
111
|
+
```
|
112
|
+
|
113
|
+
## **Troubleshooting**
|
114
|
+
|
115
|
+
### **1. Common Errors**
|
116
|
+
|
117
|
+
- **No `config.yaml` found**:
|
118
|
+
Run `mlxd init` to create a new configuration file.
|
119
|
+
|
120
|
+
- **Model or dataset file not found**:
|
121
|
+
Ensure the `modelPath` and `dataPath` in `config.yaml` point to valid files.
|
122
|
+
|
123
|
+
### **2. Check Installed Version**
|
124
|
+
|
125
|
+
```bash
|
126
|
+
mlxd --version or -v
|
127
|
+
```
|
128
|
+
|
129
|
+
## **License**
|
130
|
+
|
131
|
+
This project is licensed under the ISC License.
|
132
|
+
|
133
|
+
---
|
134
|
+
|
135
|
+
## **Usage Agreement**
|
136
|
+
|
137
|
+
By installing or using the `@codin/mlxd` CLI tool, you acknowledge and agree to the following terms:
|
138
|
+
|
139
|
+
### **1. Development Status**
|
140
|
+
|
141
|
+
- This CLI tool is under active development and may undergo significant changes in functionality, structure, and features.
|
142
|
+
- The current version provides limited functionality (Automated model performance checks) and may include experimental or unstable features.
|
143
|
+
|
144
|
+
### **2. Usage Terms**
|
145
|
+
|
146
|
+
- You are permitted to use this CLI tool solely for its intended purpose: testing machine learning models within your projects.
|
147
|
+
- Redistribution, reverse engineering, or modification of the tool for commercial purposes without explicit permission from the authors is prohibited.
|
148
|
+
- You are responsible for any actions or consequences arising from the use of this CLI tool, including but not limited to data handling and processing.
|
149
|
+
|
150
|
+
### **3. Data Responsibility**
|
151
|
+
|
152
|
+
- This CLI does not transmit or store any user data externally. However, you are responsible for ensuring the security and confidentiality of the datasets, models, and configuration files (`config.yaml`) used with the CLI.
|
153
|
+
- It is your responsibility to comply with applicable data privacy, security, and governance laws while using this tool.
|
154
|
+
|
155
|
+
### **4. Disclaimer of Warranty**
|
156
|
+
|
157
|
+
- This CLI is provided on an "as-is" basis, without any guarantees or warranties, express or implied, including but not limited to fitness for a particular purpose, non-infringement, or merchantability.
|
158
|
+
- The authors make no guarantee that the tool is free of errors, bugs, or vulnerabilities.
|
159
|
+
|
160
|
+
### **5. Limitation of Liability**
|
161
|
+
|
162
|
+
- The authors and contributors shall not be held liable for any direct, indirect, incidental, special, or consequential damages arising from the use or inability to use the CLI, even if advised of the possibility of such damages.
|
163
|
+
|
164
|
+
### **6. Updates and Changes**
|
165
|
+
|
166
|
+
- The tool may be updated frequently during development. These updates may alter or remove features without prior notice.
|
167
|
+
- Users are encouraged to keep the CLI updated to ensure compatibility and access to the latest improvements.
|
168
|
+
|
169
|
+
### **7. Feedback and Contributions**
|
170
|
+
|
171
|
+
- By providing feedback, suggestions, or contributions to the project, you grant the authors a non-exclusive, royalty-free, worldwide license to use, modify, and distribute your contributions as part of the project.
|
172
|
+
|
173
|
+
### **8. Termination of Use**
|
174
|
+
|
175
|
+
- The authors reserve the right to revoke access to this CLI tool at any time if the terms of this agreement are violated.
|
176
|
+
|
177
|
+
### **9. Governing License**
|
178
|
+
|
179
|
+
- This tool is licensed under the [ISC License](./LICENSE). The terms of the ISC License apply in addition to this Usage Agreement.
|
180
|
+
|
181
|
+
---
|
package/mlxd/config.yaml
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
tests:
|
2
|
+
- name: Model Accuracy
|
3
|
+
type: metric_threshold
|
4
|
+
metric: accuracy
|
5
|
+
threshold: 0.85
|
6
|
+
dataPath: ./data/my_real_dataset.csv
|
7
|
+
dataValidation:
|
8
|
+
requiredColumns:
|
9
|
+
- prompt
|
10
|
+
- expected_label
|
11
|
+
maxRows: 100000
|
12
|
+
checkNulls: true
|
13
|
+
checkStats: true
|
14
|
+
maxStdDev: 100
|
15
|
+
environment:
|
16
|
+
pythonVersion: '3.8'
|
17
|
+
requiredPackages: {}
|