О чём урок
Цель: Этот notebook демонстрирует, как использовать саму Realtime модель для точной транскрипции пользовательского аудио out-of-band, применяя то же самое websocket-соединение сессии, что позволяет избежать ошибок и несоответствий, часто возникающих при использовании отдельной модели транскрипции (gpt-4o-transcribe/whisper-1). Мы называем это out-of-band транскрипцией с использованием Realtime модели. Это просто второй запрос response.create на том же Realtime WebSocket, помеченный таким образом, чтобы он не записывался в активное состояние беседы. Модель запускается снова с другим набором инструкций (prompt для транскрипции), инициируя новый проход inference, который отделен от основного речевого высказывания ассистента. В нем описывается, как создать клиент для взаимодействия между серверами, который: Передает аудио с микрофона в потоковом режиме голосовому агенту OpenAI Realtime. Воспроизводит произнесенные ответы агента. После каждого высказывания пользователя генерирует высококачественную текстовую транскрипцию, используя ту же Realtime модель. Это достигается с помощью вторичного запроса response.create: Этот notebook демонстрирует использование самой Realtime модели для транскрипции: Контекстно-ориентированная транскрипция: Использует полный контекст сессии для повышения точности транскрипции. Неинтрузивная: Работает вне живой беседы, поэтому транскрипция никогда не добавляется обратно в состояние сессии. Настраиваемые инструкции: Позволяет адаптировать prompt'ы для транскрипции под конкретные сценарии использования. Realtime модель лучше, чем модель транскрипции, следует инструкциям. Realtime API предлагает встроенную транскрипцию пользовательского ввода, но она опирается на отдельную ASR модель (например, gpt-4o-transcribe). Использование разных моделей для транскрипции и генерации ответов может привести к расхождениям. Например: Речь пользователя транскрибирована как: I had otoo accident Realtime ответ интерпретирован правильно как: Got it, you had an auto accident Точные транскрипции могут быть очень важны, особенно когда: Транскрипции запускают последующие действия (например, tool calls), где ошибки распространяются по системе. Транскрипции суммируются или передаются другим компонентам, что рискует загрязнением контекста. Транскрипции отображаются конечным пользователям, что приводит к плохому пользовательскому опыту в случае ошибок.
План урока
- Пример с расчетом стоимости
- Стоимость транскрипции только последнего высказывания
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.