Skip to main content

Testing and Observability SDK for AI Agents

Project description

Cekura Python SDK

Testing and Observability for AI Voice Agents. Launch in minutes not weeks by ensuring your agents deliver a seamless experience in every conversational scenario.

Installation

pip install cekura

LiveKit Integration

Setup

  1. Create a new agent in the Cekura dashboard
  2. Select LiveKit as the provider in agent settings
  3. Enable tracing for your agent
  4. Copy your API key and Agent ID

Quick Start

import os
from livekit import agents
from cekura.livekit import LiveKitTracer

# Initialize Cekura tracer
cekura = LiveKitTracer(
    api_key=os.getenv("CEKURA_API_KEY"),
    agent_id=123
)

@server.rtc_session(agent_name="my_agent")
async def entrypoint(ctx: agents.JobContext):
    # Create your assistant and session
    assistant = YourAssistant()
    session = agents.AgentSession(...)

    # Track session with Cekura (automatic tool injection and export)
    await cekura.track_session(ctx, session, assistant)

    # Start your session
    await session.start(room=ctx.room, agent=assistant)

Next Steps

After integrating the SDK, you can:

  • Run tests from the Cekura platform
  • Monitor real-time conversations
  • Analyze performance metrics
  • Review conversation transcripts and tool calls

Features

  • One-Line Integration: Simple track_session() API for seamless integration
  • Automatic Metrics Collection: Captures STT, LLM, TTS, and End-of-Utterance metrics
  • Conversation Tracking: Records complete chat history with tool calls
  • Mock Tool Injection: Automatically replaces tools with mock versions configured in Cekura dashboard
  • Session Reports: Generates comprehensive session reports from LiveKit

Mock Tools

The SDK automatically injects mock tools when running tests from the Cekura platform. Mock tools return predefined responses configured in the dashboard.

Setup:

  1. Create mock tools in the Cekura dashboard under your agent settings
  2. Define input/output pairs for each tool
  3. When tests run, the SDK automatically replaces matching tools with mocks

Configuration

Parameters

  • api_key (str, required): Your Cekura API key
  • agent_id (int, required): Unique identifier for your agent from Cekura dashboard
  • host (str, optional): API host URL (default: https://api.cekura.ai)
  • enabled (bool, optional): Enable/disable tracing. Defaults to CEKURA_TRACING_ENABLED env var ("true" if not set)

Environment Variables

  • CEKURA_TRACING_ENABLED (default: "true"): Enable/disable session tracing
  • CEKURA_MOCK_TOOLS_ENABLED (default: "true"): Enable/disable mock tool injection

Data Collected

The SDK automatically collects:

  • Session start/end timestamps
  • Complete conversation transcripts
  • Tool/function calls and outputs
  • Performance metrics:
    • Speech-to-Text (STT) latency and duration
    • LLM token usage and timing
    • Text-to-Speech (TTS) generation time
    • End-of-Utterance detection timing
  • Room and job information
  • Custom metadata

Requirements

  • Python 3.9+
  • aiohttp>=3.9.0

License

MIT License - see LICENSE file for details.

Links

Support

For support, email support@cekura.ai

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

cekura-1.0.0rc2.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

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

cekura-1.0.0rc2-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file cekura-1.0.0rc2.tar.gz.

File metadata

  • Download URL: cekura-1.0.0rc2.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for cekura-1.0.0rc2.tar.gz
Algorithm Hash digest
SHA256 81fa4d3512409ee5ddf02a3de9a256d15b087e3387419c52ef5263bd9fe2e2a9
MD5 b78388dfdf400ffcca1ce239b4d148ad
BLAKE2b-256 208b62e06a9ed6a41c1f69eea343c72457cf63200f90cddb6bca41c0bf3bee67

See more details on using hashes here.

File details

Details for the file cekura-1.0.0rc2-py3-none-any.whl.

File metadata

  • Download URL: cekura-1.0.0rc2-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for cekura-1.0.0rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 e280a9158b8fcc5f1aca2678d6b35b1fd3ebb8a944f5644fedb11ce49aadc0de
MD5 209b16f9693d80a67d28cd3589add2de
BLAKE2b-256 c55ad011c8a641dcaa5c7f74a9f81e2dc5a6eb0e76f0451fa0ebf3f23a6207b9

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