技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
mlflow-3【数据与研究】MLflow 3 (open-source, pinned to 3.15) for classic-ML MLOps — logging and registering models, promoting versions across dev/staging/prod, standing up a tracking server, evaluating with gates, and serving. Corrects the MLflow 2-era defaults a model reaches for (artifact_path, registry stages and get_latest_versions, top-level mlflow.evaluate with base…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Library-reference skill for open-source MLflow 3 — 24 rules across 6 categories. MLflow 3 restructured the library around the model as a first-class entity, deprecated the registry-stage vocabulary, replaced the serving stack, and changed storage and serialization defaults; a model trained on the vast MLflow 2 corpus reproduces the old idioms fluently, which is exactly why each of these rules exists. There is no rule for things a capable model already gets right.
Scope is classic-ML MLOps on self-hosted OSS MLflow. GenAI features (mlflow.genai, tracing, prompt registry, AI Gateway) appear only where confusing them with the classic APIs is itself the trap. Databricks/Unity-Catalog-only features (Deployment Jobs) are flagged as out of scope where a model might scaffold them against OSS.
Pinned to mlflow 3.15.1 (Python ≥ 3.10). API claims were verified against the unpacked mlflow / mlflow-skinny 3.15.1 wheels.
copy_model_version, tags, webhooks)mlflow server — backend store, artifact store, authmlflow models serve, build-docker, /invocations clients, pre-deploy validationartifact_path, mlflow.evaluate, ./mlruns) to MLflow 3| # | Category | Prefix | Covers |
|---|---|---|---|
| 1 | Model Logging & LoggedModel | log- | name= not artifact_path, models decoupled from runs, input-example-driven signatures, register-at-log-time, skops/torch.export serialization defaults, model-linked metrics and search_logged_models |
| 2 | Model Registry & Promotion | reg- | Aliases replacing stages, alias-based lookup, per-environment registered models with copy_model_version, gate state in tags, OSS webhooks vs Databricks-only Deployment Jobs |
| 3 | Tracking Backend & Server | track- | sqlite:///mlflow.db default, database-only server backends and migrate-filestore, proxied artifacts topology, telemetry opt-out, autolog input-example default |
| 4 | Serving | serve- | FastAPI scoring server (MLServer removed), /invocations payload contract, mlflow.models.predict pre-deploy validation, build-docker for clusters |
| 5 | Evaluation & Gates | eval- | mlflow.models.evaluate vs mlflow.genai.evaluate, threshold gating with validate_evaluation_results after baseline_model's removal |
| 6 | Environment & Reproducibility | env- | Generated environment files as the serving source of truth, dependency pinning and uv capture, bundling custom code with code_paths |
log-name-not-artifact-path — name= creates a searchable LoggedModel; artifact_path is deprecated and warnslog-models-are-not-run-artifacts — no start_run required; artifacts live under models/<model_id>/, addressed by model_urilog-input-example-infers-signature — input_example= infers the signature and validates serving input at log timelog-register-at-log-time — registered_model_name= or register_model(model_info.model_uri), never composed runs:/ pathslog-serialization-defaults-changed — sklearn/lightgbm write skops, pytorch writes torch.export, xgboost writes UBJSONlog-link-metrics-search-models — log_metric(model_id=, dataset=) and search_logged_models rank models without run bookkeepingreg-aliases-not-stages — set_registered_model_alias + models:/name@alias replace the deprecated stage APIsreg-resolve-by-alias-not-latest-versions — deployment code resolves an assigned alias, never get_latest_versions or /latestreg-per-environment-registered-models — dev.*/staging.*/prod.* models with copy_model_version as the promotion primitivereg-gate-state-in-tags — validation_status tags carry the review state stages used to implyreg-webhooks-oss-deployment-jobs-not — registry webhooks are OSS; Deployment Jobs are Databricks-onlytrack-default-is-sqlite-not-mlruns — the local default is sqlite:///mlflow.db, not ./mlrunstrack-server-needs-database-backend — the file store raises at server startup since 3.13; migrate-filestore + db upgradetrack-proxied-artifacts-one-credential — server proxies artifacts by default; clients need only MLFLOW_TRACKING_URItrack-telemetry-on-by-default — anonymized telemetry ships on; disable explicitly in production imagestrack-autolog-input-examples-off — autolog(log_input_examples=True) for deployment-candidate modelsserve-fastapi-scoring-server-only — FastAPI/uvicorn is the only scoring server; MLServer and Flask/gunicorn are goneserve-invocations-payload-keys — /invocations takes dataframe_split/dataframe_records/inputs/instances (+ signature-declared params)serve-predict-before-deploy — mlflow.models.predict rebuilds the real env; validate_serving_input is deprecatedserve-build-docker-for-clusters — build-docker is the container path; the Helm chart deploys the tracking server, not modelseval-models-evaluate-split — classic ML uses mlflow.models.evaluate; mlflow.genai.evaluate is a different APIeval-gate-with-validate-evaluation-results — baseline_model is removed; gate with validate_evaluation_results + MetricThresholdenv-generated-files-drive-serving — serving envs rebuild from the generated files; pin via pip_requirements/extra_pip_requirements/uvenv-bundle-custom-code-paths — code_paths/infer_code_paths ship the import graph with the modelRead a reference file when its decision comes up. Each rule names the wrong default it corrects, then shows the canonical way (with an incorrect/correct contrast only where the wrong way is a real trap).
mlflow-mlops-migration — the sibling composition workflow that takes an arbitrary ML codebase through assessment, restructuring, and a dev/staging/prod MLflow 3 setup, citing these rules at each phase| File | Description |
|---|---|
| references/_sections.md | Category definitions and ordering |
| assets/templates/_template.md | Template for new rules |
| metadata.json | Version and source references |