- Pipecat은 실시간 음성 및 멀티모달 대화형 에이전트를 만들기 위한 오픈소스 Python 프레임워크로, 단일 음성 에이전트부터 여러 전문 에이전트가 핸드오프·병렬 실행·공유 버스로 조율되는 시스템까지 지원함
- 핵심 설계는 음성 인식, 텍스트 음성 변환, 대화 처리, AI 서비스, 전송 계층을 조합 가능한 파이프라인으로 묶어 개발자가 에이전트 고유 로직에 집중하게 하는 것임
- 만들 수 있는 대상은 Voice Assistants, 멀티 에이전트 시스템, AI 컴패니언, 음성·영상·이미지 기반 멀티모달 인터페이스, 인터랙티브 스토리텔링, 고객 접수·지원 봇, 구조화된 대화 시스템까지 포함됨
- 공식 클라이언트 SDK는 JavaScript, React, React Native, Swift, Kotlin, C++, ESP32를 지원하며, 서버 측 서비스는 STT, LLM, TTS, Speech-to-Speech, WebRTC/WebSocket 전송, 비디오, 메모리, 비전·이미지, 오디오 처리, 분석 도구로 확장됨
- 빠른 시작은
pipecat init quickstart 또는 pipecat init으로 가능하고, 기본 설치는 가볍게 유지되며 서드파티 AI 서비스 지원은 필요한 extras를 추가하는 방식으로 구성함
Pipecat의 역할
- Pipecat은 실시간 음성 및 멀티모달 대화형 에이전트를 구축하기 위한 오픈소스 Python 프레임워크임
- 단일 음성 에이전트뿐 아니라, 전문 에이전트들이 서로 핸드오프, 병렬 fan-out, sidecar 실행, 공유 버스 기반 조율을 수행하는 멀티 에이전트 시스템을 만들 수 있음
- 오디오, 비디오, AI 서비스, 전송 계층, 대화 파이프라인을 함께 오케스트레이션해 에이전트의 고유 동작 구현에 집중하도록 설계됨
- 빠르게 시작하려면
pipecat init quickstart를 실행하거나 quickstart guide를 따르면 됨
만들 수 있는 것
- Voice Assistants: AI와 자연스럽게 스트리밍 대화를 하는 음성 비서
- Multi-Agent Systems: 전문 에이전트가 핸드오프하거나 병렬로 fan-out되거나 공유 버스 위의 sidecar로 동작하는 구조
- AI Companions: 코치, 회의 비서, 캐릭터
- Multimodal Interfaces: 음성, 비디오, 이미지 등을 다루는 인터페이스
- Interactive Storytelling: 생성 미디어 기반 창작 도구
- Business Agents: 고객 접수, 지원 봇, 안내형 흐름
- Complex Dialog Systems: 구조화된 대화로 로직을 설계하는 시스템
설계 특징
- Voice-first 구조로 음성 인식, 텍스트 음성 변환, 대화 처리를 통합함
- 다양한 AI 서비스와 도구를 연결할 수 있는 플러그형 구조를 제공함
- 모듈형 컴포넌트로 복잡한 동작을 만드는 조합 가능한 파이프라인을 지원함
- 각 파이프라인을 에이전트로 다루며, 핸드오프, 병렬 fan-out, sidecar 워커, 분산 배포로 조합할 수 있음
- WebSockets나 WebRTC 같은 전송 계층을 통해 초저지연 실시간 상호작용을 목표로 함
생태계와 도구
- 공식 클라이언트 SDK는 여러 플랫폼에서 Pipecat에 연결하도록 제공됨
- Pipecat Flows는 상태 관리를 포함한 사전 정의 또는 동적 대화 경로를 Pipecat 안에서 구성하게 해줌
- Voice UI Kit는 음성 AI 애플리케이션을 빠르게 만들기 위한 컴포넌트, 훅, 템플릿 모음임
- Pipecat CLI는
pipecat-ai와 함께 제공되며, uv tool install "pipecat-ai[cli]"로 설치함
pipecat init은 새 프로젝트를 시작하고, Claude Code나 Codex 같은 AI 코딩 어시스턴트가 프로젝트를 만들 수 있도록 설정함
- 실행 가능한 봇을 1분 이내에 스캐폴딩할 수 있으며, 이후 CLI로 에이전트를 모니터링하고 프로덕션에 배포할 수 있음
- Whisker는 Pipecat 파이프라인과 프로세서를 위한 실시간 디버거임
- Tail은 Pipecat용 터미널 대시보드임
- Pipecat Skills는 Claude Code와 함께 프로젝트 스캐폴딩, Pipecat Cloud 배포 등을 지원함
- 설치 명령:
claude plugin marketplace add pipecat-ai/skills
지원 서비스 범위
- Speech-to-Text는 AssemblyAI, AWS, Azure, Deepgram, Google, Groq Whisper, Mistral, NVIDIA, OpenAI Whisper, Whisper, xAI 등 여러 서비스를 지원함
- LLM은 Anthropic, AWS, Azure, Cerebras, DeepSeek, Gemini, Grok, Groq, Mistral, NVIDIA NIM, Ollama, OpenAI, OpenAI Responses, OpenRouter, Perplexity, Qwen, Together AI 등을 포함함
- Text-to-Speech는 AWS, Azure, Cartesia, Deepgram, ElevenLabs, Google, Groq, Hume, Kokoro, Mistral, NVIDIA, OpenAI, Piper, Resemble, Rime, Together, XTTS 등과 연결됨
- Speech-to-Speech는 AWS Nova Sonic, Gemini Multimodal Live, Grok Voice Agent, OpenAI Realtime, Ultravox를 지원함
- 전송 계층은 Daily WebRTC, FastAPI Websocket, LiveKit WebRTC, SmallWebRTCTransport, Vonage WebRTC, WebSocket Server, WhatsApp, Local을 포함함
- 그 밖에 Twilio·Telnyx·Vonage 등 serializer, HeyGen·Tavus·Simli 등 비디오, mem0 메모리, fal·Google Imagen·Moondream 기반 비전·이미지, Silero VAD·Krisp Viva·RNNoise 등 오디오 처리, OpenTelemetry·Sentry 분석 도구를 지원함
- 전체 목록은 full services documentation에서 확인할 수 있음
설치와 시작
- 로컬 머신에서 Pipecat을 실행한 뒤 준비되면 에이전트 프로세스를 클라우드로 옮길 수 있음
- 시작 전 uv 설치가 필요함
curl -LsSf https://astral.sh/uv/install.sh | sh
- CLI 기반 빠른 시작은 Pipecat CLI를 설치한 뒤 새 phone 또는 web/mobile 봇을 대화형으로 스캐폴딩함
uv tool install "pipecat-ai[cli]"
pipecat init
- 수동 설치는 새 프로젝트에서
uv init과 uv add pipecat-ai를 사용하거나 기존 프로젝트에 uv add pipecat-ai를 추가함
uv init my-pipecat-app
cd my-pipecat-app
uv add pipecat-ai
uv add pipecat-ai
- 환경 파일은
cp env.example .env로 설정함
- 기본 패키지는 core framework만 포함하며, 서드파티 AI 서비스가 필요하면 extras를 추가함
uv add "pipecat-ai[option,...]"
- pip 사용자는
pip install pipecat-ai와 pip install "pipecat-ai[option,...]"로 설치할 수 있음
예제와 개발
- Focused examples는 특정 서비스나 개념 1~2개를 보여주는 작은 에이전트 예제임
- Example apps는 개발 시작점으로 사용할 수 있는 완성형 애플리케이션임
- Pipecat 개발에는 최소 Python 3.11이 필요하고, 권장 버전은 Python 3.12 이상임
- 저장소 개발 환경은
uv sync --group dev --all-extras --no-extra gstreamer --no-extra local로 설정함
local, gstreamer 같은 일부 extras는 시스템 의존성이 필요할 수 있음
- 테스트는 저장소 루트에서
uv run pytest로 실행하며, 특정 테스트는 uv run pytest tests/test_name.py로 실행함
기여와 도움
- 버그는 GitHub issue로 열고, 기능 아이디어는 Discord discussion에서 시작함
- 코드 기여는
CONTRIBUTING.md 가이드를 따르며, 문서 개선은 Docs PR로 받을 수 있음
- 도움을 받을 수 있는 경로는 Discord, docs, X임