import requests r = requests.post( "https://api.aimlapi.com/v1/tts", headers={"Authorization": "Bearer " + AIMLAPI_KEY}, json={ "model": "hume/octave-2", "text": "Hello from AI/ML API" }, ) print(r.json()["audio"]) # URL to the generated audio
const r = await fetch("https://api.aimlapi.com/v1/tts", { method: "POST", headers: { Authorization: `Bearer ${process.env.AIMLAPI_KEY}`, "Content-Type": "application/json", }, body: JSON.stringify({ "model": "hume/octave-2", "text": "Hello from AI/ML API" }), }); const { audio } = await r.json(); console.log(audio); // URL to the generated audio
curl -X POST https://api.aimlapi.com/v1/tts \ -H "Authorization: Bearer $AIMLAPI_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"hume/octave-2","text":"Hello from AI/ML API"}' # the JSON response contains "audio" — a URL to the generated speech
OpenAI-compatible — swap the base URL and it works with your existing SDK.
| Type | Price |
|---|---|
| Input | |
| Output | |
| Benchmark | Score | What it measures | Source | Retrieved |
|---|---|---|---|---|
| TTS Arena | 1049 | Human preference Elo from blind pairwise listening comparisons of speech samples, measured independently by Artificial Analysis | Source | September 28, 2026 |
| Model | Input | Output | Context | Best for |
|---|---|---|---|---|
Octave 2 This page | Speech synthesis |
Octave 2 takes text as input and returns audio.
Octave 2 became available on January 5, 2026.
Octave 2 is priced at $0.078 / 1M tokens.
Octave 2 is billed per generation — a fixed charge per output rather than by prompt length.
Octave 2 was built by Hume AI.
Send a request to https://api.aimlapi.com/v1/tts with hume/octave-2 as the model id.
Yes. Octave 2 is served through AI/ML API, so the same key and endpoint format used for other models applies.
Yes, Octave 2 is designed as a text-to-speech model with emotional expression capabilities.