Spaces:
Sleeping
Sleeping
ajout evidently
Browse files- Dockerfile +1 -1
- evidently_cloud.py +12 -25
- requirements.txt +0 -2
Dockerfile
CHANGED
|
@@ -1,5 +1,5 @@
|
|
| 1 |
# Image de base
|
| 2 |
-
FROM python:3.
|
| 3 |
|
| 4 |
# Définir le répertoire de travail
|
| 5 |
WORKDIR /app
|
|
|
|
| 1 |
# Image de base
|
| 2 |
+
FROM python:3.10-slim
|
| 3 |
|
| 4 |
# Définir le répertoire de travail
|
| 5 |
WORKDIR /app
|
evidently_cloud.py
CHANGED
|
@@ -5,12 +5,8 @@ import boto3
|
|
| 5 |
import datetime
|
| 6 |
import json
|
| 7 |
import joblib
|
| 8 |
-
import
|
| 9 |
-
|
| 10 |
-
from evidently.report import Report
|
| 11 |
-
from evidently.metric_preset import DataDriftPreset, DataQualityPreset
|
| 12 |
-
from datetime import timedelta
|
| 13 |
-
from sqlalchemy import create_engine
|
| 14 |
|
| 15 |
|
| 16 |
def run_evident_cloud():
|
|
@@ -25,28 +21,19 @@ def run_evident_cloud():
|
|
| 25 |
key = f"evidently/data_drift-{pd.Timestamp.utcnow().date()}.json"
|
| 26 |
|
| 27 |
content = s3.get_object(os.getenv("S3_BUCKET"),key)
|
| 28 |
-
report_dict = json.loads(content["Body"].read()
|
| 29 |
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
|
| 34 |
|
| 35 |
-
|
| 36 |
|
| 37 |
-
|
| 38 |
|
| 39 |
-
|
| 40 |
-
|
| 41 |
-
url="https://app.evidently.cloud",
|
| 42 |
-
)
|
| 43 |
|
| 44 |
-
|
| 45 |
-
project_id=os.gentenv('PROJECT_ID'),
|
| 46 |
-
report=report_dict
|
| 47 |
-
)
|
| 48 |
|
| 49 |
-
return {
|
| 50 |
-
"status": "success",
|
| 51 |
-
"message": "Report envoyé à Evidently Cloud"
|
| 52 |
-
}
|
|
|
|
| 5 |
import datetime
|
| 6 |
import json
|
| 7 |
import joblib
|
| 8 |
+
import requests
|
| 9 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
|
| 11 |
|
| 12 |
def run_evident_cloud():
|
|
|
|
| 21 |
key = f"evidently/data_drift-{pd.Timestamp.utcnow().date()}.json"
|
| 22 |
|
| 23 |
content = s3.get_object(os.getenv("S3_BUCKET"),key)
|
| 24 |
+
report_dict = json.loads(content["Body"].read())
|
| 25 |
|
| 26 |
+
headers = {
|
| 27 |
+
"Authorization": f"Bearer {os.environ['EVIDENTLY_TOKEN']}",
|
| 28 |
+
"Content-Type": "application/json",
|
| 29 |
+
}
|
| 30 |
|
| 31 |
+
url = f"https://app.evidently.cloud/api/v1/projects/{os.environ['PROJECT_ID']}/reports"
|
| 32 |
|
| 33 |
+
r = requests.post(url, json=report_dict, headers=headers)
|
| 34 |
|
| 35 |
+
if r.status_code != 200:
|
| 36 |
+
raise RuntimeError(f"Evidently error: {r.text}")
|
|
|
|
|
|
|
| 37 |
|
| 38 |
+
return {"status": "ok", "message": "Report envoyé à Evidently Cloud"}
|
|
|
|
|
|
|
|
|
|
| 39 |
|
|
|
|
|
|
|
|
|
|
|
|
requirements.txt
CHANGED
|
@@ -19,5 +19,3 @@ tqdm
|
|
| 19 |
python-dotenv
|
| 20 |
pyyaml
|
| 21 |
psycopg2-binary
|
| 22 |
-
evidently==0.7.4
|
| 23 |
-
evidently-cloud
|
|
|
|
| 19 |
python-dotenv
|
| 20 |
pyyaml
|
| 21 |
psycopg2-binary
|
|
|
|
|
|