Skip to main content

Argus observability SDK for Python — tracks per-call cost and latency for Anthropic and OpenAI

Project description

buildit-argus

Track per-call LLM cost and latency for Python apps — powered by the Argus observability dashboard.

Zero dependencies. Works with Anthropic, OpenAI, or any provider via manual tracking.


Installation

pip install buildit-argus

Quick start

import argus

argus.init(
    endpoint='https://api.buildit.sh',
    api_key='bld_live_...',  # Settings → API Keys on app.buildit.sh
)

Usage

Anthropic

Wrap your Anthropic client once — every messages.create call is tracked automatically.

import anthropic
import argus

argus.init(endpoint='https://api.buildit.sh', api_key='bld_live_...')

client = argus.wrap_anthropic(anthropic.Anthropic())

msg = client.messages.create(
    model='claude-haiku-4-5-20251001',
    max_tokens=1024,
    messages=[{'role': 'user', 'content': 'Hello'}],
)

OpenAI

from openai import OpenAI
import argus

argus.init(endpoint='https://api.buildit.sh', api_key='bld_live_...')

client = argus.wrap_openai(OpenAI())

res = client.chat.completions.create(
    model='gpt-4o-mini',
    messages=[{'role': 'user', 'content': 'Hello'}],
)

Manual tracking

result = argus.track(
    provider='my-provider',
    model='my-model-v1',
    fn=lambda: my_llm_call(),
    op_name='chat',  # optional label shown in dashboard
)

API

argus.init(endpoint, api_key)

Param Default Description
endpoint ARGUS_ENDPOINT env var Your Argus ingest URL
api_key ARGUS_KEY env var API key from buildit.sh

argus.wrap_anthropic(client)

Patches client.messages.create to auto-track every call. Returns the same client.

argus.wrap_openai(client)

Patches client.chat.completions.create to auto-track every call. Returns the same client.

argus.track(provider, model, fn, op_name, options)

Param Type Description
provider str Provider name (e.g. anthropic, openai)
model str Model ID
fn callable The call to wrap
op_name str Optional label shown in dashboard
options list Optional feature flags

Environment variables

export ARGUS_ENDPOINT=https://api.buildit.sh
export ARGUS_KEY=bld_live_...

If set, you don't need to call argus.init().


Get an API key

  1. Sign in at app.buildit.sh
  2. Go to Settings → API Keys
  3. Click Create key
  4. Pass it to argus.init() or set ARGUS_KEY in your environment

License

MIT

Project details


Download files

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

Source Distribution

buildit_argus-0.1.6.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

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

buildit_argus-0.1.6-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file buildit_argus-0.1.6.tar.gz.

File metadata

  • Download URL: buildit_argus-0.1.6.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for buildit_argus-0.1.6.tar.gz
Algorithm Hash digest
SHA256 fb8605e5c6020160c3ee0b2213c452dcce89ba722792c9b67b548f72d906a89b
MD5 2089144f405ad1c3a67d8c18e3a6e505
BLAKE2b-256 c8d2aab8d323523b50218b1924d3b1a61011d7bb69f710e7dd0c6ee5e7f7d66a

See more details on using hashes here.

File details

Details for the file buildit_argus-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: buildit_argus-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for buildit_argus-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 c5efb9942abf4444ef176a6074298b75bb7030abc032120ecc604f97c70c414c
MD5 30f5cc85c0c412fe129c5e82267d5cd5
BLAKE2b-256 08e1bb6021eefe2a78376ed4daa0e5929ddfc4b9f58c1cac4fed91c417545ac5

See more details on using hashes here.

Supported by

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