Skip to main content

Aporia Python SDK

Aporia's Python SDK is a powerful tool designed to streamline ML monitoring and observability.

Define your models, monitors, dashboards, segments, custom metrics, and other ML Observability resources as code, just like in Terraform or Pulumi. The SDK also enables you to query metrics from Aporia to integrate with other platforms.

Key Features

  • ML Monitoring as Code: Make it easier to manage and track changes by managing your models, dashboards, segments, and other ML Observability resources as code.
  • CI/CD Integration: Integrate with your CI/CD pipeline to automatically monitor all your models with Aporia.
  • Query Metrics: Fetch metrics directly from Aporia's platform to inform decisions or to use in other applications.
  • Data Source Integration: You can define and integrate multiple types of data sources, like S3, Snowflake, Glue Data Catalog, Databricks, and others. This allows your models to leverage a wide range of data for training and inference.
  • Pythonic Interface: Use the familiar Python programming paradigm to interact with Aporia.

Installation

You can install the Aporia SDK using pip:

pip install aporia

Quickstart

Define models as code

import datetime
import os

from aporia import Aporia, MetricDataset, MetricParameters, TimeRange
import aporia.as_code as aporia

aporia_token = os.environ["APORIA_TOKEN"]
aporia_account = os.environ["APORIA_ACCOUNT"]
aporia_workspace = os.environ["APORIA_WORKSPACE"]

stack = aporia.Stack(
    token=aporia_token,
    account=aporia_account,
    workspace=aporia_workspace,
)

# Your model definition code goes here

stack.apply(yes=True, rollback=False, config_path="config.json")

Query Metrics using the SDK

This example shows how you can use the Aporia SDK to query metrics from a model:

from datetime import datetime
from aporia import (
    Aporia,
    MetricDataset,
    MetricParameters,
    TimeRange,
    DatasetType,
)

aporia_token = os.environ["APORIA_TOKEN"]
aporia_account = os.environ["APORIA_ACCOUNT"]
aporia_workspace = os.environ["APORIA_WORKSPACE"]

aporia_client = Aporia(
    token=aporia_token,
    account_name=aporia_account,
    workspace_name=aporia_workspace,
)

last_week_dataset = MetricDataset(
    dataset_type=DatasetType.SERVING,
    time_range=TimeRange(
        start=datetime.now() - datetime.timedelta(days=7),
        end=datetime.now(),
    ),
)

metrics = aporia_client.query_metrics(
    model_id=model_id,
    metrics=[
        MetricParameters(
            dataset=MetricDataset(dataset_type=DatasetType.SERVING),
            name="count",
        ),
    ],
)

print(f"The model had {metrics[0]} predictions last week")

Refer to the official Aporia documentation for detailed information on how to use the SDK.

Development

This package uses Poetry for dependency management. To install dependencies, use:

poetry install

Metadata

Release files for aporia 3.38.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aporia 3.38.0
File Size Uploaded
aporia-3.38.0.tar.gz 45.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aporia 3.38.0
File Interpreter ABI Platform
aporia-3.38.0-py3-none-any.whl Python 3 none any Details

Total release size: 112.7 kB

Release files / aporia-3.38.0.tar.gz

Download URL aporia-3.38.0.tar.gz
Size 45.2 kB
Tags Source
SHA-256 checksum
How to use checksums
7c21c1da388bf289265e79503dbda665dd41d0b81c0ca1c800608511992257e8
BLAKE2b-256 checksum
How to use checksums
ffd4d1e4c4d6bbd5f1a5f925f9dc02c3f1d80bea712d3aa7d7b1b2d9e4d65542
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.0.1 CPython/3.10.16 Linux/6.5.0-1025-azure

Release files / aporia-3.38.0-py3-none-any.whl

Download URL aporia-3.38.0-py3-none-any.whl
Size 67.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8e42f08bb3df4a2987a36d73337ec418d6eeb9dfb4dedb95393788d15396d5f5
BLAKE2b-256 checksum
How to use checksums
340f6729eca142786651790bf03f0205b1737e787dc11f4d58960e1140eb072f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.0.1 CPython/3.10.16 Linux/6.5.0-1025-azure

Release history Release notifications | RSS feed

This release

3.38.0 This release

2 release files

3.37.0

2 release files

3.35.0

2 release files

3.34.0

2 release files

3.33.0

2 release files

3.32.0

2 release files

3.31.0

2 release files

3.30.0

2 release files

3.29.0

2 release files

3.28.0

2 release files

3.27.0

2 release files

3.26.0

2 release files

3.25.0

2 release files

3.23.0

2 release files

3.22.0

2 release files

3.21.0

2 release files

3.17.0

2 release files

3.16.0

2 release files

3.15.0

2 release files

3.14.0

2 release files

3.13.0

2 release files

3.12.0

2 release files

3.8.0

2 release files

3.7.0

2 release files

3.6.0

2 release files

3.5.0

2 release files

3.4.0

2 release files

3.3.0

2 release files

3.2.0

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.18.0

2 release files

2.15.0

2 release files

2.13.0

2 release files

2.12.0

2 release files

2.11.0

2 release files

2.9.0

2 release files

2.7.0

2 release files

2.6.0

2 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.9

2 release files

2.0.8

2 release files

2.0.5

2 release files

2.0.4

2 release files

1.0.96

2 release files

1.0.94

2 release files

1.0.87

2 release files

1.0.86

2 release files

1.0.85

2 release files

1.0.84

2 release files

1.0.79

2 release files

1.0.78

2 release files

1.0.77

2 release files

1.0.75

2 release files

1.0.73

2 release files

1.0.71

2 release files

1.0.69

2 release files

1.0.67

2 release files

1.0.64

2 release files

1.0.63

2 release files

1.0.60

2 release files

1.0.59

2 release files

1.0.58

2 release files

1.0.57

2 release files

1.0.56

2 release files

1.0.53

2 release files

1.0.50

2 release files

1.0.49

2 release files

1.0.48

2 release files

1.0.33

2 release files

1.0.25

2 release files

1.0.24

2 release files

1.0.21

2 release files

1.0.20

2 release files

1.0.16

2 release files

1.0.15

2 release files

1.0.7

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.1

2 release files

0.1.0

2 release 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