Machine Learning

سریال‌سازی مدل همراه با متادیتای ردیابی

یه فایل .joblib لخت یه بمب ساعتیه: وقتی نسخه، تاریخ، hash داده‌ها، متریک‌ها و ستون‌های موردانتظار رو توی همون artefact بذاری، هر مدل قابل ممیزی میشه.

کاربرد

اینکه توی 30 ثانیه جواب این سؤال رو بدی: «این مدلِ توی prod روی چی آموزش دیده و چقدر می‌ارزید؟»

پیش‌نیازها

joblib, scikit-learn

Python
import hashlib
import json
from datetime import datetime, timezone

import joblib
import sklearn

donnees_hash = hashlib.sha256(
    X_train.to_csv(index=False).encode()
).hexdigest()[:16]

bundle = {
    "pipeline": pipe,
    "meta": {
        "version": "2.4.0",
        "entraine_le": datetime.now(timezone.utc).isoformat(),
        "sklearn": sklearn.__version__,
        "hash_donnees": donnees_hash,
        "n_train": len(X_train),
        "colonnes": list(X_train.columns),
        "metriques": {"auc_cv": 0.812, "ap_cv": 0.341},
    },
}
joblib.dump(bundle, "modele_v2.4.0.joblib", compress=3)

charge = joblib.load("modele_v2.4.0.joblib")
print(json.dumps(charge["meta"], indent=2, default=str))

نتیجه

{
  "version": "2.4.0",
  "entraine_le": "2026-06-10T22:14:08.512345+00:00",
  "sklearn": "1.5.2",
  "hash_donnees": "a3f8c91d2e4b7f60",
  "n_train": 48213,
  "colonnes": [
    "age",
    "montant",
    "anciennete_jours"
  ],
  "metriques": {
    "auc_cv": 0.812,
    "ap_cv": 0.341
  }
}
joblibVersioningTraçabilitéMLOps

اسنیپت‌های مرتبط

بازگشت به آزمایشگاه داده