OpenAI đã ra mắt thế hệ mô hình giọng nói mới vào ngày 6 tháng 11 năm 2026, với GPT-Realtime-2 là điểm nhấn: mô hình speech-to-speech có khả năng suy luận cấp GPT-5, cửa sổ ngữ cảnh 128.000 token và tuỳ chọn cấu hình mức suy luận để cân bằng độ trễ với chất lượng câu trả lời. Mô hình này chạy trên Realtime API hiện có, nên nếu bạn đã dùng gpt-realtime, việc di chuyển chủ yếu là đổi model ID sang gpt-realtime-2 và cập nhật một số trường cấu hình công cụ.
Bài viết này tập trung vào cách triển khai GPT-Realtime-2: model này khác gì so với bản trước, giá ra sao, cách kết nối bằng WebSocket, cách cấu hình voice/reasoning/tool, cách dùng hình ảnh đầu vào và cách kiểm thử phiên Realtime trong Apidog.
Để hiểu thêm về dòng mô hình 2026 của OpenAI, xem GPT-5.5 là gì. Với API hình ảnh, xem Cách sử dụng GPT-Image-2 API.
Tóm tắt nhanh
- Model ID:
gpt-realtime-2. - Dùng cho tác nhân giọng nói thời gian thực: nhận âm thanh, suy luận, gọi công cụ và trả lời bằng âm thanh.
- Ngữ cảnh: 128.000 token.
- Đầu ra tối đa: 32.000 token.
- Đầu vào: văn bản, âm thanh, hình ảnh.
- Đầu ra: văn bản, âm thanh.
- Giá âm thanh: 32 đô la / 1 triệu token đầu vào, 64 đô la / 1 triệu token đầu ra.
- Đầu vào audio đã cache: 0,40 đô la / 1 triệu token.
- Voice mới: Cedar và Marin.
- Reasoning effort:
minimal,low,medium,high,xhigh. - Kết nối chính cho voice agent:
wss://api.openai.com/v1/realtime?model=gpt-realtime-2 - Hỗ trợ SIP cho cuộc gọi điện thoại thật.
- Model đi kèm:
- GPT-Realtime-Translate: dịch trực tiếp, 0,034 đô la/phút.
- GPT-Realtime-Whisper: speech-to-text trực tiếp, 0,017 đô la/phút.
GPT-Realtime-2 là gì?
GPT-Realtime-2 là mô hình speech-to-speech một bước. Thay vì tự ghép pipeline:
Speech-to-Text -> LLM -> Text-to-Speech
bạn gửi âm thanh vào Realtime API và nhận âm thanh trả lời từ cùng một phiên. Mô hình xử lý nhận dạng giọng nói, suy luận, chọn công cụ và tạo giọng nói trong cùng luồng tương tác.
GPT-Realtime-2 nhận các loại input sau:
- Văn bản
- Âm thanh
- Hình ảnh
Và trả về:
- Văn bản
- Âm thanh
Điểm mới đáng chú ý là đầu vào hình ảnh. Bạn có thể gửi ảnh chụp màn hình, ảnh giao diện lỗi hoặc ảnh hiện trường vào cùng cuộc hội thoại, sau đó tiếp tục hỏi bằng giọng nói và nhận phản hồi bằng giọng nói.
Ví dụ use case:
- Agent hỗ trợ người dùng đọc lỗi trên màn hình.
- Kỹ thuật viên gửi ảnh bảng dây và nhận hướng dẫn chẩn đoán.
- Voice assistant mô tả màn hình cho người dùng trong cuộc gọi hỗ trợ.
Thông số kỹ thuật
| Thuộc tính | Giá trị |
|---|---|
| Model ID | gpt-realtime-2 |
| Cửa sổ ngữ cảnh | 128.000 token |
| Đầu ra tối đa | 32.000 token |
| Input modalities | Văn bản, âm thanh, hình ảnh |
| Output modalities | Văn bản, âm thanh |
| Ngày cắt dữ liệu | 30-09-2024 |
| Reasoning effort |
minimal, low, medium, high, xhigh
|
| Function calling | Có |
| Remote MCP server | Có |
| Image input | Có |
| SIP calling | Có |
Có gì thay đổi so với gpt-realtime
So với gpt-realtime-1.5, GPT-Realtime-2 cải thiện rõ ở các benchmark âm thanh:
- Big Bench Audio: 81,4% → 96,6%.
- Audio MultiChallenge: 34,7% → 48,5%.
Các điểm này được đo ở mức reasoning high và xhigh. Trong production, mặc định nên bắt đầu với low để giảm độ trễ, sau đó chỉ tăng khi có bằng chứng chất lượng phản hồi chưa đạt.
Các thay đổi quan trọng khi triển khai:
-
Preamble
- Mô hình có thể nói các cụm như “để tôi kiểm tra” trước khi trả lời đầy đủ.
- Hữu ích để che độ trễ khi đang suy luận hoặc gọi công cụ.
-
Gọi công cụ song song
- Có thể gọi nhiều function cùng lúc.
- Mô hình vẫn có thể tường thuật tiến trình trong khi tool đang chạy.
-
Phục hồi tốt hơn
- Các lượt nói không rõ hoặc lỗi một phần được xử lý mềm hơn.
- Ít phải restart cuộc hội thoại.
-
Kiểm soát giọng điệu theo ngữ cảnh
- Có thể yêu cầu nói chậm hơn, trang trọng hơn hoặc tự nhiên hơn trong cùng phiên.
- Thuật ngữ chuyên ngành được duy trì nhất quán hơn trong phiên dài.
Ngữ cảnh tăng từ 32k lên 128k token, phù hợp hơn cho:
- Tổng đài hỗ trợ.
- Trợ lý ngân hàng.
- Gia sư bằng giọng nói.
- Agent có nhiều lượt gọi công cụ.
- Cuộc gọi dài cần giữ lịch sử hội thoại.
Giá GPT-Realtime-2
GPT-Realtime-2 tính phí theo token, tách riêng văn bản, âm thanh và hình ảnh.
| Loại token | Đầu vào | Đầu vào đã cache | Đầu ra |
|---|---|---|---|
| Văn bản | 4,00 đô la / 1 triệu | 0,40 đô la / 1 triệu | 24,00 đô la / 1 triệu |
| Âm thanh | 32,00 đô la / 1 triệu | 0,40 đô la / 1 triệu | 64,00 đô la / 1 triệu |
| Hình ảnh | 5,00 đô la / 1 triệu | 0,50 đô la / 1 triệu | Không áp dụng |
Nếu agent của bạn có system prompt ổn định hoặc tài liệu lặp lại, hãy tận dụng cached input. Với audio, cached input giảm chi phí đáng kể cho phần ngữ cảnh lặp.
Để so sánh với các model khác, xem Giá GPT-5.5.
Các model đi kèm tính theo phút:
-
GPT-Realtime-Translate: 0,034 đô la/phút.
- Hỗ trợ 70 ngôn ngữ đầu vào.
- Hỗ trợ 13 ngôn ngữ đầu ra.
- Có Tỷ lệ lỗi từ thấp hơn 12,5% so với các model khác được thử nghiệm bằng tiếng Hindi, Tamil và Telugu.
-
GPT-Realtime-Whisper: 0,017 đô la/phút.
- Dùng cho speech-to-text trực tiếp.
- Phù hợp với phụ đề trực tiếp hoặc transcription liên tục.
Chọn model theo nhu cầu:
| Nhu cầu | Model nên dùng |
|---|---|
| Voice agent cần suy luận và trả lời bằng giọng nói | gpt-realtime-2 |
| Phiên dịch trực tiếp đa ngôn ngữ | gpt-realtime-translate |
| Chỉ cần transcript thời gian thực | gpt-realtime-whisper |
Endpoint và xác thực
Các endpoint liên quan:
POST https://api.openai.com/v1/chat/completions
POST https://api.openai.com/v1/responses
WSS wss://api.openai.com/v1/realtime?model=gpt-realtime-2
WSS wss://api.openai.com/v1/realtime?call_id={call_id} # cho SIP
POST https://api.openai.com/v1/realtime/translations
POST https://api.openai.com/v1/realtime/transcription_sessions
Với voice agent, endpoint chính là WebSocket:
wss://api.openai.com/v1/realtime?model=gpt-realtime-2
Header xác thực:
Authorization: Bearer $OPENAI_API_KEY
OpenAI-Beta: realtime=v1
Thiết lập biến môi trường:
export OPENAI_API_KEY="sk-proj-..."
Kết nối GPT-Realtime-2 bằng WebSocket
Cài dependency:
npm install ws
Client Node.js tối thiểu:
import WebSocket from "ws";
const ws = new WebSocket(
"wss://api.openai.com/v1/realtime?model=gpt-realtime-2",
{
headers: {
Authorization: `Bearer ${process.env.OPENAI_API_KEY}`,
"OpenAI-Beta": "realtime=v1",
},
}
);
ws.on("open", () => {
ws.send(JSON.stringify({
type: "session.update",
session: {
voice: "cedar",
instructions: "You are a friendly support agent for a fintech app.",
input_audio_format: "pcm16",
output_audio_format: "pcm16",
turn_detection: { type: "server_vad" },
reasoning: { effort: "low" },
},
}));
});
ws.on("message", (raw) => {
const event = JSON.parse(raw.toString());
if (event.type === "response.audio.delta") {
// base64 PCM16 audio chunk
// Pipe chunk này ra speaker, browser hoặc audio pipeline của bạn
process.stdout.write(Buffer.from(event.delta, "base64"));
}
if (event.type === "response.done") {
console.log("Response completed");
}
});
ws.on("error", console.error);
Luồng cơ bản của một phiên Realtime:
- Mở WebSocket.
- Gửi
session.updateđể cấu hình voice, instructions, audio format, reasoning. - Gửi audio bằng các event
input_audio_buffer.append. - Commit buffer nếu bạn tự điều khiển lượt nói.
- Gửi
response.create. - Nhận audio bằng các event
response.audio.delta.
Ví dụ gửi audio chunk:
function sendAudioChunk(base64Pcm16) {
ws.send(JSON.stringify({
type: "input_audio_buffer.append",
audio: base64Pcm16,
}));
}
Nếu dùng server-side VAD, model có thể tự phát hiện khi người dùng ngừng nói:
ws.send(JSON.stringify({
type: "session.update",
session: {
turn_detection: {
type: "server_vad"
}
}
}));
PCM16 ở 24 kHz là lựa chọn an toàn. G.711 mu-law và A-law cũng được hỗ trợ, đặc biệt hữu ích khi tích hợp với hệ thống điện thoại.
Nếu bạn muốn so sánh Realtime API với Responses API, xem Cách sử dụng GPT-5.5 API.
Cấu hình voice
GPT-Realtime-2 có hai voice mới:
- Cedar: giọng nam trầm, ấm, phù hợp với agent tổng quát.
- Marin: giọng nữ sáng, rõ, phù hợp với thông báo và dịch thuật.
Hai voice này độc quyền cho Realtime API.
Các voice trước đó vẫn có sẵn:
alloyashballadcoralechosageshimmerverse
Đổi voice trong cùng phiên bằng session.update:
ws.send(JSON.stringify({
type: "session.update",
session: {
voice: "marin"
}
}));
Sử dụng đầu vào hình ảnh
Bạn có thể thêm hình ảnh vào bất kỳ lượt người dùng nào. Ví dụ gửi ảnh chụp màn hình lỗi và hỏi model giải thích:
ws.send(JSON.stringify({
type: "conversation.item.create",
item: {
type: "message",
role: "user",
content: [
{
type: "input_image",
image_url: "https://example.com/screenshot.png"
},
{
type: "input_text",
text: "What does this error mean?"
}
],
},
}));
ws.send(JSON.stringify({
type: "response.create"
}));
Một số pattern triển khai:
-
QA bằng giọng nói
- Tester chụp giao diện lỗi.
- Agent mô tả lỗi và gợi ý bước kiểm tra.
-
Hỗ trợ kỹ thuật tại hiện trường
- Kỹ thuật viên gửi ảnh thiết bị.
- Agent hướng dẫn chẩn đoán từng bước.
-
Trợ năng
- Người dùng chia sẻ màn hình hoặc ảnh.
- Agent tường thuật nội dung bằng giọng nói.
Để tìm hiểu thêm về API hình ảnh, xem Cách sử dụng GPT-Image-2 API.
Function calling và MCP
GPT-Realtime-2 hỗ trợ:
- Function calling tiêu chuẩn.
- Remote MCP server.
Function calling tiêu chuẩn
Luồng triển khai tương tự Chat Completions:
- Khai báo tool trong
session.update. - Model phát event function call.
- Server của bạn thực thi function.
- Bạn gửi kết quả lại bằng
conversation.item.createvới loạifunction_call_output. - Model tiếp tục trả lời bằng giọng nói.
Điểm mới là model có thể gọi nhiều tool song song và vẫn tường thuật tiến trình cho người dùng.
Ví dụ cấu hình tool:
ws.send(JSON.stringify({
type: "session.update",
session: {
tools: [
{
type: "function",
name: "lookup_account",
description: "Look up account information by user ID.",
parameters: {
type: "object",
properties: {
user_id: {
type: "string"
}
},
required: ["user_id"]
}
}
]
}
}));
Remote MCP server
Với MCP, bạn cấu hình server URL và danh sách tool được phép. Realtime API có thể tự gọi MCP server thay vì buộc ứng dụng của bạn xử lý toàn bộ vòng lặp function calling.
ws.send(JSON.stringify({
type: "session.update",
session: {
tools: [
{
type: "mcp",
server_url: "https://mcp.example.com/sse",
allowed_tools: [
"lookup_account",
"list_transactions"
],
}
],
},
}));
Cách này hữu ích khi voice agent cần truy cập nhiều tool, ví dụ:
- Tra cứu tài khoản.
- Kiểm tra giao dịch gần nhất.
- Tạo ticket hỗ trợ.
- Kiểm tra trạng thái đơn hàng.
- Gửi liên kết xác minh.
Nếu bạn đang kiểm tra MCP server trước khi nối vào voice agent, xem hướng dẫn kiểm tra máy chủ MCP trong Apidog.
Gọi điện thoại bằng SIP
GPT-Realtime-2 có thể nhận cuộc gọi điện thoại thật qua SIP.
Luồng triển khai tổng quát:
- Cấu hình SIP trunk trỏ tới cổng SIP của OpenAI.
- Cuộc gọi đến tạo một phiên Realtime.
- Ứng dụng kết nối WebSocket bằng
call_id. - Model xử lý audio điện thoại và trả lời theo thời gian thực.
Endpoint WebSocket cho SIP:
wss://api.openai.com/v1/realtime?call_id={call_id}
Model chấp nhận trực tiếp:
- G.711 mu-law
- G.711 A-law
Điều này giúp giảm nhu cầu transcode trong bridge của bạn.
SIP đặc biệt phù hợp với:
- Tổng đài chăm sóc khách hàng.
- Voice bot xác minh thông tin.
- Agent đặt lịch.
- Agent tra cứu đơn hàng.
- Agent hỗ trợ kỹ thuật cấp 1.
Chọn reasoning effort
GPT-Realtime-2 có năm mức reasoning:
| Mức | Khi nào dùng | Tác động độ trễ |
|---|---|---|
minimal |
Câu trả lời đơn giản, yes/no, routing nhẹ | Gần như không |
low |
Mặc định, hỗ trợ thông thường, hội thoại hằng ngày | Nhỏ |
medium |
Cần làm rõ ý, gọi nhiều tool, xử lý ngữ cảnh phức tạp | Vừa |
high |
Suy luận nhiều bước, phân tích kỹ, review code bằng giọng nói | Cao |
xhigh |
Câu hỏi phân tích khó, benchmark, đánh giá chất lượng | Cao nhất |
Cấu hình trong session.update:
ws.send(JSON.stringify({
type: "session.update",
session: {
reasoning: {
effort: "low"
}
}
}));
Khuyến nghị triển khai:
- Bắt đầu với
low. - Log các trường hợp trả lời sai hoặc thiếu.
- Chỉ tăng lên
mediumhoặchighcho các intent cần suy luận sâu. - Tránh dùng
high/xhighmặc định cho cuộc gọi điện thoại vì người dùng dễ nhận ra độ trễ.
Kiểm thử Realtime API trong Apidog
WebSocket API khó debug bằng terminal vì phiên có trạng thái, nhiều event và audio chunk liên tục. Với Apidog, bạn có thể lưu, phát lại và so sánh các phiên Realtime dễ hơn.
Quy trình kiểm thử:
- Tạo request WebSocket mới.
- Dùng URL:
wss://api.openai.com/v1/realtime?model=gpt-realtime-2
- Thêm header:
Authorization: Bearer {{OPENAI_API_KEY}}
OpenAI-Beta: realtime=v1
-
Lưu các message JSON thường dùng:
session.updateinput_audio_buffer.appendresponse.create- cấu hình tool
- cấu hình MCP
Chạy lại cùng một script trên một kết nối.
Ghi lại toàn bộ event server trả về.
-
So sánh nhiều lần chạy khi thay đổi:
voicereasoning.effort- system instructions
- tool list
- audio format
Ví dụ session.update có thể lưu thành message template:
{
"type": "session.update",
"session": {
"voice": "{{voice}}",
"instructions": "You are a concise technical support agent.",
"input_audio_format": "pcm16",
"output_audio_format": "pcm16",
"turn_detection": {
"type": "server_vad"
},
"reasoning": {
"effort": "{{reasoning_effort}}"
}
}
}
Cấu trúc project nên có:
- Environment variable:
OPENAI_API_KEY. - Variable:
voice. - Variable:
reasoning_effort. - Script WebSocket cho từng kịch bản test.
- Bộ audio mẫu để phát lại khi so sánh regression.
Tải Apidog tại https://apidog.com/download.
Để so sánh với một model đa phương thức nhanh khác, xem Cách sử dụng Gemini 3 Flash Preview API.
Câu hỏi thường gặp
Tôi nên truyền model ID nào?
Dùng:
gpt-realtime-2
Model trước đó vẫn có thể dùng dưới tên:
gpt-realtime
Phiên bản nhẹ cũng đã ra mắt:
gpt-realtime-2-mini
Có thể gửi audio input khi model vẫn đang nói không?
Có. Realtime API hỗ trợ server-side VAD mặc định, nên model có thể dừng nói khi phát hiện người dùng bắt đầu nói. Bạn cũng có thể tắt VAD và tự điều khiển ranh giới lượt nói ở client.
Ngữ cảnh 128k có tính token âm thanh không?
Có. Âm thanh được chuyển thành token. Một giây âm thanh khoảng 50 token tuỳ định dạng. Cuộc gọi hỗ trợ dài có thể tiêu thụ ngữ cảnh nhanh hơn hội thoại văn bản, nên bạn nên log usage trước khi giả định 128k là dư.
GPT-Realtime-2 có hỗ trợ fine-tuning không?
Chưa. Theo model card, GPT-Realtime-2 chưa hỗ trợ fine-tuning, predicted outputs hoặc streaming text trên Chat Completions. Với Realtime endpoint, audio được stream tự nhiên.
GPT-Realtime-2 khác gì GPT-5.5 kết hợp TTS?
GPT-5.5 + TTS vẫn là pipeline văn bản. GPT-Realtime-2 xử lý giọng nói đầu cuối, nên có thể phản ứng tốt hơn với giọng điệu, ngập ngừng và nhấn mạnh trong lời nói. Nếu agent cần hiểu cách người dùng nói, GPT-Realtime-2 phù hợp hơn. Nếu chỉ cần suy luận văn bản, xem Cách sử dụng GPT-5.5 API.
Rate limit áp dụng như thế nào?
Bậc 1 bắt đầu ở 40.000 token/phút và tăng đến 15 triệu TPM ở Bậc 5. Rate limit được áp dụng theo từng model, nên hạn ngạch GPT-5 hiện có không tự động chuyển sang.
Tổng kết
GPT-Realtime-2 là lựa chọn phù hợp khi bạn cần xây dựng voice agent thời gian thực có khả năng suy luận, gọi công cụ, xử lý hình ảnh và hỗ trợ cuộc gọi điện thoại. Với ngữ cảnh 128k, reasoning cấp GPT-5, MCP, function calling song song và SIP, bạn có thể triển khai một agent giọng nói chạy xuyên suốt trên WebSocket thay vì tự ghép nhiều dịch vụ STT, LLM và TTS.
Lộ trình triển khai nên bắt đầu đơn giản:
- Kết nối WebSocket với
gpt-realtime-2. - Cấu hình
voice,instructions, audio format vàreasoning.effort. - Bắt đầu với
reasoning.effort = "low". - Thêm function calling hoặc MCP khi cần truy cập hệ thống bên ngoài.
- Dùng Apidog để lưu và phát lại các phiên WebSocket.
- Chỉ tăng reasoning effort khi có dữ liệu cho thấy chất lượng phản hồi chưa đủ.



Top comments (0)