
AIを知りたい
OpenAIのRealtime APIって何ですか?

AIエンジニア
Realtime APIはリアルタイムの音声会話を実現するAPIです。WebSocketを使って音声の入出力をリアルタイムで処理できます。

AIを知りたい
音声AIアシスタントが作れるってことですか?

AIエンジニア
その通りです!音声認識→AI処理→音声合成をすべてリアルタイムで行えます。遅延も非常に少ないです。
Realtime APIとは
OpenAI Realtime APIとは、WebSocket接続を通じてリアルタイムの音声会話を実現するAPIです。従来の「音声→テキスト→AI→テキスト→音声」のパイプラインを統合し、低遅延の自然な音声対話を可能にします。
Realtime APIの特徴

AIを知りたい
従来の音声AIとの違いは何ですか?

AIエンジニア
大きな違いを比較してみましょう。
| 項目 | 従来の方法 | Realtime API |
|---|---|---|
| 処理フロー | STT→LLM→TTS(3段階) | エンドツーエンド(1段階) |
| 遅延 | 2-5秒 | 300ms以下 |
| 感情表現 | テキスト経由で失われる | 音声のニュアンスを保持 |
| 割り込み | 困難 | 自然な割り込み対応 |
| 接続方式 | REST API | WebSocket |
Realtime APIの基本実装

AIを知りたい
実装方法を教えてください!

AIエンジニア
JavaScriptでのWebSocket接続の例です。
// WebSocket接続
const ws = new WebSocket(
"wss://api.openai.com/v1/realtime?model=gpt-4o-realtime-preview",
{ headers: { "Authorization": `Bearer ${API_KEY}` } }
);
// セッション設定
ws.on("open", () => {
ws.send(JSON.stringify({
type: "session.update",
session: {
modalities: ["text", "audio"],
voice: "alloy",
instructions: "あなたは親切な日本語アシスタントです。",
turn_detection: { type: "server_vad" }
}
}));
});
// 音声データの送信
function sendAudio(audioData) {
ws.send(JSON.stringify({
type: "input_audio_buffer.append",
audio: base64Encode(audioData)
}));
}
// レスポンスの受信
ws.on("message", (data) => {
const event = JSON.parse(data);
if (event.type === "response.audio.delta") {
playAudio(base64Decode(event.delta));
}
});
Realtime APIの活用シーン

AIを知りたい
どんなアプリケーションに使えますか?

AIエンジニア
さまざまなリアルタイム音声アプリに応用できます。
| 活用シーン | 説明 | メリット |
|---|---|---|
| カスタマーサポート | AIによる電話対応 | 24時間対応可能 |
| 語学学習 | AIとの会話練習 | ネイティブレベルの発音 |
| 音声アシスタント | スマートホーム操作 | 自然な対話体験 |
| 面接練習 | 模擬面接AI | フィードバック付き |
| 通訳 | リアルタイム翻訳 | 低遅延で自然 |
料金

AIを知りたい
料金はどうなってますか?

AIエンジニア
通常のAPIより割高ですが、統合ソリューションとして見ればコスパは良いです。
| 項目 | 料金 |
|---|---|
| 音声入力 | $100/百万トークン |
| 音声出力 | $200/百万トークン |
| テキスト入力 | $5/百万トークン |
| テキスト出力 | $20/百万トークン |

AIを知りたい
音声AIって面白そうですね!

AIエンジニア
Realtime APIは次世代のユーザーインターフェースです。テキストだけでなく音声で自然に対話できるアプリケーションの可能性は無限大ですよ!
