Skip to main content

Client for OpenMeter: Real-Time and Scalable Usage Metering

Project description

OpenMeter Python SDK

[https://pypi.org/project/openmeter](On PyPI)

Prerequisites

Python version: >= 3.9

Install

The Python SDK is in preview mode.

pip install openmeter

Quickstart

The client can be initialized with openmeter.Client():

from os import environ
from openmeter import Client

ENDPOINT = environ.get("OPENMETER_ENDPOINT") or "http://localhost:8888"

# it's recommended to also set the Accept header at the client level
client = Client(
    endpoint=ENDPOINT,
    headers={"Accept": "application/json"},
)

Async client can be initialized by importing the Client from openmeter.aio.

Ingest events:

from cloudevents.http import CloudEvent
from cloudevents.conversion import to_dict

event = CloudEvent(
    attributes={
        "type": "tokens",
        "source": "openmeter-python",
        "subject": "user-id",
    },
    data={
        "prompt_tokens": 5,
        "completion_tokens": 10,
        "total_tokens": 15,
        "model": "gpt-3.5-turbo",
    },
)

resp = client.ingest_events(to_dict(event))

Publish

Update version number in pyproject.toml. Run the following commands:

poetry config pypi-token.pypi {your_pypi_api_token}
poetry publish --build

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

openmeter-1.0.0b50.tar.gz (36.4 kB view details)

Uploaded Source

Built Distribution

openmeter-1.0.0b50-py3-none-any.whl (42.5 kB view details)

Uploaded Python 3

File details

Details for the file openmeter-1.0.0b50.tar.gz.

File metadata

  • Download URL: openmeter-1.0.0b50.tar.gz
  • Upload date:
  • Size: 36.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.12 Linux/6.2.0-1019-azure

File hashes

Hashes for openmeter-1.0.0b50.tar.gz
Algorithm Hash digest
SHA256 96586e063750a7b6f7a9cb11b4dc59ed01fe356168dc3432a2976fea844af2ae
MD5 0b403c07005fac2ab7cddc14c7c88140
BLAKE2b-256 22c9807e08563adc22ba9d1b4998f5d76694017b7559db6f3efa98e18ad25fc9

See more details on using hashes here.

File details

Details for the file openmeter-1.0.0b50-py3-none-any.whl.

File metadata

  • Download URL: openmeter-1.0.0b50-py3-none-any.whl
  • Upload date:
  • Size: 42.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.12 Linux/6.2.0-1019-azure

File hashes

Hashes for openmeter-1.0.0b50-py3-none-any.whl
Algorithm Hash digest
SHA256 ee625da992e19b1b64b30be353892c63f19d6331aed049428102d47478dd6e6f
MD5 e52057367b1143ba4e36d373dd7ec963
BLAKE2b-256 834bd1f43163d8e265042efd6d6fee84da9c678952cc882d8a2e326892c4b26a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page