Skip to main content

Overview

FloeSTTService provides streaming speech-to-text through Floe — a unified billing ledger for voice AI where one key powers the LLM, STT, and TTS legs of an agent, metered per call and bounded by pre-call spend caps. Unlike the LLM and TTS legs (which are OpenAI-compatible base-URL swaps), Floe streaming STT is a dedicated plugin: it opens a WebSocket to Floe, streams raw PCM audio up, and receives JSON transcript messages back. It extends Pipecat’s WebsocketSTTService (the same base used by the Deepgram and Gladia services), so connect/receive/reconnect scaffolding, audio buffering, and metrics are inherited. Non-final results are emitted as InterimTranscriptionFrame and final results as TranscriptionFrame.

Source Repository

Source code, examples, and issues for the Floe integration

PyPI Package

The pipecat-floe package on PyPI

Floe

Documentation and supported models for Floe

API Keys

Create and manage your Floe agent keys

Installation

This is a community-maintained package distributed separately from pipecat-ai:

Prerequisites

Floe Account Setup

Before using the Floe STT service, you need:
  1. Floe Account: Sign up at the Floe dashboard
  2. API Key: Create an agent key from your dashboard. New keys come with welcome credit that covers the first calls.

Required Environment Variables

  • FLOE_API_KEY: Your Floe agent key for authentication

Configuration

str
default:"None"
Floe agent key. Falls back to the FLOE_API_KEY environment variable if not provided. Raises ValueError if neither is set.
str
default:"deepgram/nova-3"
Fully qualified provider/model STT identifier (for example "deepgram/nova-3").
str
default:"linear16"
Audio encoding of the PCM frames streamed to Floe. One of "linear16", "mulaw", "alaw". Pipecat transports deliver linear16 PCM by default.
int
default:"16000"
Audio sample rate in Hz (8000–48000).
str
default:"en"
BCP-47 language hint.
str
Floe streaming-STT WebSocket URL.
Additional keyword arguments passed through to the underlying WebsocketSTTService.

Usage

See the source repository for a complete runnable example wiring a WebSocket transport → STT → LLM → TTS.

Compatibility

Built and verified against Pipecat v1.7.0+. Check the source repository for the latest tested version and changelog.