Skip to main content

BitPulse

Python Version License PyPI

Production-grade LLM observability for GraphBit workflows.

  • Zero-config automatic tracing for LLM calls and workflows
  • Captures prompts, responses, tokens, latency, errors
  • Sends trace data to your observability API endpoint

Project Info

  • Python: 3.10–3.13
  • License: GraphBit Framework License
  • PyPI: bitpulse
  • PRs: Welcome via GitHub pull requests

Install

pip install bitpulse

Python: 3.10–3.13

What It Does

BitPulse automatically captures detailed trace data from GraphBit LLM clients and workflows and submits it to your observability endpoint for monitoring, analytics, and debugging.

Key Features

  • Automatic tracing for LLM calls and workflows
  • Rich metadata: prompts, responses, tokens, latency, finish reasons, errors
  • Tool-call detection for agent workflows
  • Works with OpenAI and GraphBit internals
  • Type-safe models (Pydantic) and robust async I/O

Quick Start

import asyncio, os
from graphbit import LlmClient, LlmConfig
from bitpulse import AutoTracer

async def main():
    tracer = await AutoTracer.create()
    cfg = LlmConfig.openai(api_key=os.getenv("OPENAI_API_KEY"), model="gpt-4o-mini")
    client = tracer.wrap_client(LlmClient(cfg), cfg)
    resp = await client.complete_full_async("What is GraphBit?", max_tokens=100)
    results = await tracer.send()
    print("sent:", results["sent"], "failed:", results["failed"])

asyncio.run(main())

Configuration

Set environment variables to configure external endpoints:

export BITPULSE_TRACING_API_KEY="your-api-key"
export BITPULSE_TRACEABLE_PROJECT="your-project-name"
# optional
export BITPULSE_TRACING_API_URL="https://your-api-endpoint.com/traces"

License

GraphBit Framework License. See LICENSE.md in the repository.

Trace Data Format Example

Example JSON payload sent to your observability endpoint:

{
    "tracing_api_key": "your-api-key",
    "traceable_project_name": "your-project",
    "run_name": "LlmClient",
    "run_type": "llm",
    "status": "success",
    "input": "Hello, world!",
    "output": "Hi there!",
    "error": null,
    "start_time": "2025-01-01T00:00:00Z",
    "latency": 123.45,
    "tokens": 50,
    "metadata": {
        "model_name": "gpt-4o-mini",
        "provider": "openai",
        "input_tokens": 10,
        "output_tokens": 40,
        "finish_reason": "stop"
    }
}

API Reference

High-level AutoTracer methods:

  • AutoTracer.create(): Initialize tracer
  • wrap_client(llm_client, llm_config): Trace LLM client calls
  • wrap_executor(executor, llm_config): Trace workflow execution
  • send(): Convert and submit captured spans to your endpoint
  • export(): Export captured traces locally

Metadata

Release files for bitpulse 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bitpulse 0.1.3
File Size Uploaded
bitpulse-0.1.3.tar.gz 44.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bitpulse 0.1.3
File Interpreter ABI Platform
bitpulse-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 94.6 kB

Release files / bitpulse-0.1.3.tar.gz

Download URL bitpulse-0.1.3.tar.gz
Size 44.3 kB
Tags Source
SHA-256 checksum
How to use checksums
d56a9e4155ffc61d7079e92d4bee333ef684617c728d66dd30c114d93c6ffe9b
BLAKE2b-256 checksum
How to use checksums
d9624dca6be7db734ae3c04946f21e990984cf3c53d2b08631d75e505fcbb943
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / bitpulse-0.1.3-py3-none-any.whl

Download URL bitpulse-0.1.3-py3-none-any.whl
Size 50.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a63ae97ba05f30378e2de8026b24dba5fd8b70d1b0fc3f1172c3721744e7b0bf
BLAKE2b-256 checksum
How to use checksums
d379c2c4315a0c6022e418b64024a88faad1a366ab4113476115df9feb67338e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page