Skip to main content

Voice AI observability dev tool for Pipecat

Project description

Finchvox - elevated debugging for Pipecat Voice AI

Do your eyes bleed like a Vecna victim watching Pipecat logs fly by? Does flipping between audio recordings, transcripts, and logs damage your ⌘+tab keys from frequent use? If so, meet Finchvox, a local debugger purpose-built for Voice AI apps.

Finchvox unifies conversation audio, logs, and traces in a single UI, highlighting voice-specific problems like interruptions and high user <-> bot latency.

👇 Click the image for a short video:

Table of Contents

Prerequisites

  • Python 3.10 or higher
  • A Pipecat Voice AI application

Installation

# uv
uv add finchvox "pipecat-ai[tracing]"

# Or with pip
pip install finchvox "pipecat-ai[tracing]"

Setup

  1. Add the following to the top of your bot (e.g., bot.py):
import finchvox
from finchvox import FinchvoxProcessor

finchvox.init(service_name="my-voice-app")
  1. Add FinchvoxProcessor to your pipeline, ensuring it comes after transport.output():
pipeline = Pipeline([
    # SST, LLM, TTS, etc. processors
    transport.output(),
    FinchvoxProcessor(), # Must come after transport.output()
    context_aggregator.assistant(),
])
  1. Initialize your PipelineTask with metrics, tracing and turn tracking enabled:
task = PipelineTask(
    pipeline,
    params=PipelineParams(enable_metrics=True),
    enable_tracing=True,
    enable_turn_tracking=True,
)

Configuration

The finchvox.init() function accepts the following optional parameters:

Parameter Default Description
endpoint "http://localhost:4317" Finchvox collector endpoint
insecure True Use insecure gRPC connection (no TLS)
capture_logs True Send logs to collector alongside traces
log_modules None Additional module prefixes to capture (e.g., ["myapp"])

By default, logs from pipecat.*, finchvox.*, __main__, and any source files in your project directory are captured. Use log_modules to include additional third-party modules.

Usage - Finchvox server

uv run finchvox start

For the list of available options, run:

uv run finchvox --help

Troubleshooting

No spans being written

  1. Check collector is running: Look for "OTLP collector listening on port 4317" log message
  2. Verify client endpoint: Ensure Pipecat is configured to send to http://localhost:4317

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

finchvox-0.0.6.tar.gz (8.3 MB view details)

Uploaded Source

Built Distribution

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

finchvox-0.0.6-py3-none-any.whl (127.2 kB view details)

Uploaded Python 3

File details

Details for the file finchvox-0.0.6.tar.gz.

File metadata

  • Download URL: finchvox-0.0.6.tar.gz
  • Upload date:
  • Size: 8.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.5

File hashes

Hashes for finchvox-0.0.6.tar.gz
Algorithm Hash digest
SHA256 ec5f2ba00e357df40218065f2270efa0f59e9e413fae777f52b9f3a91436ac49
MD5 1b70c21c4aafb12d5ed2e73a6c2be59f
BLAKE2b-256 ee7db3b396aa484464c2836e7729ddab5f49ab1ad87dce70cb82208a5997b360

See more details on using hashes here.

File details

Details for the file finchvox-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: finchvox-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 127.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.5

File hashes

Hashes for finchvox-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 7840b5ef89132e058314eb793695eeed17470e28fa13163978ff6783b3194cd0
MD5 6a72d49a48464771f4500f3dc8376c47
BLAKE2b-256 84f0a75148c9d30ef81e26c39b7eee9bbbf13c61952e8ab01078b190841543e0

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