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.3.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.3-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: buildit_argus-0.1.3.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.3.tar.gz
Algorithm Hash digest
SHA256 f42c010a4ec0e592f8ee48a8a8043ff4f758029b18bc0b22aad606e487435c6a
MD5 f6218348687327b41881811c5a451eb7
BLAKE2b-256 b312dc6d95cfbb20e47ba07b32a17276c171c20f4e89184770f24b3d507bc99a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: buildit_argus-0.1.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 3e8fc92ecc896a3f6a8e090e0b8d80da63503f5b2978aad2c07c5615371ae6d3
MD5 3762a2ea501f23ee846d424cfbef94ad
BLAKE2b-256 b870492f04532bf2d6b980df74f084fa7379d6c762c14487a178acecee52c79e

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