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.8.tar.gz (262.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.8-py3-none-any.whl (455.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: interactiveai-1.0.8.tar.gz
  • Upload date:
  • Size: 262.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.8.tar.gz
Algorithm Hash digest
SHA256 150e328e005c559ef715475946e2faccc5aadaa88a18f0814e5ace4398544ce2
MD5 0342090d32ed824a9443b1e471034f43
BLAKE2b-256 5eebd79de981b7c079c888f2572e04a90ee142072a3747698c71d39dea931368

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: interactiveai-1.0.8-py3-none-any.whl
  • Upload date:
  • Size: 455.1 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 f11c04438936255cc00523437ed9fd5766513188b2e58e0fd0a3a3938c549832
MD5 587473ee358c0bd90b7d6c2eda0ab4a0
BLAKE2b-256 e4bbf5bbaf7848e4d01c281e134c86407902e453c6d9af6f7444c55cbcd41bb6

See more details on using hashes here.

Provenance

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