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
- Create a new agent in the Cekura dashboard
- Select LiveKit as the provider in agent settings
- Enable tracing for your agent
- Copy your API key and Agent ID
Quick Start
import os
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 LiveKit session
session = agents.AgentSession(...)
# Start Cekura session tracking
session_id = cekura.start_session(session)
# Add shutdown callback to export Cekura data
async def cekura_shutdown():
await cekura.export(session_id, ctx)
ctx.add_shutdown_callback(cekura_shutdown)
# Start your session
await session.start(room=ctx.room, agent=YourAssistant())
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
- Automatic Metrics Collection: Captures STT, LLM, TTS, and End-of-Utterance metrics
- Conversation Tracking: Records complete chat history with tool calls
- Session Reports: Generates comprehensive session reports from LiveKit
- Easy Integration: Simple API with minimal setup required
Configuration
Parameters
api_key(str, required): Your Cekura API keyagent_id(int, required): Unique identifier for your agent from Cekura dashboardhost(str, optional): API host URL (default:https://api.cekura.ai)enabled(bool, optional): Enable/disable tracing. Defaults toCEKURA_TRACING_ENABLEDenv var ("true" if not set)
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cekura-1.0.0rc1.tar.gz.
File metadata
- Download URL: cekura-1.0.0rc1.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89a0dfed035383c5ad4306226400d16d05f61388d6d0c460f3d174c73ddd820d
|
|
| MD5 |
1bc853df6c974d0eed1124b1fdc4944e
|
|
| BLAKE2b-256 |
df6f1c65495225f401df35a93f4fc9306c4f6ce4af8904c878d60ea7070266d1
|
File details
Details for the file cekura-1.0.0rc1-py3-none-any.whl.
File metadata
- Download URL: cekura-1.0.0rc1-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e707a7d37505de5fa8e799e01b20684b3ee2e9f8d8838c61cb4329f47e78015b
|
|
| MD5 |
6097ef396dc42aaf188dda41410eb1db
|
|
| BLAKE2b-256 |
f3f2ad13004fad463e7e8abe5d689ba18871d9f4cff92efe041e941e096c3767
|