Add per-service latency breakdown metrics alongside existing user-to-bot latency measurement. When enable_metrics=True, the observer now emits an on_latency_breakdown event with TTFB, text aggregation, and user turn duration metrics collected between VADUserStoppedSpeakingFrame and BotStartedSpeakingFrame. - Add LatencyBreakdown dataclass with ttfb, text_aggregation, user_turn_secs fields - Accumulate MetricsFrame data during user→bot cycles - Reset accumulators on InterruptionFrame to discard stale metrics - Measure user_turn_secs from actual user silence (VAD timestamp - stop_secs) to turn release (UserStoppedSpeakingFrame) - Filter zero-value TTFB entries from startup metric resets - Add frame deduplication using bounded deque + set pattern - Update example 29 with latency breakdown display
Pipecat Examples
This directory contains examples to help you learn how to build with Pipecat.
Getting Started
New to Pipecat? Start here:
- Quickstart - Get your first voice AI bot running in 5 minutes (coming soon)
- Client/Server Web - Learn to build web applications with Pipecat's client SDKs (coming soon)
- Phone Bot with Twilio - Connect your bot to a phone number (coming soon)
Foundational Examples
Single-file examples that introduce core Pipecat concepts one at a time. These examples:
- Build on each other progressively
- Focus on specific features or integrations
- Are used for testing with every Pipecat release
See the Foundational Examples README for the complete list.
More Advanced Examples
Ready to explore complex use cases? Visit pipecat-examples for:
- Production-ready applications
- Multi-platform client implementations
- Telephony integrations
- Multimodal and creative applications
- Deployment and monitoring examples