Skip to content
Integrations/Voice Frameworks

Pipecat

Connect a language model inside a frame-based voice pipeline.

Prerequisites

Complete the integration setup and verify a successful text request before configuring this client. Review the shared compatibility checks alongside the client-specific limitations below.

Configure the Language Service

Start from a working Pipecat application with its OpenAI service dependency installed. This recipe uses the Settings interface documented for current Pipecat releases; older versions may require an upgrade or their version-specific configuration.

Use Pipecat’s OpenAI-compatible LLM service with the AudioLab API. Replace the language processor in your existing pipeline with the snippet below. It is not a standalone application: transport, STT/TTS, context aggregation, and interruption handling remain part of your pipeline.

Language Processor
import os
from pipecat.services.openai.llm import OpenAILLMService

llm = OpenAILLMService(
    api_key=os.environ["AUDIOLAB_API_KEY"],
    base_url=os.environ["AUDIOLAB_BASE_URL"],
    settings=OpenAILLMService.Settings(
        model="openai/gpt-5.5",
        max_completion_tokens=256,
    ),
)

Assemble the Audio Pipeline

A typical pipeline runs transport input → STT → user context → LLM → TTS → transport output → assistant context. For native audio models, use a compatible realtime service instead of silently adapting a text-only processor.

Validate Delivery

First send a short utterance through the existing pipeline and verify transcription, a language response, and audible speech in that order. Then check interruptions, backpressure, tool calls, and cancellation. Inspect usage after a stopped response as well as a completed one. Retain API keys on the server and issue short-lived application credentials to clients.