Skip to main content

Cartesia STT and TTS integration for Vision Agents

Project description

Cartesia

Cartesia is a service that provides Speech-to-Text (STT) and Text-to-Speech (TTS) capabilities. It's designed for real-time voice applications, making it ideal for voice AI agents, transcription pipelines, and conversational interfaces.

The Cartesia plugin for the Stream Python AI SDK allows you to add STT and TTS functionality to your project.

Installation

Install the Stream Cartesia plugin with

uv add "vision-agents[cartesia]"
# or directly
uv add vision-agents-plugins-cartesia

Examples

Read on for some key details and check out our Cartesia examples to see working code samples:

  • in main.py we see a voice bot that uses Cartesia STT and TTS in a Stream call
  • in narrator-example.py we see a well-prompted combination of an STT -> LLM -> TTS flow that leverages Cartesia's Ink and Sonic models to narrate a creative story from the user's input

Initialisation

The Cartesia plugin for Stream exposes STT and TTS classes:

from vision_agents.plugins import cartesia

stt = cartesia.STT()
tts = cartesia.TTS()
To initialise without passing in the API key, make sure the `CARTESIA_API_KEY` is available as an environment variable. You can do this either by defining it in a `.env` file or exporting it directly in your terminal.

Parameters

These are the parameters available in the Cartesia STT plugin for you to customise:

Name Type Default Description
api_key str or None None Your Cartesia API key. If not provided, the plugin will look for the CARTESIA_API_KEY environment variable.
model str "ink-2" ID of the Cartesia STT model to use.
sample_rate int 16000 Sample rate (in Hz) sent to Cartesia.
encoding str "pcm_s16le" PCM encoding sent to Cartesia.
cartesia_version str "2026-03-01" Cartesia API version used for the turn-detection websocket.

These are the parameters available in the Cartesia TTS plugin for you to customise:

Name Type Default Description
api_key str or None None Your Cartesia API key. If not provided, the plugin will look for the CARTESIA_API_KEY environment variable.
model_id str "sonic-3.5" ID of the Cartesia TTS model to use.
voice_id str or None "f9836c6e-a0bd-460e-9d3c-f7299fa60f94" ID of the voice to use for TTS responses.
sample_rate int 16000 Sample rate (in Hz) used for audio processing.

Functionality

Send audio to transcribe speech

STT streams PCM audio to Cartesia Ink and emits transcript and turn events that Vision Agents can use for interruption and eager turn handling.

agent = Agent(
    ...,
    stt=cartesia.STT(),
    tts=cartesia.TTS(),
)

Send text to convert to speech

The send_iter() method sends the text passed in for the service to synthesize and yields TTSOutputChunks containing the produced PCM audio.

async for chunk in tts.send_iter("Demo text you want AI voice to say"):
    pass

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

vision_agents_plugins_cartesia-0.6.5.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

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

File details

Details for the file vision_agents_plugins_cartesia-0.6.5.tar.gz.

File metadata

  • Download URL: vision_agents_plugins_cartesia-0.6.5.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vision_agents_plugins_cartesia-0.6.5.tar.gz
Algorithm Hash digest
SHA256 935c6ef74dba1c07ea5ef5ce55f83802eec65517e259b328f4c58320fe66be18
MD5 1f637fe096be9c962f0d402a147d8e37
BLAKE2b-256 340cf26172459f614fb4865ea3de1f5b9fc9583374dfdd9a7bd3a638d2d05258

See more details on using hashes here.

File details

Details for the file vision_agents_plugins_cartesia-0.6.5-py3-none-any.whl.

File metadata

  • Download URL: vision_agents_plugins_cartesia-0.6.5-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vision_agents_plugins_cartesia-0.6.5-py3-none-any.whl
Algorithm Hash digest
SHA256 3d527f34fc87256b5a31ce13f9cd5d9013dfd488c4a54cae808d291c52ef8f17
MD5 c1e1585ebae6599de91fbf2c5668f9bf
BLAKE2b-256 2a6d3e091d013d99186724bfd3f8eac2e879d45dc68f3eb881ea855eaa3ba6b2

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