ElevenLabs: Eleven Realtime v1 Mini
elevenlabs/eleven-realtime-v1-mini
active
speech-to-speech
1 provider
ElevenLabs' realtime speech-to-speech voice agent optimized for low latency and price, combining speech recognition, turn-taking, an LLM and text to speech in one model.
AuthorElevenLabs
Languages84 languages
Response formatsStreaming: PCM · µ-law · A-law
Statusactive
Providers
Different providers can host the same model. Choose one provider when you need a fixed backend, or let routing select among them.
ProviderSlugPer hourLatencyiFor TTS, latency is measured as time to first byte of audio. For STT, latency is measured as time to first token.ModesUptime
ElevenLabs
4 params
elevenlabs
$5.1
—
Streaming
Supported languages
84 languages
Afrikaans
af
Arabic
ar
Armenian
hy
Assamese
as
Asturian
ast
Azerbaijani
az
Belarusian
be
Bengali
bn
Bosnian
bs
Bulgarian
bg
Burmese
my
Cantonese
yue
Catalan
ca
Cebuano
ceb
Croatian
hr
Czech
cs
Danish
da
Dutch
nl
English
en
Estonian
et
Filipino
fil
Finnish
fi
French
fr
Galician
gl
Georgian
ka
German
de
Greek
el
Gujarati
gu
Hausa
ha
Hebrew
he
Hindi
hi
Hungarian
hu
Icelandic
is
Indonesian
id
Irish
ga
Italian
it
Japanese
ja
Javanese
jv
Kannada
kn
Kazakh
kk
Korean
ko
Kyrgyz
ky
Latvian
lv
Lingala
ln
Lithuanian
lt
Luxembourgish
lb
Macedonian
mk
Malay
ms
Malayalam
ml
Maltese
mt
Mandarin Chinese
zh
Māori
mi
Marathi
mr
Mongolian
mn
Nepali
ne
Norwegian
no
Occitan
oc
Odia
or
Pashto
ps
Persian
fa
Polish
pl
Portuguese
pt
Punjabi
pa
Romanian
ro
Russian
ru
Serbian
sr
Sindhi
sd
Slovak
sk
Slovenian
sl
Somali
so
Spanish
es
Swahili
sw
Swedish
sv
Tajik
tg
Tamil
ta
Telugu
te
Thai
th
Turkish
tr
Ukrainian
uk
Urdu
ur
Uzbek
uz
Vietnamese
vi
Welsh
cy
Yoruba
yo
Features
Speech to speech
Bidirectional realtime speech-to-speech over WebSocket using the OpenAI Realtime protocol.
speech_to_speech
Turn-taking and interruptions
Semantic or server voice activity detection with natural turn-taking and interruption handling.
turn_taking
Tool use
Function and MCP tool calling during the conversation.
tool_use
Code
Realtime speech-to-speech with the OpenAI SDK
Sends question.pcm (24 kHz 16-bit mono PCM) as one turn over the OpenAI Realtime protocol and saves the spoken reply to reply.pcm.
import { once } from "node:events";
import { readFile, writeFile } from "node:fs/promises";
import OpenAI from "openai";
import { OpenAIRealtimeWS } from "openai/realtime/ws";
const client = new OpenAI({
apiKey: process.env.ALLMODELS_API_KEY,
baseURL: "https://api.allmodels.io/oai"
});
const realtime = new OpenAIRealtimeWS({ model: "eleven_realtime_v1_mini" }, client);
const reply = [];
realtime.on("response.output_audio.delta", ({ delta }) => reply.push(Buffer.from(delta, "base64")));
realtime.on("response.done", async () => {
await writeFile("reply.pcm", Buffer.concat(reply));
realtime.close();
});
realtime.on("error", console.error);
if (realtime.socket.readyState !== 1) await once(realtime.socket, "open");
const format = { type: "audio/pcm", rate: 24000 };
realtime.send({
type: "session.update",
session: {
type: "realtime",
output_modalities: ["audio"],
audio: { input: { format, turn_detection: null }, output: { format, voice: "brian" } }
}
});
realtime.send({ type: "input_audio_buffer.append", audio: (await readFile("question.pcm")).toString("base64") });
realtime.send({ type: "input_audio_buffer.commit" });
realtime.send({ type: "response.create" });
