Skip to main content

AI Detection & Response SDK - OpenTelemetry-based observability for LLM applications

Project description

AI Detection & Response Python-based SDK for monitoring agent workflows, language model execution, tool calls, and relevant data sources.

Features

  • Automatic tracing: Works with any language model provider (OpenAI, Anthropic, custom)
  • Zero code changes: Just initialize and go
  • Comprehensive telemetry: Tracks tools, models, prompts, reasoning
  • Simple API: 2 lines of code

Supported Frameworks

  • OpenAI SDK
  • Anthropic SDK
  • Google (Gemini) SDK
  • AWS Bedrock SDK
  • Azure Foundry SDK
  • LiteLLM SDK
  • LangChain

Installation

pip install evoke-sdk

Quick Start

import evoke

# Initialize once at startup
evoke.init(api_key="evoke_pk_your_api_key")

# All LLM calls are now automatically traced!
from openai import OpenAI
client = OpenAI()
response = client.chat.completions.create(
    model="gpt-4",
    messages=[{"role": "user", "content": "Hello!"}]
)

What Gets Tracked

  • Models: Which models were used (gpt-4, claude-3, etc.)
  • Prompts & Responses: Full input and output data
  • Tools: Which tools/functions were called
  • Data Sources: Which vector stores/retrievers were accessed
  • Tokens: Input/output/cached token counts
  • Timing: Duration and timestamps
  • Errors: Exceptions and stack traces

Optional: Explicit Tracing

Use the @guard decorator for high-level workflows:

@evoke.guard(name="customer_support_agent")
def handle_customer_query(query: str):
    # Your agent logic
    return agent.run(query)

Optional: Add Custom Context

Link custom business values to track custom events and create custom detections:

@evoke.guard(name="process_order")
def process_order(order_id: str, user_id: str):
    evoke.add_context(
        user_id=user_id,
        order_id=order_id,
        environment="production"
    )
    return process()

Flush Before Exit

Ensure all data is sent before your app exits:

# At the end of your script
evoke.flush()

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

evoke_sdk-0.2.0.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

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

evoke_sdk-0.2.0-py3-none-any.whl (20.9 kB view details)

Uploaded Python 3

File details

Details for the file evoke_sdk-0.2.0.tar.gz.

File metadata

  • Download URL: evoke_sdk-0.2.0.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for evoke_sdk-0.2.0.tar.gz
Algorithm Hash digest
SHA256 33c24e9e045415e5992c9f245a90ffb7a728aced955e0d39ecb2c7a3c320d652
MD5 9514aae5ccafbd2ea4f2204667b2a983
BLAKE2b-256 b25093e64b1d20f654023e5229130e99649cde248361a83f12fa1c5966cee816

See more details on using hashes here.

File details

Details for the file evoke_sdk-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: evoke_sdk-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 20.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for evoke_sdk-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5895fbeeb614b7fcf8bba96a94e86a049bc17a9ad7ed3d06a6ae9db4346e8cac
MD5 38b88556110aa0aa0785d6d477a58e68
BLAKE2b-256 9ff9526dce95c5ba02b12e377717316cddb342ca1bf8f9d8443bfef3a4e34aa2

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