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

Uploaded Python 3

File details

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

File metadata

  • Download URL: interactiveai-1.0.6.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.6.tar.gz
Algorithm Hash digest
SHA256 a98bea38feef8de1893cf05a85e0f1a2951e9bb299024fc4bcee6cf7a684eeaa
MD5 d897880ca031265850c456ab0c5b4343
BLAKE2b-256 5e10e019fb4905c192d527911fcd6a4a1b6385001cf989a791721ffad0442131

See more details on using hashes here.

Provenance

The following attestation bundles were made for interactiveai-1.0.6.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.6-py3-none-any.whl.

File metadata

  • Download URL: interactiveai-1.0.6-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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 963bb32b15fa66ab55846d1d29f0037970efe81e34f5c1842285a467020fa95a
MD5 7419c1da0d24a6d4f7c0c608364104e8
BLAKE2b-256 3082cc17f266c1c8df6e4c496b07915bc498c9f38a7b864ad8be386be7e0bd1f

See more details on using hashes here.

Provenance

The following attestation bundles were made for interactiveai-1.0.6-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