Overview
pipecat-rumik provides Pipecat text-to-speech services backed by Rumik AI’s
TTS APIs. It exposes RumikTTSService for WebSocket-based synthesis in
interactive voice pipelines and RumikHttpTTSService for HTTP request/response
synthesis. Both services emit raw PCM audio frames (TTSAudioRawFrame).
Source Repository
Source code, examples, and issues for the Rumik AI integration
PyPI Package
The
pipecat-rumik package on PyPIRumik AI
Learn more about Rumik AI
API Keys
Create and manage your Rumik AI API keys
Installation
This is a community-maintained package distributed separately frompipecat-ai:
Prerequisites
Rumik AI Account Setup
Before using either service, you need:- API Key: Create API keys from the Rumik AI dashboard
- Gateway URL: Use the gateway URL provided for your Rumik AI deployment
Required Environment Variables
RUMIK_API_KEY: Your Rumik AI API keyRUMIK_GATEWAY_URL: Your Rumik AI gateway base URL
Configuration
RumikTTSService
Rumik AI API key.
Rumik AI gateway base URL.
Runtime-configurable TTS settings. See Settings below.
Output audio sample rate. Rumik currently returns 24 kHz PCM.
When true, buffer a complete LLM response before sending text to Rumik instead
of creating a separate TTS request for every sentence.
RumikHttpTTSService
Rumik AI API key.
Rumik AI gateway base URL.
Caller-owned HTTP session used for Rumik API requests.
Runtime-configurable TTS settings. See Settings below.
Output audio sample rate. Rumik currently returns 24 kHz PCM.
Settings
Both services use Pipecat’s service settings pattern.RumikTTSService.Settings and RumikHttpTTSService.Settings are aliases of
RumikTTSSettings.
| Parameter | Type | Default | Description |
|---|---|---|---|
model | str | None | "muga" | Rumik model identifier. |
voice | str | None | None | Preset speaker voice. Sent to Rumik as speaker. |
language | Language | str | None | None | Reserved for Pipecat provider compatibility. |
description | str | None | None | Natural-language voice/style description for expressive models. |
f0_up_key | int | None | None | Pitch shift in semitones for preset speaker voices. |
temperature | float | None | None | Sampling temperature. When omitted, Rumik uses its API default. |
top_p | float | None | None | Nucleus sampling value. When omitted, Rumik uses its API default. |
top_k | int | None | None | Top-k sampling value. When omitted, Rumik uses its API default. |
repetition_penalty | float | None | None | Penalty applied to repeated tokens. When omitted, Rumik uses default. |
max_new_tokens | int | None | None | Maximum generated audio tokens. When omitted, Rumik uses its default. |
See the source repository for
the authoritative, up-to-date list of settings.
Usage
WebSocket Service
voice setting for preset speaker voices. The
service sends it to Rumik as speaker.
HTTP Service
Compatibility
Tested with Pipecat v1.3.0 and supports Pipecat>=1.0.0,<2. Check the source
repository for the latest tested
version and changelog.