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.4.tar.gz (4.7 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.4-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for buildit_argus-0.1.4.tar.gz
Algorithm Hash digest
SHA256 eae2a8655d78e152ac960409558f30587077e6ee890dbe4f03356c07cc0518b0
MD5 8ad9d7d31a2556dd26dee6d8a05698eb
BLAKE2b-256 696b490ee99308bd6f30d846b0f0f311ab816aa7389735be774886edc6725bcf

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for buildit_argus-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 92e4d0326cd29b7142f4d401a2fe9fb54de514c50b92ddf3a07f32122236eeb2
MD5 9bb3402af7e7795734e2b2eafb1310b6
BLAKE2b-256 b61456ec9bee6786922c1697540582f6165512044697929d39f32cbb45730ee0

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