Skip to main content

OpenInference Pipecat Instrumentation

Project description

OpenInference Pipecat Instrumentation

Python auto-instrumentation library for Pipecat. This library allows you to convert Pipecat traces to OpenInference, which is OpenTelemetry compatible, and view those traces in Arize Phoenix.

Installation

pip install openinference-instrumentation-pipecat

Quickstart

This quickstart shows you how to setup tracing in your Pipecat application:

from phoenix.otel import register
from openinference.instrumentation.pipecat import PipecatInstrumentor

# Set up the tracer provider
tracer_provider = register(
    project_name="default" #Phoenix project name
)

# Add auto-instrumentor at the top of the application
PipecatInstrumentor().instrument(tracer_provider=tracer_provider)

# Build your Pipecat pipeline
# ... (add your Pipecat pipeline code here)

### CONFIGURATION SETUP (Transport, LLM, STT, TTS) ###

### PIPELINE ###
pipeline = Pipeline(...)

### TASK ###
task = PipelineTask(
    pipeline,
    conversation_id=conversation_id,  # conversation id is used for session tracking in Arize or Phoenix
)

### EVENT HANDLING
@transport.event_handler("on_client_connected")
async def on_client_connected(transport, client):
    await task.queue_frames([LLMRunFrame()])

### PIPELINE RUNNER ###
runner = PipelineRunner(handle_sigint=runner_args.handle_sigint)
await runner.run(task)

After configuring tracing, exchanges in the running application are logged to your project in Phoenix or Arize AX.

Example

  1. Install dependencies
uv pip install -e '.[examples]'

or

uv pip install -r examples/trace/requirements.txt
  1. Run example
uv run python examples/trace/001-trace.py

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

Built Distribution

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

File details

Details for the file openinference_instrumentation_pipecat-0.1.2.tar.gz.

File metadata

File hashes

Hashes for openinference_instrumentation_pipecat-0.1.2.tar.gz
Algorithm Hash digest
SHA256 23b27a0f8b0a1753944fe964b7bc24252e8ecc71f40396ddce2f7e4c9894edb7
MD5 8a003edbb2aa2268511ff202bace38df
BLAKE2b-256 5a6a4fa404ea4c32f94cf605f9dcf275069640f95561b82e4b2a85d9e723403e

See more details on using hashes here.

File details

Details for the file openinference_instrumentation_pipecat-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for openinference_instrumentation_pipecat-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d6ce3b370da49ba910fd4eaba735daea24938cabd2c86c814fa300f1bc8c9ba0
MD5 21f54f4c75aa12d17a82747fbfa7ab6f
BLAKE2b-256 c9aff5419c9909a1091a689637f55118676d3526b5ab0ecb08ee7618edf991e8

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