Client for OpenMeter: Real-Time and Scalable Usage Metering
Project description
OpenMeter Python SDK
Prerequisites
Python version: >= 3.9
Install
The Python SDK is in preview mode.
pip install -e "git+https://github.com/openmeterio/openmeter.git@main#egg=openmeter&subdirectory=api/client/python"
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))
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.0b19.tar.gz
(32.6 kB
view hashes)
Built Distribution
Close
Hashes for openmeter-1.0.0b19-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d658dd5c82de6b25658502ea69e0915af234ad3fc4a61c447a2065bd299d0a86 |
|
MD5 | a9c896938a703590975b7f51b3622930 |
|
BLAKE2b-256 | 6057b0970ecebffa11c751a912b14ab5c2de026f277ad3e8ee2a9079e09c3a28 |