Leon4gr45's picture
Upload folder using huggingface_hub
048b1e8 verified
Raw
History Blame Contribute Delete
1.7 kB
from os import environ
from typing import Optional
import asyncio
from openmeter.aio import Client
from openmeter.models import MeterQueryResult, FilterString
from corehttp.exceptions import HttpResponseError
ENDPOINT: str = environ.get("OPENMETER_ENDPOINT") or "https://openmeter.cloud"
token: Optional[str] = environ.get("OPENMETER_TOKEN")
async def main() -> None:
async with Client(
endpoint=ENDPOINT,
token=token,
) as client:
try:
# Query total values
r: MeterQueryResult = await client.meters.query_json(meter_id_or_slug="tokens_total")
if r.data and len(r.data) > 0:
print("Query total values:", r.data[0].value)
else:
print("Query total values: No data returned")
# Query total values grouped by language
r = await client.meters.query_json(
meter_id_or_slug="tokens_total",
group_by=["model"],
)
print("Query total values grouped by model:")
for row in r.data:
print("\t", row.group_by["model"], ":", row.value)
# Query total values for model=gpt-4o
r = await client.meters.query_json(
meter_id_or_slug="tokens_total",
advanced_meter_group_by_filters={"model": FilterString(eq="gpt-4o")},
)
if r.data and len(r.data) > 0:
print("Query total values for model=gpt-4o:", r.data[0].value)
else:
print("Query total values for model=gpt-4o: No data returned")
except HttpResponseError as e:
print(e)
asyncio.run(main())