600msも待てない音声エージェントのために

xAI: Grok Voice 3.0

xai/grok-voice-3-0
提供中 speech-to-speech 1プロバイダー
Playground

xAI's flagship realtime speech-to-speech voice agent over WebSockets, with reasoning on by default, low-latency turn-taking, interruptions and tool use such as web search.

作成者xAI
言語20言語
レスポンス形式ストリーミング: PCM · µ-law · A-law · Opus
バリアントモデル2個のID
ステータス提供中

バリアントモデル

同じ正規モデルファミリーに対して、作成者やプロバイダーが受け付けるネイティブのモデルIDです。

Grok Voice 3.0 Default

Pinned Grok Voice 3.0 release, selected via the model query param on /v1/realtime.

grok-voice-3.0
Grok Voice (latest) Alias

Alias that xAI points at its current flagship voice model, grok-voice-3.0 since 2026-10-14.

grok-voice-latest

プロバイダー

同じモデルを複数のプロバイダーがホストしている場合があります。バックエンドを固定したい場合は1つのプロバイダーを選び、そうでなければルーティングに選択を任せられます。

プロバイダーSlug1時間あたりレイテンシiTTSのレイテンシは音声の最初のバイトが届くまでの時間、STTのレイテンシは最初のトークンが届くまでの時間で計測しています。モード稼働率
xAI 5個のパラメーター
grok
$4.8
—
ストリーミング

対応言語

20言語
English en
Arabic (Egypt) ar-EG
Arabic (Saudi Arabia) ar-SA
Arabic (United Arab Emirates) ar-AE
Bengali bn
Chinese (Simplified) zh
French fr
German de
Hindi hi
Indonesian id
Italian it
Japanese ja
Korean ko
Portuguese (Brazil) pt-BR
Portuguese (Portugal) pt-PT
Russian ru
Spanish (Mexico) es-MX
Spanish (Spain) es-ES
Turkish tr
Vietnamese vi

機能

Speech to speech

Bidirectional realtime speech-to-speech over WebSocket.

speech_to_speech
Low-latency turn-taking

Natural conversational turn-taking.

turn_taking
Tool use

Integrated tool calling (e.g. web search) during conversation.

tool_use
Input transcription

Optional transcription of input audio, biased by a language hint and key terms.

input_transcription
Configurable reasoning effort

Reasoning is on by default and can be turned off per session with reasoning.effort none.

reasoning_effort

コード

言語

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: "grok-voice-3.0" }, 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: {
    voice: "eve",
    output_modalities: ["audio"],
    turn_detection: { type: null },
    audio: { input: { format }, output: { format } }
  }
});
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" });