Pipecat
Pipecat is an open-source, real-time voice AI orchestration framework built for developers who want to create deeply interactive, multimodal conversational agents. It provides a flexible pipeline architecture for integrating speech recognition (STT), language models, and speech synthesis (TTS) components into low-latency, event-driven workflows. Designed for modularity and extensibility, Pipecat enables developers to compose custom voice agent stacks that handle audio streaming, turn-taking, and response timing with precision.
This tutorial will guide you through integrating Arcee AI models as the LLM backbone for your Pipecat voice agent. We'll integrate Arcee's models using OpenRouter.

Prerequisites
Python:
>=3.10OpenRouter API Key
If you don't have an account, set one up here.
uv package manager installed
Quickstart
Install the Pipecat CLI globally using uv
uv tool install pipecat-ai-cliRun the Pipecat interactive setup wizard to create the scaffolding for a pipecat agent
pipecat initYou will be prompted with a few questions which determine how the project is setup. Use the following configuration:
Project name: arcee-pipecat
Bot type: Web/Mobile
Client framework: React
React dev server: Vite
Transport: SmallWebRTC
Add another transport for local testing? No
Pipeline architecture: Cascade (STT → LLM → TTS)
Speech-to-Text: Deepgram
Language model: OpenRouter
Text-to-Speech: Deepgram
Customize feature settings? Yes
Audio recording? Yes
Transcription logging? Yes
Smart turn-taking? Yes
Use video avatar service? No
Video input? No
Video output? No
Enable observability? No
Deploy to Pipecat Cloud? NoThese configurations create an agent which uses Deepgram for Speech-to-Text and Text-to-Speech, and Arcee models through OpenRouter for the LLM.
You can modify any of these settings to change your voice agent.
Setup the client
cd arcee-pipecat/client
npm install
npm run devSetup the server, install dependencies, and create a .env file
cd arcee-pipecat/server
uv sync
cp .env.example .envIn the .env file, populate your Deepgram and OpenRouter API Key and provide a Deepgram Voice ID and the Arcee AI LLM you want to use. For example:
# Deepgram (STT/TTS)
DEEPGRAM_API_KEY=<YOUR_DEEPGRAM_KEY>
DEEPGRAM_VOICE_ID=aura-2-thalia-en
# OpenRouter (LLM)
OPENROUTER_API_KEY=<YOUR_OPENROUTERR_KEY>
OPENROUTER_MODEL=arcee-ai/trinity-miniEdit the Voice Agent Kickoff System prompt
Navigate to
arcee-pipecat/server/bot.pyReplace the content of the Kickoff system prompt (on line 139) with the following message:
You are a helpful voice ai assistant powered Arcee AI Language Models. Respond naturally and keep your answers conversational. Start by introducing yourself.The full line should now look like the following:
# Kick off the conversation
messages.append({"role": "system", "content": "You are a helpful voice ai assistant powered Arcee AI Language Models. Respond naturally and keep your answers conversational. Start by introducing yourself."})Run your Voice Agent, access at http://localhost:5173/, and click connect to start the conversation!
uv run bot.pyLast updated


