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 PyPIFloe
Documentation and supported models for Floe
API Keys
Create and manage your Floe agent keys
Installation
This is a community-maintained package distributed separately frompipecat-ai:
Prerequisites
Floe Account Setup
Before using the Floe STT service, you need:- Floe Account: Sign up at the Floe dashboard
- 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.