OpenAI GPT-Realtime-2: Полное руководство по голосовой связи в реальном времени

Последнее обновление: 08/05/2026

  • Технология GPT-Realtime-2 обеспечивает сквозную обработку звука с задержкой 250–500 мс.
  • API предоставляет возможности для работы с голосовыми агентами, непрерывного перевода и транскрипции в реальном времени.
  • Он поддерживает WebRTC, WebSocket и SIP, а также модели Realtime и Realtime-mini на платформе Azure.
  • Он включает в себя передовые модели VAD, мультимодальности, MCP и многоагентных моделей для производства.

Модель OpenAI GPT для обработки голоса и аудио в реальном времени.

Прибытие OpenAI GPT-Realtime-2 и всё семейство моделей речи в реальном времени Это коренным образом меняет подход к созданию голосовых помощников, телефонных операторов и диалоговых интерфейсов. Речь идёт уже не просто о преобразовании аудио в текст и текста в аудио, а о бесшовных диалогах с низкой задержкой, способных понимать тон, намерения и контекст практически как человек.

В этой статье мы спокойно, но прямо разберем следующее: Как работают OpenAI и Azure OpenAI Realtime API, какие типы сессий существуют, какие задержки могут быть достигнуты и как они интегрируются с WebRTC, WebSocket или SIP?Какие модели доступны, как настраиваются сессии (VAD, инструменты, MCP, мультимодальность и т. д.), и в каких случаях классическая архитектура STT + LLM + TTS по-прежнему подходит? Если вы хотите создать серьезного голосового агента в 2026 году, вот полная картина.

Что такое GPT-Realtime-2 и какую проблему он решает?

GPT-Realtime-2

Основная идея проста: модель, способная обрабатывать аудиосигнал от начала до конца в режиме реального времени, без использования трех отдельных моделей. (STT, LLM, TTS). Традиционно рабочий процесс обработки голоса с помощью ИИ выглядел следующим образом:

  • Преобразование речи в текст (STT): преобразует голос пользователя в текст.
  • магистр права: генерирует текстовый ответ на основе этой транскрипции.
  • Преобразование текста в речь (TTS): синтезирует ответ в аудиоформат.

Этот конвейер работает, но Каждый шаг добавляет от 100 до 300 миллисекунд.Если сложить все затраты на передачу данных по сети, обработку и постановку в очередь, то легко получится 1-2 секунды тишины после того, как человек перестает говорить. В телефонном разговоре эта «мертвая» пауза имеет решающее значение: нет индикатора выполнения, нет вращающегося индикатора; только тишина… и многие люди решают повесить трубку.

В семействе GPT-Realtime представлены модели, включая новую GPT-Realtime-2. Вся обработка аудиосигнала выполняется непосредственно в аудиорежиме.Модель имеет доступ к тону, ритму и эмоциям и может генерировать аудиоответы без необходимости перестраивать и повторно синтезировать текст. На практике OpenAI и Azure говорят о следующем: Задержка между отправителями и получателями составляет от 250 до 500 мс.что уже само по себе попадает в категорию "ощущение, будто разговариваешь с человеком, который немного подумал, прежде чем ответить".

Это влияет не только на скорость. Благодаря непосредственной работе со звуком, модель больше не теряет нюансов, которые исчезают при плоской транскрипции.Вздохи, изменения тона, указывающие на гнев или облегчение, сомнения, смех… В испаноязычных странах, где телефонное общение обычно более экспрессивно, чем на других рынках, этот нюанс определяет разницу между комфортным разговором и неприятным взаимодействием.

Типы сессий в реальном времени: голосовой агент, перевод и транскрипция.

Первое, что нужно решить перед интеграцией GPT-Realtime-2, это: Какой тип сеанса вам необходим в зависимости от желаемого результата?API реального времени выделяет три основных шаблона:

1. Сессия с голосовым агентом (разговор)
Он используется, когда вам нужно Полноценный разговорный помощник, способный отвечать, вызывать инструменты и поддерживать актуальность информации.Клиент подключается к стандартной конечной точке. /v1/realtimeОн отправляет аудио или текст и принимает события с ответами модели, вызовами инструментов, изменениями сеансов и т. д. Это классический режим «голосового помощника» для:

  • Агенты службы поддержки клиентов.
  • Персональные голосовые помощники.
  • Веб- или мобильные приложения с непрерывным диалогом.

2. Сеанс перевода (непрерывный перевод)
Здесь же цель иная: Используйте API в качестве параллельного интерпретатора.Вместо конечной точки voice-gent используется следующая: /v1/realtime/translationsКлиент непрерывно передает аудиосигнал и Сервис возвращает переведенные аудиозаписи и неточности в транскрипции.Как таковых, здесь нет отдельных сцен "пользователь/помощник"; сессия представляет собой непрерывный поток перевода.

3. Сеанс транскрипции (транскрипция в режиме реального времени)
В этом случае мы просто хотим Текст из аудио, в реальном времени, без генерации моделью голосовых ответов.Изменения в транскрипции поступают по мере поступления аудиоданных, но голосовой вывод от голосового помощника отсутствует. Идеально подходит для создания субтитров, подсчета минут в реальном времени или анализа разговоров.

В итоге, Используйте сеансы голосового помощника, когда вам нужен говорящий ассистент; используйте перевод, когда вам нужен переводчик; и используйте транскрипцию, когда вам нужен только текст без сгенерированного ответа.Каждый тип сессии имеет свою собственную конечную точку, последовательность событий и специфические характеристики.

Доступные модели реального времени и базовые возможности

На уровне Azure OpenAI представлен широкий спектр моделей реального времени для обработки голоса и аудио. Среди наиболее распространенных развертываемых решений можно выделить следующие:

  • gpt-4o-realtime-preview-2024-12-17: вариант в реальном времени на основе GPT-4o.
  • gpt-4o-mini-realtime-preview-2024-12-17Более лёгкий и дешёвый вариант.
  • gpt-realtime-2025-08-28: Общая линия связи в режиме реального времени.
  • gpt-realtime-mini-2025-10-06 y 2025-12-15: модели, оптимизированные по стоимости.
  • gpt-realtime-1.5-2026-02-23: последующая эволюция с расширенными возможностями.

Все эти модели имеют ряд общих ключевых особенностей:

  • Входной контекст, содержащий до 32 000 токенов. и 4.096 токенов на выходе, чего более чем достаточно для содержательных разговоров с расширенным контекстом.
  • Аудио- и текстовый режимыОни могут принимать и передавать аудиосигнал, а также обрабатывать «классический» текст.
  • Единая конечная точка GA с суффиксом /openai/v1 в Azure, как для API реального времени, так и для всех остальных операций.
Эксклюзивный контент – нажмите здесь  Pixnapping: скрытая атака, которая захватывает то, что вы видите на Android

Кроме того, добавлены следующие элементы. Для работы с API реального времени существуют специальные голосовые помощники, такие как Cedar и Marin.Наряду с классическим Alloy, эти наушники разработаны для того, чтобы голосовое взаимодействие звучало более естественно. Идеально подходят для проектов, где стоимость имеет решающее значение, а сложность задачи не слишком высока. gpt-realtime-mini Как правило, это оптимальное сочетание задержки и цены.

Подключение API: WebRTC, WebSocket и SIP

GPT-Realtime-2-model

Одним из главных преимуществ GPT-Realtime-2 и связанного с ним API для работы с данными в реальном времени является то, что Вы не привязаны к одному виду транспорта.Вы можете выбрать в зависимости от типа приложения:

WebRTC
Это рекомендуемый вариант для Клиентские приложения (веб и мобильные), где приоритетом является низкая задержка.WebRTC обеспечивает время отклика около 100 мс во многих случаях и оптимизированное управление звуком для браузеров.

Вебсокет
Идеально подходит для связь между серверамиИнтеграция с медиаконвейерами или когда требуется больший контроль над потоком событий из бэкэнда. Типичная задержка составляет около 200 мс. Это очень полезно при подключении API реального времени к системам очередей, микросервисам или пакетной обработке аудио.

SIP (протокол инициации сессии)
А вот самая интересная новость из мира телефонных звонков: API реального времени поддерживает протокол SIP для интеграции с телефонными сетями.Это означает, что вы можете напрямую подключить агента ИИ к корпоративной телефонной инфраструктуре (АТС, облачные АТС, VoIP-провайдеры и т. д.) без необходимости самостоятельно настраивать промежуточный аудиомост.

На рынках, подобных Испании или большей части Латинской Америки, где Телефонная поддержка остается основным каналом связи с клиентами.Встроенная поддержка SIP значительно упрощает проектирование: меньше компонентов, меньшая задержка, более низкая стоимость и меньшее количество точек отказа.

Ход беседы, события и настройки сессии.

В основе работы сессий в режиме реального времени лежит... Система событий, которая управляет всем: созданием сессии, настройкой, отправкой аудио, генерацией ответов, инструментами, VAD.…После того, как будет установлено соединение с конечной точкой /realtimeСервер обычно отвечает событием. session.created который содержит:

  • Идентификатор сессии.
  • Активная модель (Например, gpt-4o-mini-realtime-preview-2024-12-17).
  • Поддерживаемые режимы (аудио, текст).
  • Начальные инструкции и голос по умолчанию.
  • Конфигурация VAD и форматы входного/выходного аудиосигнала.
  • Дата окончания срока (до 30 минут за сеанс).

Обычно первое сообщение, которое клиент отправляет после подключения, — это session.update для тонкая настройка поведения сессииВ этой загрузке вы можете:

  • Определите голос использовать и инструкции ассистента (роль, тон, ограничения, формат ответа…).
  • Выберите формат входного и выходного аудио (например, PCM16 на частоте 24 кГц, моно).
  • Активировать ввод аудио транскрипта указывая на модель STT как whisper-1 получать события audio_transcription.completed.
  • Настройте Обнаружение голосовой активности (VAD) через поле turn_detection.
  • Объявить Инструменты и серверы MCP что модель сможет вызвать.

Типичный пример настройки сессии выглядит примерно так:

{ "type": "session.update", "session": { "voice": "alloy", "instructions": "", "input_audio_format": "pcm16", "input_audio_transcription": { "model": "whisper-1" }, "turn_detection": { "type": "server_vad", "threshold": 0.5, "prefix_padding_ms": 300, "silence_duration_ms": 200, "create_response": true }, "tools": [] } }

Сервер подтвердит это событием. session.updated это означает, что конфигурация активна. Далее, Ведение диалога осуществляется посредством таких событий, как... response.create, response.done, conversation.item.createТекстовые и аудио-изменения, а также инструменты..

VAD, реплики в разговоре и управление потоком звука.

Ключевым элементом для естественного звучания голоса является то, как система определяет, когда пользователь закончил говорить. API реального времени предлагает несколько способов сделать это. Обнаружение голосовой активности (VAD), контролируемый имуществом turn_detection сессии.

server_vad
Это режим по умолчанию. Автоматически фрагментирует аудиофайлы на основе пауз.Сервер поддерживает буфер входного аудиосигнала (то, что клиент отправляет вместе с такими событиями, как...). input_audio_buffer.append) и, когда оно обнаруживает конец речи в соответствии с порогом тишины, оно может:

  • Подтвердите получение аудиосигнала.
  • Запустить генерацию ответа, если create_response находится в true.

семантический_вад
Вот модель. Определите конец реплики, исходя из слов и смыслового контекста.Не только из-за пауз. Это снижает вероятность прерывания собеседника на полуслове или преждевременного фрагментирования стенограммы. Очень полезно для более естественного разговора между голосами.

никто
В этом режиме автоматическая вспомогательная подача кислорода полностью отключается. Клиент вручную управляет сменами.Обычно используется схема "нажми и говори" (PTT). Она применяется путем явной отправки событий подтверждения буфера и response.create Когда вам нужно вызвать ответную реакцию. Идеально подходит, если у вас уже есть собственный внешний VAD или запрограммированный аудиопоток.

Эксклюзивный контент – нажмите здесь  Как использовать Gemini в Gmail

Кроме того, это возможно. Используйте сервер VAD без автоматической генерации ответов.Просто почините turn_detection.create_response a falseСистема продолжает отслеживать окончание голосовых сообщений, но не инициирует ответные действия до тех пор, пока вы их не отправите. response.createЭто очень полезно в сценариях, требующих модерации или предварительной проверки человеком.

Ответы, отмены, контекст и использование внеполосных каналов.

Для генерации ответа клиент отправляет событие. response.createСервер отвечает следующим образом: response.created И в процессе обработки он генерирует ряд промежуточных событий:

  • response.output_item.added
  • conversation.item.created
  • response.content_part.added
  • response.audio_transcript.delta / response.output_audio_transcript.delta
  • response.audio.delta / response.output_audio.delta
  • События ...done для каждой части (аудио, текст, контент).

Благодаря этим дельтам, Воспроизведение аудио можно начать практически сразу.при этом модель продолжает «говорить». Закончив, она отправляет сообщение. response.done с окончательным структурированным ответом, включающим расшифровку и показатели использования токенов.

Иногда нежелательно добавлять ответ к основному статусу беседы. Вот тут-то и пригодится понятие... внеполосные ответыВы можете создать ответ с помощью "conversation": "none" внутри объекта responseчто указывает на то, что:

  • Этот ответ не будет добавлен в стандартную ветку обсуждения.
  • Вы можете использовать response.metadata обозначить тему или цель.

Также возможно пройти пользовательский контекст для этих внеполосных ответовиспользуя матрицу input со ссылками на уже существующие сообщения или дополнительные сообщения. Это элегантный способ:

  • Сгенерируйте альтернативные ответы.
  • Ограничьте количество изменений, которые учитывает модель.
  • Задавайте конкретные вопросы, не «загрязняя» основную беседу.

Если в любое время вам понадобится прервать помощника Поскольку пользователь перебивает его или больше не хочет слушать, вы можете использовать response.cancelКроме того, мероприятие conversation.item.truncate позволяет усекать сгенерированный аудиофайл и его транскрипцию на стороне сервера.чтобы в контексте не осталось ни одного текста, который человек никогда не слышал.

Совместимость с вводом изображений и MCP.

Модели реального времени не ограничиваются аудио и текстом. Они также принимают изображения в рамках диалога.Это открывает двери для мультимодальных взаимодействий, когда пользователь одновременно отображает что-либо на экране и говорит:

Для добавления изображения отправляется событие. conversation.item.create содержимое которого включает блок input_image с изображением, закодированным в base64, или URL-адресом со схемой data:imageЗатем модель может Основывайте свой ответ на том, что видите.Идеально подходит, например, для визуальной технической поддержки или экскурсий.

С другой стороны, API реального времени поддерживает Серверы MCP (Model Context Protocol)По сути, вы можете указать удаленный MCP-сервер в качестве инструмента в настройках сессии:

  • Вы определяете server_label (например, «полоса»).
  • Вы указываете server_url, токен авторизации и политика утверждения (require_approval).

Таким образом, сервис позаботится обо всем остальном. автоматически управлять вызовами к этим инструментам В рамках диалога. Это очень мощный способ значительно расширить возможности агента (платежи, CRM, ERP и т. д.) без необходимости самостоятельной реализации всего протокола оркестровки.

Безопасность, идентификаторы и модерация

При работе с конечными пользователями, особенно с теми, кого легко идентифицировать (клиентами, пациентами, студентами и т. д.), целесообразно использовать идентификаторы безопасностиAPI реального времени позволяет отправлять стабильное и обеспечивающее конфиденциальность значение (например, хешированный внутренний идентификатор) в заголовке. OpenAI-Safety-Identifier.

Этот идентификатор Это не обязательно, но рекомендуется. Поскольку это помогает OpenAI обнаруживать и предотвращать злоупотребления без необходимости остановки всей организации: в случае выхода ситуации из-под контроля можно принять меры против конкретного пользователя. Важно: Он не наследуется от других API.Если вы уже используете safety_identifier В API ответов вам необходимо явно передавать его снова при каждом подключении или сеансе в режиме реального времени.

На уровне пользовательского интерфейса множество примеров интеграции Меры модерации внедряются непосредственно в процесс проведения мероприятия.Например, пометка сообщения как «в процессе» по мере его поступления. response.text.deltaи меняется на «неудачно» или «одобрено» в зависимости от того, получено ли событие. guardrail_tripped o response.doneДанный метод модерации может быть адаптирован к конкретным задачам: от простого языкового фильтра до строгих правил в регулируемых секторах.

Передовые архитектуры: супервизоры, многоагентные системы и передача управления.

Помимо «единой модели, взаимодействующей с пользователем», сочетание GPT-Realtime-2 с мощными текстовыми моделями позволяет продвинутые модели агентовКомпания OpenAI сама продемонстрировала некоторые из них с помощью своего SDK для агентов:

Шаблон «Чат-супервайзер»
В этой архитектуре роли разделены:

  • Un агент чата в режиме реального времени (на основе модели реального времени) отвечает за общение с пользователем, сбор данных, поддержание беглости речи и решение простых задач.
  • Un модель текстового супервизора (например, gpt-4.1) обрабатывает сложные вызовы инструментов, длинные логические рассуждения и ответы высокого уровня.

Преимущества такого подхода:

  • Простая процедура адаптацииЕсли у вас уже есть хорошо настроенный текстовый чат-бот, вы можете повторно использовать его подсказки и инструменты в качестве супервизора.
  • Контролируемые затратыГолосовой агент может использовать недорогую модель Realtime-mini, переходя к более мощной модели только при необходимости.
  • Более естественный пользовательский опытГолосовая модель отвечает немедленно, хотя затем она делегирует задачу внутри системы, и перед доставкой окончательного контента возникает небольшая задержка.
Эксклюзивный контент – нажмите здесь  Hugging Face выпускает открытый клон модели DeepSeek-R1

Схема последовательной передачи управления (многоагентная)
Этот шаблон, вдохновленный OpenAI Swarm, определяет сеть специализированных агентовОдин агент обрабатывает аутентификацию пользователей, другой — возвраты, третий — продажи, четвёртый — перенаправляет запрос к оператору и так далее. Пользователь переводится между агентами в зависимости от его намерений, и каждая передача координируется с событиями. session.update которые изменяют инструкции и активные инструменты.

Данная модель позволяет:

  • Наличие агентов с очень длинные и подробные инструкции не смешивая все это в один мега-запрос.
  • Применять Более дорогостоящие модели рассуждений применяются только в точках высокого риска. (например, подтверждение возврата средств).
  • Осуществлять конечные автоматы для сбора конфиденциальных данных (имя, номер телефона…) с посимвольным подтверждением.

В примерах из Next.js, используемых в Agents SDK, обычно показано следующее:

  • Селектор «сценарий» для выбора графа агентов.
  • Регистрация и расшифровка событий в режиме реального времени.
  • Кнопки для переключения между автоматическим режимом VAD и PTT, а также для отключения воспроизведения звука.

Azure OpenAI Realtime: требования, примеры и инструменты.

В экосистеме Azure API реального времени для GPT интегрирован в Семейство GPT-4o для голосового взаимодействия с низкой задержкой.Для его использования вам потребуется:

  • подписка Azure.
  • Ресурс Microsoft Foundry в совместимом регионе.
  • Ключ API или аутентификация с помощью Microsoft Enter ID (рекомендуется для производства).
  • Реализация модели GPT Realtime (Например, gpt-realtime) в этом регионе.

В портале Foundry вы настраиваете проект, выбираете «Сборка», переходите на вкладку «Модели», выбираете базовую модель Realtime и нажимаете «Развернуть». Оттуда вы можете даже... Запустите тестовый чат непосредственно на портале.:

  • Вы выбираете реализацию. gpt-realtime.
  • При желании вы можете настроить инструкции, параметры личности, формат ответа, а также такие параметры, как пороговое значение VAD, заполнение префикса или длительность паузы.
  • Вы нажимаете кнопку «Начать прослушивание» и говорите в микрофон.
  • Чтобы завершить разговор, вы отключаете прослушивание через интерфейс.

На уровне кода есть примеры на Python (с библиотека openai[realtime] и, по желанию, azure-identity (для аутентификации без ключа) и в C#, с помощью типичного быстрого старта, который создает консольный проект и настраивает переменные среды. AZURE_OPENAI_ENDPOINT, AZURE_OPENAI_DEPLOYMENT_NAME, AZURE_OPENAI_API_KEYи использует RealtimeClient y RealtimeSessionClient для входа в систему, отправки текстовых сообщений, получения потокового аудио и текстовых сообщений и т. д.

Примеры наглядно демонстрируют тип ожидаемого результата: текстовые дельты, например... "У меня всё хорошо" а также аудиоблоки размером 4.800, 7.200, 12.000 байт и т. д., позволяющие составлять полные фразы, например: «Конечно, я здесь, чтобы помочь. В чем вам нужна помощь?». Именно такая детализация позволяет синхронизировать субтитры, отображать часть текста в пользовательском интерфейсе или отлаживать задержки.

Аудиоформат, ограничения, ошибки и лучшие практики.

Чтобы избежать проблем, лучше всего соблюдать требования API в отношении аудиоформат:

  • PCM16 (16-битный линейный).
  • Булочка (один канал).
  • 24 кГц частота выборки.

Если вы собираетесь использовать файлы, обычно их конвертируют с помощью... FFmpeg, Например:

ffmpeg -i input.wav -ar 24000 -ac 1 -f s16le input.pcm

При отправке аудиофайлов в формате JSON фрагменты должны быть следующими: закодировано в base64 и рекомендуется нарезать их на фрагменты длительностью около 100 мс чтобы избежать перегрузки сети или сессии. Сессии, в свою очередь, имеют Максимальная продолжительность — приблизительно 30 минут.По истечении этого времени необходимо возобновить соединение и, если требуется непрерывность, перестроить контекст в новой сессии.

Что касается ошибок, наиболее распространенными проблемами являются:

  • 401 Несанкционированный доступ: недействительный ключ или конфликт с бесключевой аутентификацией (например, с переменной среды) AZURE_OPENAI_API_KEY установлено там, где этого быть не должно).
  • 429 Слишком много запросовПревышен лимит запросов, что требует реализации повторных попыток. экспоненциальный откат и проверьте размер комиссионных на портале.
  • Ошибки подключения WebSocketЗаблокированные порты, неправильно настроенный прокси, некорректная конечная точка… обычно решаются путем проверки. https://<endpoint>/openai/v1 и что порт 443 функционирует.

Окончательно, Для сеансов в реальном времени и завершения чатов установлены отдельные квоты.Поэтому, если вы используете оба подхода параллельно, целесообразно отслеживать оба параметра.

Взятые вместе, GPT-Realtime-2 и окружающая его экосистема Realtime позволяют перейти от разрозненных голосовых прототипов к разговорным агентам, которые говорят, слушают, понимают и действуют практически в реальном времени, с архитектурами любой сложности, в зависимости от потребностей вашего продукта. Правильный выбор типа сессии, транспортного протокола (WebRTC, WebSocket, SIP), конфигурации VAD и модели преобразует медленный, неотзывчивый робот в нечто гораздо более похожее на плавный разговор с человеком, который никогда не устает отвечать на звонки.