Skip to main content

comet_mpm

Python SDK for Comet Model Production Monitoring

Installation

pip install comet_mpm --upgrade

To use these command-line functions, you'll need to have your Comet API key set in one of the following two ways.

  1. Environment variables (see below)
  2. Directly as an argument to comet_mpm.API(api_key="...")
export COMET_API_KEY="YOUR-COMET-API-KEY"

Command line

Installing the package provides a comet-mpm command:

comet-mpm audit check   -w WORKSPACE -m MODEL --from 2026-08-01T00:00:00Z --to 2026-09-01T00:00:00Z
comet-mpm audit rows    -w WORKSPACE -m MODEL --from ... --to ... --out audit_august.csv
comet-mpm audit metrics -w WORKSPACE -m MODEL --from ... --to ... --metric-sql "AVG(prediction_probability)" --out metrics_august.csv

audit extracts a compliance / audit-trail dataset — per-prediction rows with timestamps, model version, features, prediction, label, the bucket-level performance metric and the applicable alert threshold — with every export reconciled against the server and described by a manifest. See examples/audit_export/README.md.

API Usage

The comet_mpm package provides a high-level API for interacting with Comet Model Production Monitoring. Here's how to get started:

Initialization

from comet_mpm import API

# Initialize with API key from environment variable
api = API()

# Or initialize with explicit API key
api = API(api_key="YOUR-COMET-API-KEY")

Working with Models

Get a Model by Name

# Get a specific model by workspace and model name
model = api.get_model_by_name("my-workspace", "my-model")

if model:
    print(f"Model ID: {model.model_id}")
    # Get model details
    details = model.get_details()
    print(f"Model details: {details}")
else:
    print("Model not found")

Get the Default Model (Python Panel in Dashboard)

# Get the default model configured for the current panel
model = api.get_model()

if model:
    print(f"Default model ID: {model.model_id}")
else:
    print("No default model configured")

Model Analytics

Once you have a model instance, you can perform various analytics:

Prediction Counts

# Get number of predictions for a time period
predictions_df = model.get_nb_predictions(
    start_date="2024-01-01",
    end_date="2024-01-31",
    interval_type="DAILY"
)
print(predictions_df)

Custom SQL Queries

# Execute custom SQL queries
custom_metric_df = model.get_custom_metric(
    sql="SELECT count(*) FROM model WHERE prediction > 0.5",
    start_date="2024-01-01",
    end_date="2024-01-31",
    interval_type="DAILY",
    filters=["region=us-east", "version=1.0"],
    model_version="1.0.0"
)
print(custom_metric_df)

Feature Analysis

# Get available features
numerical_features = model.get_numerical_features()
categorical_features = model.get_categorical_features()
print(f"Numerical features: {numerical_features}")
print(f"Categorical features: {categorical_features}")

# Feature drift analysis
drift_df = model.get_feature_drift(
    feature_name="age",
    algorithm="EMD",  # Options: "EMD", "PSI", "KL"
    start_date="2024-01-01",
    end_date="2024-01-31",
    interval_type="DAILY"
)
print(drift_df)

# Feature distribution for categorical features
distribution_df = model.get_feature_category_distribution(
    feature_name="region",
    normalize=True,  # Return percentages instead of counts
    start_date="2024-01-01",
    end_date="2024-01-31",
    interval_type="DAILY"
)
print(distribution_df)

# Feature density for numerical features
density_df = model.get_feature_density(
    feature_name="age",
    start_date="2024-01-01",
    end_date="2024-01-31"
)
print(density_df)

# Feature percentiles for numerical features
percentiles_df = model.get_feature_percentiles(
    feature_name="age",
    percentiles=[0, 0.25, 0.5, 0.75, 1.0],
    start_date="2024-01-01",
    end_date="2024-01-31",
    interval_type="DAILY"
)
print(percentiles_df)

Panel Configuration

The API also provides access to panel configuration settings:

# Get panel workspace
workspace = api.get_panel_workspace()
print(f"Panel workspace: {workspace}")

# Get panel dimensions
width = api.get_panel_width()
height = api.get_panel_height()
size = api.get_panel_size()  # Returns (width, height) tuple
print(f"Panel size: {size}")

Complete Example

from comet_mpm import API

# Initialize API
api = API()

# Get a model
model = api.get_model_by_name("my-workspace", "fraud-detection-model")

if model:
    # Get model details
    details = model.get_details()
    print(f"Model: {details['name']}")

    # Analyze predictions over time
    predictions = model.get_nb_predictions(
        start_date="2024-01-01",
        end_date="2024-01-31",
        interval_type="DAILY"
    )

    # Check feature drift for important features
    for feature in ["transaction_amount", "user_age"]:
        drift = model.get_feature_drift(
            feature_name=feature,
            algorithm="EMD",
            start_date="2024-01-01",
            end_date="2024-01-31"
        )
        print(f"Drift for {feature}: {drift}")

    # Get custom metrics
    fraud_rate = model.get_custom_metric(
        sql="SELECT AVG(prediction) FROM model WHERE prediction > 0.5",
        start_date="2024-01-01",
        end_date="2024-01-31",
        interval_type="DAILY"
    )
    print(f"Fraud rate over time: {fraud_rate}")

All methods return pandas DataFrames with metadata stored in the .attrs attribute, making it easy to track the parameters used for each query.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

comet_mpm-1.5.0.tar.gz (82.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

comet_mpm-1.5.0-py3-none-any.whl (108.3 kB view details)

Uploaded Python 3

File details

Details for the file comet_mpm-1.5.0.tar.gz.

File metadata

  • Download URL: comet_mpm-1.5.0.tar.gz
  • Upload date:
  • Size: 82.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for comet_mpm-1.5.0.tar.gz
Algorithm Hash digest
SHA256 11e453d468c36604e74038c4f1cc393de6e85a2b46225e33b6fd135300298163
MD5 e658b0f89a395cffa9526c8644844c2d
BLAKE2b-256 2f18d142c4c24daddf81a90d076094061c1a0e69e83885795ed0f684fa3c44d1

See more details on using hashes here.

Provenance

The following attestation bundles were made for comet_mpm-1.5.0.tar.gz:

Publisher: deploy-package.yml on comet-ml/comet-python-mpm-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file comet_mpm-1.5.0-py3-none-any.whl.

File metadata

  • Download URL: comet_mpm-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 108.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for comet_mpm-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 856cc8940cb6aa231574240f689bc581c2d448c4400cd92ebdb23e0ed307e097
MD5 2288da4d4392584efb0605dcf48e5dec
BLAKE2b-256 917f35071103328f5667c21743132494d08428b4cba42c2b903900070bdf6b1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for comet_mpm-1.5.0-py3-none-any.whl:

Publisher: deploy-package.yml on comet-ml/comet-python-mpm-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.5.0 This release

2 files

1.4.8

2 files

1.4.6

2 files

1.4.4

2 files

1.4.3

2 files

1.4.2

2 files

1.4.1

2 files

1.4.0

2 files

1.3.1

2 files

1.3.0

2 files

1.2.0

2 files

1.1.1

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.0

2 files

0.8.0

2 files

0.7.0

2 files

0.6.0

2 files

0.5.0

2 files

0.4.2

2 files

0.4.1

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page