Skip to main content

A client library for accessing InteractiveAI

Project description

InteractiveAI Python SDK

MIT License PyPI Version

The official Python SDK for InteractiveAI - an observability platform for LLM applications. This SDK provides tracing, automatic instrumentation for popular LLM frameworks, and direct API access to InteractiveAI's features.

Installation

From PyPI (Production)

Install the latest stable release:

pip install interactiveai

With optional integrations:

# With OpenAI instrumentation
pip install "interactiveai[openai]"

In requirements.txt:

interactiveai>=4.0.0
# or with extras
interactiveai[openai]>=4.0.0

In pyproject.toml (Poetry):

[tool.poetry.dependencies]
interactiveai = "^4.0.0"
# or with extras
interactiveai = { version = "^4.0.0", extras = ["openai"] }

In pyproject.toml (pip/uv):

[project]
dependencies = [
    "interactiveai>=4.0.0",
]

# or with extras
[project.optional-dependencies]
llm = ["interactiveai[openai]>=4.0.0"]

From GitHub (Internal Development)

Install a specific tagged version:

pip install git+https://github.com/InteractiveAI/interactiveai-python-sdk.git@v4.1.0.dev1

Install from the main branch:

pip install git+https://github.com/InteractiveAI/interactiveai-python-sdk.git@main

In requirements.txt:

# Specific tag
interactiveai @ git+https://github.com/InteractiveAI/interactiveai-python-sdk.git@v4.1.0.dev1

# Main branch (latest)
interactiveai @ git+https://github.com/InteractiveAI/interactiveai-python-sdk.git@main

In pyproject.toml (Poetry):

[tool.poetry.dependencies]
# Specific tag
interactiveai = { git = "https://github.com/InteractiveAI/interactiveai-python-sdk.git", tag = "v4.1.0.dev1" }

# Main branch
interactiveai = { git = "https://github.com/InteractiveAI/interactiveai-python-sdk.git", branch = "main" }

Quick Start

Basic Usage

from interactiveai import Interactive

# Initialize the client (uses environment variables by default)
client = Interactive()

# Create a trace
trace = client.trace(name="my-llm-app")

# Create a span within the trace
span = trace.span(name="llm-call")

# ... your LLM operations ...

# End the span with output
span.end(output={"response": "Hello, world!"})

# Flush to ensure all data is sent
client.flush()

Using the @observe Decorator

from interactiveai import observe

@observe()
def my_llm_function(prompt: str) -> str:
    # Your LLM logic here
    response = call_llm(prompt)
    return response

# The function is automatically traced
result = my_llm_function("Hello!")

OpenAI Integration

from interactiveai.openai import openai

# Use openai as normal - all calls are automatically traced
response = openai.chat.completions.create(
    model="gpt-4",
    messages=[{"role": "user", "content": "Hello!"}]
)

Configuration

The SDK is configured via environment variables:

Variable Description Default
INTERACTIVEAI_PUBLIC_KEY Your InteractiveAI public API key Required
INTERACTIVEAI_SECRET_KEY Your InteractiveAI secret API key Required
INTERACTIVEAI_HOST API endpoint URL https://cloud.interactive.ai
INTERACTIVEAI_DEBUG Enable debug logging false
INTERACTIVEAI_TRACING_ENABLED Enable/disable tracing true
INTERACTIVEAI_SAMPLE_RATE Sampling rate for traces (0.0-1.0) 1.0

Documentation

For detailed documentation, guides, and API reference, visit:

License

MIT License - see LICENSE for details.

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

interactiveai-1.0.5.tar.gz (259.5 kB view details)

Uploaded Source

Built Distribution

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

interactiveai-1.0.5-py3-none-any.whl (452.4 kB view details)

Uploaded Python 3

File details

Details for the file interactiveai-1.0.5.tar.gz.

File metadata

  • Download URL: interactiveai-1.0.5.tar.gz
  • Upload date:
  • Size: 259.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for interactiveai-1.0.5.tar.gz
Algorithm Hash digest
SHA256 157da5b55199d2273350febfe1ab7e08d4b2d8ec89b80fe38cc3cfab1ad1beb9
MD5 b9b058323580d2f04ea27a9f170b5545
BLAKE2b-256 cb54cf487493c47f6e3bd1516e60f67451995989bd99f696b8578b5bf2afe7ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for interactiveai-1.0.5.tar.gz:

Publisher: release.yml on Interactive-AI-Labs/interactiveai-python-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file interactiveai-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: interactiveai-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 452.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for interactiveai-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 6bd5894a0257777affc2cbf2981e4f32f2b9a361ee13e082768cca8a7696ba3c
MD5 6b54fce61ba8b76f2e2980cc9654814a
BLAKE2b-256 0d71815a176b96b53803e0c8fec43cae99086f5bb3895aca135f4a8fe7bb7cd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for interactiveai-1.0.5-py3-none-any.whl:

Publisher: release.yml on Interactive-AI-Labs/interactiveai-python-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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