-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[AGENT-6081] Fix class label files not working for binary models (#3)
* [AGENT-XXX] Fix problem with binary target type * Adding more test to run the containers * Adding models and datasets * black * update bash scripts * update github action * add docker requirement * add extra host * update workflows to push only on update of Makefile * Move version to its own file
- Loading branch information
Showing
16 changed files
with
10,438 additions
and
86 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
name: Docker tests | ||
|
||
on: | ||
pull_request: | ||
branches: [ "main" ] | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
build: | ||
|
||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Set up Python 3.9 | ||
uses: actions/setup-python@v3 | ||
with: | ||
python-version: "3.9" | ||
|
||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install -r tests/requirements.txt | ||
- name: Building docker image | ||
run: | | ||
make -C environments/java_codegen_monitoring build | ||
- name: Run docker tests | ||
run: | | ||
bash ./tests/run_docker_tests.sh |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,6 @@ | ||
name: Basic tests | ||
|
||
on: | ||
push: | ||
branches: [ "main" ] | ||
pull_request: | ||
branches: [ "main" ] | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
1.0.1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
Binary file not shown.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,151 @@ | ||
Id,SepalLengthCm,SepalWidthCm,PetalLengthCm,PetalWidthCm,Species | ||
1,5.1,3.5,1.4,0.2,setosa | ||
2,4.9,3.0,1.4,0.2,setosa | ||
3,4.7,3.2,1.3,0.2,setosa | ||
4,4.6,3.1,1.5,0.2,setosa | ||
5,5.0,3.6,1.4,0.2,setosa | ||
6,5.4,3.9,1.7,0.4,setosa | ||
7,4.6,3.4,1.4,0.3,setosa | ||
8,5.0,3.4,1.5,0.2,setosa | ||
9,4.4,2.9,1.4,0.2,setosa | ||
10,4.9,3.1,1.5,0.1,setosa | ||
11,5.4,3.7,1.5,0.2,setosa | ||
12,4.8,3.4,1.6,0.2,setosa | ||
13,4.8,3.0,1.4,0.1,setosa | ||
14,4.3,3.0,1.1,0.1,setosa | ||
15,5.8,4.0,1.2,0.2,setosa | ||
16,5.7,4.4,1.5,0.4,setosa | ||
17,5.4,3.9,1.3,0.4,setosa | ||
18,5.1,3.5,1.4,0.3,setosa | ||
19,5.7,3.8,1.7,0.3,setosa | ||
20,5.1,3.8,1.5,0.3,setosa | ||
21,5.4,3.4,1.7,0.2,setosa | ||
22,5.1,3.7,1.5,0.4,setosa | ||
23,4.6,3.6,1.0,0.2,setosa | ||
24,5.1,3.3,1.7,0.5,setosa | ||
25,4.8,3.4,1.9,0.2,setosa | ||
26,5.0,3.0,1.6,0.2,setosa | ||
27,5.0,3.4,1.6,0.4,setosa | ||
28,5.2,3.5,1.5,0.2,setosa | ||
29,5.2,3.4,1.4,0.2,setosa | ||
30,4.7,3.2,1.6,0.2,setosa | ||
31,4.8,3.1,1.6,0.2,setosa | ||
32,5.4,3.4,1.5,0.4,setosa | ||
33,5.2,4.1,1.5,0.1,setosa | ||
34,5.5,4.2,1.4,0.2,setosa | ||
35,4.9,3.1,1.5,0.1,setosa | ||
36,5.0,3.2,1.2,0.2,setosa | ||
37,5.5,3.5,1.3,0.2,setosa | ||
38,4.9,3.1,1.5,0.1,setosa | ||
39,4.4,3.0,1.3,0.2,setosa | ||
40,5.1,3.4,1.5,0.2,setosa | ||
41,5.0,3.5,1.3,0.3,setosa | ||
42,4.5,2.3,1.3,0.3,setosa | ||
43,4.4,3.2,1.3,0.2,setosa | ||
44,5.0,3.5,1.6,0.6,setosa | ||
45,5.1,3.8,1.9,0.4,setosa | ||
46,4.8,3.0,1.4,0.3,setosa | ||
47,5.1,3.8,1.6,0.2,setosa | ||
48,4.6,3.2,1.4,0.2,setosa | ||
49,5.3,3.7,1.5,0.2,setosa | ||
50,5.0,3.3,1.4,0.2,setosa | ||
51,7.0,3.2,4.7,1.4,versicolor | ||
52,6.4,3.2,4.5,1.5,versicolor | ||
53,6.9,3.1,4.9,1.5,versicolor | ||
54,5.5,2.3,4.0,1.3,versicolor | ||
55,6.5,2.8,4.6,1.5,versicolor | ||
56,5.7,2.8,4.5,1.3,versicolor | ||
57,6.3,3.3,4.7,1.6,versicolor | ||
58,4.9,2.4,3.3,1.0,versicolor | ||
59,6.6,2.9,4.6,1.3,versicolor | ||
60,5.2,2.7,3.9,1.4,versicolor | ||
61,5.0,2.0,3.5,1.0,versicolor | ||
62,5.9,3.0,4.2,1.5,versicolor | ||
63,6.0,2.2,4.0,1.0,versicolor | ||
64,6.1,2.9,4.7,1.4,versicolor | ||
65,5.6,2.9,3.6,1.3,versicolor | ||
66,6.7,3.1,4.4,1.4,versicolor | ||
67,5.6,3.0,4.5,1.5,versicolor | ||
68,5.8,2.7,4.1,1.0,versicolor | ||
69,6.2,2.2,4.5,1.5,versicolor | ||
70,5.6,2.5,3.9,1.1,versicolor | ||
71,5.9,3.2,4.8,1.8,versicolor | ||
72,6.1,2.8,4.0,1.3,versicolor | ||
73,6.3,2.5,4.9,1.5,versicolor | ||
74,6.1,2.8,4.7,1.2,versicolor | ||
75,6.4,2.9,4.3,1.3,versicolor | ||
76,6.6,3.0,4.4,1.4,versicolor | ||
77,6.8,2.8,4.8,1.4,versicolor | ||
78,6.7,3.0,5.0,1.7,versicolor | ||
79,6.0,2.9,4.5,1.5,versicolor | ||
80,5.7,2.6,3.5,1.0,versicolor | ||
81,5.5,2.4,3.8,1.1,versicolor | ||
82,5.5,2.4,3.7,1.0,versicolor | ||
83,5.8,2.7,3.9,1.2,versicolor | ||
84,6.0,2.7,5.1,1.6,versicolor | ||
85,5.4,3.0,4.5,1.5,versicolor | ||
86,6.0,3.4,4.5,1.6,versicolor | ||
87,6.7,3.1,4.7,1.5,versicolor | ||
88,6.3,2.3,4.4,1.3,versicolor | ||
89,5.6,3.0,4.1,1.3,versicolor | ||
90,5.5,2.5,4.0,1.3,versicolor | ||
91,5.5,2.6,4.4,1.2,versicolor | ||
92,6.1,3.0,4.6,1.4,versicolor | ||
93,5.8,2.6,4.0,1.2,versicolor | ||
94,5.0,2.3,3.3,1.0,versicolor | ||
95,5.6,2.7,4.2,1.3,versicolor | ||
96,5.7,3.0,4.2,1.2,versicolor | ||
97,5.7,2.9,4.2,1.3,versicolor | ||
98,6.2,2.9,4.3,1.3,versicolor | ||
99,5.1,2.5,3.0,1.1,versicolor | ||
100,5.7,2.8,4.1,1.3,versicolor | ||
101,6.3,3.3,6.0,2.5,virginica | ||
102,5.8,2.7,5.1,1.9,virginica | ||
103,7.1,3.0,5.9,2.1,virginica | ||
104,6.3,2.9,5.6,1.8,virginica | ||
105,6.5,3.0,5.8,2.2,virginica | ||
106,7.6,3.0,6.6,2.1,virginica | ||
107,4.9,2.5,4.5,1.7,virginica | ||
108,7.3,2.9,6.3,1.8,virginica | ||
109,6.7,2.5,5.8,1.8,virginica | ||
110,7.2,3.6,6.1,2.5,virginica | ||
111,6.5,3.2,5.1,2.0,virginica | ||
112,6.4,2.7,5.3,1.9,virginica | ||
113,6.8,3.0,5.5,2.1,virginica | ||
114,5.7,2.5,5.0,2.0,virginica | ||
115,5.8,2.8,5.1,2.4,virginica | ||
116,6.4,3.2,5.3,2.3,virginica | ||
117,6.5,3.0,5.5,1.8,virginica | ||
118,7.7,3.8,6.7,2.2,virginica | ||
119,7.7,2.6,6.9,2.3,virginica | ||
120,6.0,2.2,5.0,1.5,virginica | ||
121,6.9,3.2,5.7,2.3,virginica | ||
122,5.6,2.8,4.9,2.0,virginica | ||
123,7.7,2.8,6.7,2.0,virginica | ||
124,6.3,2.7,4.9,1.8,virginica | ||
125,6.7,3.3,5.7,2.1,virginica | ||
126,7.2,3.2,6.0,1.8,virginica | ||
127,6.2,2.8,4.8,1.8,virginica | ||
128,6.1,3.0,4.9,1.8,virginica | ||
129,6.4,2.8,5.6,2.1,virginica | ||
130,7.2,3.0,5.8,1.6,virginica | ||
131,7.4,2.8,6.1,1.9,virginica | ||
132,7.9,3.8,6.4,2.0,virginica | ||
133,6.4,2.8,5.6,2.2,virginica | ||
134,6.3,2.8,5.1,1.5,virginica | ||
135,6.1,2.6,5.6,1.4,virginica | ||
136,7.7,3.0,6.1,2.3,virginica | ||
137,6.3,3.4,5.6,2.4,virginica | ||
138,6.4,3.1,5.5,1.8,virginica | ||
139,6.0,3.0,4.8,1.8,virginica | ||
140,6.9,3.1,5.4,2.1,virginica | ||
141,6.7,3.1,5.6,2.4,virginica | ||
142,6.9,3.1,5.1,2.3,virginica | ||
143,5.8,2.7,5.1,1.9,virginica | ||
144,6.8,3.2,5.9,2.3,virginica | ||
145,6.7,3.3,5.7,2.5,virginica | ||
146,6.7,3.0,5.2,2.3,virginica | ||
147,6.3,2.5,5.0,1.9,virginica | ||
148,6.5,3.0,5.2,2.0,virginica | ||
149,6.2,3.4,5.4,2.3,virginica | ||
150,5.9,3.0,5.1,1.8,virginica |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
""" | ||
Copyright 2024 DataRobot, Inc. and its affiliates. | ||
All rights reserved. | ||
This is proprietary source code of DataRobot, Inc. and its affiliates. | ||
Released under the terms of DataRobot Tool and Utility Agreement. | ||
""" | ||
|
||
import logging | ||
import multiprocessing | ||
from http import HTTPStatus | ||
from multiprocessing import Process | ||
from pathlib import Path | ||
|
||
import pytest | ||
from flask import Flask, request, send_file | ||
|
||
multiprocessing.set_start_method("fork") | ||
|
||
|
||
TEST_DIR = Path(__file__).parent.parent | ||
logger = logging.getLogger("datarobot.sap.integration") | ||
|
||
|
||
@pytest.fixture(scope="session") | ||
def model_packages(): | ||
return { | ||
"iris_multiclass_package": { | ||
"details": { | ||
"id": "iris_multiclass_package", | ||
"name": "Multiclass Model", | ||
"modelId": "668c763b57e16e20e29e67e", | ||
"target": { | ||
"name": "Species", | ||
"type": "multiclass", | ||
"classNames": ["viginica c g", "versicolor", "setosa color"], | ||
}, | ||
}, | ||
"model_dataset": TEST_DIR / "data" / "mlops-example-iris-samples.csv", | ||
"model_jar": TEST_DIR / "data" / "ScoringCodeIrisSamples.jar", | ||
}, | ||
"10k_diabetes_package": { | ||
"details": { | ||
"id": "10k_diabetes_package", | ||
"name": "Binary Model", | ||
"modelId": "668c763b57e16e20e29e67e", | ||
"target": { | ||
"name": "readmitted", | ||
"type": "binary", | ||
"classNames": ["True", "False"], | ||
}, | ||
}, | ||
"model_dataset": TEST_DIR / "data" / "mlops-example-10k-diabetes.csv", | ||
"model_jar": TEST_DIR / "data" / "CodeGen10KDiabetes.jar", | ||
}, | ||
} | ||
|
||
|
||
@pytest.fixture(scope="session") | ||
def mock_dr_app_port(): | ||
return 33993 | ||
|
||
|
||
@pytest.fixture | ||
def mock_dr_app(model_packages, mock_dr_app_port): | ||
app = Flask(__name__) | ||
|
||
@app.route("/api/v2/version/", methods=["GET"]) | ||
def get_version(): | ||
version = {"major": 2, "minor": 35, "versionString": "2.35.0"} | ||
return version, HTTPStatus.OK | ||
|
||
@app.route("/api/v2/modelPackages/<model_package_id>/", methods=["GET"]) | ||
def get_model_packages(model_package_id): | ||
return model_packages.get(model_package_id, {}).get("details") | ||
|
||
@app.route( | ||
"/api/v2/status/<model_package_id>/", | ||
methods=["GET"], | ||
) | ||
def model_pacakge_builds_status(model_package_id): | ||
download_url = ( | ||
f"{request.host_url}api/v2/modelPackages/{model_package_id}/download/" | ||
) | ||
return {}, HTTPStatus.SEE_OTHER, {"Location": download_url} | ||
|
||
@app.route( | ||
"/api/v2/modelPackages/<model_package_id>/download/", | ||
methods=["GET"], | ||
) | ||
def model_pacakge_builds_download(model_package_id): | ||
model_jar_filename = model_packages.get(model_package_id, {}).get("model_jar") | ||
return send_file( | ||
str(model_jar_filename), as_attachment=True, download_name="model.jar" | ||
) | ||
|
||
@app.route( | ||
"/api/v2/modelPackages/<model_package_id>/scoringCodeBuilds/", methods=["POST"] | ||
) | ||
def model_pacakge_builds(model_package_id): | ||
status_url = f"{request.host_url}api/v2/status/{model_package_id}/" | ||
return "", HTTPStatus.ACCEPTED, {"location": status_url} | ||
|
||
def start_app(): | ||
app.run(host="0.0.0.0", port=mock_dr_app_port) | ||
|
||
server = Process(target=start_app) | ||
server.start() | ||
|
||
yield | ||
|
||
logger.info("Shutting down mock server") | ||
server.terminate() |
Oops, something went wrong.