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.7.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.7.tar.gz.

File metadata

  • Download URL: vision_agents_plugins_cartesia-0.6.7.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","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.7.tar.gz
Algorithm Hash digest
SHA256 510f3f8056978b193b29d96ee0a3ec49a0938d6adf85d7cd707be27b7dcc971f
MD5 037ec322443752318f2bd2965f33a275
BLAKE2b-256 5caa5a520356d07f890ce4c6b8686a737677da892478d91d77a2a3f2b3f28dd3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vision_agents_plugins_cartesia-0.6.7-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 3b44acf5d5d9bca6b40ba3939810bb15cb96532781e3c4bc637081b49819573e
MD5 53d4b48730d4d446c853e5801cbb1dbc
BLAKE2b-256 bd7b712e221bd4135ea154fa07c0dd3eafb34dc907acb4bf5b5c7832dd0fe6d3

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