Skip to main content
1

API を呼び出す

import asyncio
from cartesia import AsyncCartesia
import os
import subprocess

client = AsyncCartesia(
    api_key=os.environ["CARTESIA_API_KEY"],
)


async def main():
    with open("sonic-3.wav", "wb") as f:
        bytes_iter = client.tts.bytes(
            model_id="sonic-3.5",
            transcript="Welcome to Cartesia Sonic!",
            voice={
                "mode": "id",
                "id": "6ccbfb76-1fc6-48f7-b71d-91ac6298247b",
            },
            language="en",
            output_format={
                "container": "wav",
                "sample_rate": 44100,
                "encoding": "pcm_s16le",
            },
        )

        async for chunk in bytes_iter:
            f.write(chunk)


if __name__ == "__main__":
    asyncio.run(main())

# Play the file
subprocess.run(["ffplay", "-autoexit", "-nodisp", "sonic-3.wav"])
1

スクリプトを実行する

env CARTESIA_API_KEY=YOUR_API_KEY python cartesia.py

# Or, if you're using uv
env CARTESIA_API_KEY=YOUR_API_KEY uv run cartesia.py