Skip to main content

Respeecher real-time TTS plugin for Pipecat

Project description

Pipecat Respeecher Real-Time TTS Integration

PyPI - Version

This is an official Respeecher integration for Pipecat.

Learn more about our real-time TTS API (Україномовна/Ukrainian TTS).

Maintainer: Respeecher

Installation

pip install pipecat-respeecher

Running the Example

example.py is a complete Pipecat pipeline with Respeecher TTS. (See example-ukrainian.py for a Ukrainian language pipeline.) You can use it as a starting point for your agent, or you can head over to Example Snippets if you already have a pipeline and just want to switch TTS.

The complete pipeline example requires a Deepgram API key for Speech-to-Text, either a Google Gemini API key or a Cerebras API key for LLM, and a Respeecher Space API key. The Speech-to-Text and LLM services are just an example and can generally be swapped for any other supported Pipecat service.

  1. Clone this repository.
  2. Copy env.example to .env and fill in your API keys.
  3. Assuming you have the uv Python package manager installed, run uv run example.py, head over to http://localhost:7860, and click Connect. (The first run of uv run example.py may be slow because uv installs packages and Pipecat downloads local models.) The agent should greet you (both in text and in speech), and you can converse with it through the chat interface or with your microphone. (Make sure you have granted microphone access to the web page and that the microphone button is not in the muted state.)

Example Snippets

Note: we recommend setting audio_out_sample_rate=22050 in PipelineParams like in example.py for best results.

Minimal Example

from pipecat_respeecher import RespeecherTTSService

tts = RespeecherTTSService(
    api_key=os.getenv("RESPEECHER_API_KEY"),
    voice_id="samantha",
)

Overriding Sampling Parameters

See the Sampling Parameters Guide.

from pipecat_respeecher import RespeecherTTSService

tts = RespeecherTTSService(
    api_key=os.getenv("RESPEECHER_API_KEY"),
    voice_id="samantha",
    params=RespeecherTTSService.InputParams(
        sampling_params={
            "min_p": 0.01,
        },
    ),
)

Ukrainian Language Model

See Models & Languages.

from pipecat_respeecher import RespeecherTTSService

tts = RespeecherTTSService(
    api_key=os.getenv("RESPEECHER_API_KEY"),
    model="public/tts/ua-rt",
    voice_id="olesia-conversation",
)

Compatibility

This integration requires Pipecat v0.0.99 or newer and has been tested with v0.0.99.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pipecat_respeecher-0.1.4.tar.gz (288.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pipecat_respeecher-0.1.4-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file pipecat_respeecher-0.1.4.tar.gz.

File metadata

  • Download URL: pipecat_respeecher-0.1.4.tar.gz
  • Upload date:
  • Size: 288.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.13

File hashes

Hashes for pipecat_respeecher-0.1.4.tar.gz
Algorithm Hash digest
SHA256 7ccd3524db1d173f0a3d80751a62def29402a25399fa71a69ec0a240bf1ba29f
MD5 1316789d0e1814d5c5cc88e13d429e29
BLAKE2b-256 ea042dd478fc18490cd18bee488f6dfb1bed77c32abc03fc246c601e8fa0e6e6

See more details on using hashes here.

File details

Details for the file pipecat_respeecher-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for pipecat_respeecher-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9e3ae99d1f9f9ccc33055d7e00c000bdba1d884a4d3d8e437657ec4c71af3887
MD5 e80bc03e04c4d2ecee7f8ff302feeb39
BLAKE2b-256 d4547854345876a73757eb2b0b572480fc2747f55c6ac6892f1cdd6f5b4a2dc8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page