ElevenLabs: Eleven Realtime v1 Max
elevenlabs/eleven-realtime-v1-max
提供中
speech-to-speech
1プロバイダー
ElevenLabs' realtime speech-to-speech voice agent optimized for quality, reasoning before it responds for complex instructions and multi-step tool use.
作成者ElevenLabs
言語84言語
レスポンス形式ストリーミング: PCM · µ-law · A-law
ステータス提供中
プロバイダー
同じモデルを複数のプロバイダーがホストしている場合があります。バックエンドを固定したい場合は1つのプロバイダーを選び、そうでなければルーティングに選択を任せられます。
プロバイダーSlug1時間あたりレイテンシiTTSのレイテンシは音声の最初のバイトが届くまでの時間、STTのレイテンシは最初のトークンが届くまでの時間で計測しています。モード稼働率
ElevenLabs
4個のパラメーター
elevenlabs
$6.12
—
ストリーミング
対応言語
84言語
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
機能
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, tuned for multi-step tool use.
tool_use
コード
OpenAI SDKによるリアルタイム音声変換
question.pcm(24 kHz・16ビット・モノラルPCM)をOpenAI Realtimeプロトコルで1ターンとして送信し、音声の返答を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_max" }, 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" });
