Microsoft представила MAI-Transcribe-2-Streaming 1 октября. Модель принимает аудио во время речи и возвращает меняющийся текст до появления окончательной расшифровки. Разработчику, который добавляет в голосовое приложение живые субтитры или ввод речи, важно понять, как эти обновления поступают в приложение и в какой момент текст можно считать окончательным.

Это обзор интеграции на основе документации для разработчиков, оценивающих публичную предварительную версию. Задача — решить, стоит ли создавать прототип модели, и определить, какую логику нужно реализовать на стороне клиента для показа текста в реальном времени и сохранения итоговой расшифровки. Microsoft описывает подключение и приводит примеры кода; BIG CHANGE не разворачивало модель, не запускало примеры и не измеряло точность или задержку.

Главное изменение

  • Microsoft представила потоковую модель, которая возвращает предварительный текст по мере поступления аудио, а затем подтверждает сегменты расшифровки. Отдельный путь MAI-Transcribe-2 для транскрибирования файлов предназначен для записанного аудио и предусматривает другой набор параметров.
  • Приложение на Realtime API должно отправлять аудио в правильном формате, учитывать изменения предварительного фрагмента и решать, когда запрашивать завершённую расшифровку. От этого зависит, что увидят пользователи и в какой момент последующая логика приложения сможет опираться на итоговый текст.
  • Потоковая модель доступна в публичной предварительной версии без соглашения об уровне обслуживания. Microsoft не рекомендует применять её в рабочих системах. Указанные компанией скорость и точность — заявления при запуске и результаты бенчмарков, а не измерения, проведённые для этого обзора.

Выбор способа подключения

В каталоге Microsoft Foundry указана модель MAI-Transcribe-2-Streaming, версия 2026-08-06, как предварительная версия с аудиовходом и текстовым выходом. В опубликованном Microsoft обзоре от 1 октября описаны два способа интеграции: Realtime API с протоколом WebSocket, похожим на OpenAI Realtime, и Azure Speech SDK. Оба возвращают промежуточные и итоговые результаты распознавания. SDK управляет подключением и передачей аудио, а маршрут Realtime напрямую предоставляет события приложению.

Для Realtime API Microsoft требует подписку Azure, ресурс Microsoft Foundry в поддерживаемом регионе и развёрнутую потоковую модель. Подключение выполняется к wss://{your_resource_name}.services.ai.azure.com/mai/v1/realtime?intent=transcription с токеном-носителем Microsoft Entra или ключом API. В документации рекомендуется аутентификация Entra. После session.created отправьте session.update с именем развёрнутой модели и настройкой формата входных данных. После первой отправки аудиоданных изменить этот параметр нельзя, даже после фиксации сегмента.

Согласно документации, на вход подаётся необработанный монофонический PCM16 со знаком и порядком байтов little-endian, с частотой 16 или 24 кГц. Данные отправляются фрагментами в Base64 в сообщениях input_audio_buffer.append. Это PCM без заголовка WAV. Microsoft рекомендует небольшие фрагменты, например по 10–20 миллисекунд, чтобы снизить задержку, и отмечает, что более крупные фрагменты уменьшают сетевые накладные расходы. В примере на Python аудио с микрофона считывается блоками по 100 мс. Рекомендация использовать короткие фрагменты и размер блока в примере — разные варианты; BIG CHANGE не измеряло их эффективность.

Для пути Speech SDK требуются SDK версии 1.52.0, подписка Azure и ресурс Foundry или Speech. В примере Microsoft на Python задаётся speech_config.model равным MAI-Transcribe-2-Streaming, 16-килогерцевое монофоническое аудио с глубиной 16 бит передаётся через push stream, а приложение ожидает события recognizing и recognized. В примере используется уже существующий файл audio.pcm для демонстрации push stream; реальное приложение будет получать аудио из собственного источника. Это описанные в документации интерфейсы и ожидаемые типы событий, а не проверка совместимости с конкретной учётной записью, выполненная редакцией.

Храните предварительный текст отдельно от подтверждённого

Для живого интерфейса важна семантика событий Realtime. Событие conversation.item.input_audio_transcription.delta содержит новый окончательный текст: клиент добавляет его в подтверждённый буфер, не меняя пробелы. Событие intermediate содержит весь текущий предварительный фрагмент. Каждый новый фрагмент заменяет предыдущий. Интерфейс может показывать подтверждённый буфер вместе с текущим предварительным фрагментом, но если сохранять каждое промежуточное событие отдельной строкой, при исправлениях модели слова будут дублироваться.

Клиент отправляет input_audio_buffer.commit при обнаруженной паузе или в конце записи. По словам Microsoft, это запрашивает итоговую расшифровку как можно скорее; событие input_audio_buffer.committed подтверждает фиксацию, а событие conversation.item.input_audio_transcription.completed возвращает весь итоговый текст аудио с момента предыдущей фиксации. В руководстве по Realtime сказано, что для конфигурации сессии этой модели недоступны серверное определение границ реплик и автоматическая фиксация. Поэтому голосовому приложению нужно самостоятельно определять паузы или границы реплик, если оно должно автоматически завершать сегменты. Документация описывает контракт событий, но не предписывает универсальный алгоритм определения таких границ.

Microsoft ограничивает длительность каждой сессии Realtime одним часом. Также, согласно документации, отдельное подтверждение при отправке аудиофрагмента не приходит, а в ответ может поступить ноль или несколько событий с расшифровкой. При оценке прототипа разработчикам следует различать получение аудиосообщений и получение окончательного текста, а также заранее решить, как приложение будет обрабатывать разрыв сессии. В публичном примере на Python предусмотрены очередь микрофона и обработка ошибок, но BIG CHANGE не запускало его и не проверяло фактическое поведение при сбоях.

Доступ, регионы и цена

Microsoft сообщает о глобальной доступности модели: Azure маршрутизирует запросы в регионы обслуживания. На двух страницах интеграции от 1 октября приведены разные списки регионов. В руководстве Realtime указаны Sweden Central, Central US и South India, а в руководстве Speech SDK — Sweden Central, Central US и Southeast Asia. В обоих списках East US 2 обозначен как скоро доступный. Проверьте текущие варианты развёртывания и регионы для выбранного способа подключения: в этих документах нет единого согласованного списка. Глобальная доступность не гарантирует обработку данных в конкретном регионе.

В объявлении указана стартовая цена — $0,54 за час аудио до конца 2026 года. По простому расчёту это $9 за 1 000 минут аудио, без учёта отдельных сервисов и инфраструктуры, которые может использовать приложение. В руководствах Microsoft приводит ссылки на страницы с ценами Foundry Models и Speech для соответствующих способов подключения. В рассмотренных источниках нет цены после вводного периода и фактического счёта по тестовому развёртыванию, поэтому перед составлением бюджета нужно проверить актуальные тарифы.

Microsoft заявляет о поддержке 60 языков с непрерывным автоматическим определением языка. Компания также утверждает, что первый предварительный текст появляется чуть более чем через 100 мс после получения аудио, и ссылается на Artificial Analysis, заявляя о лидирующей точности. Потоковый бенчмарк Artificial Analysis измеряет долю ошибок в словах примерно на восьми часах взвешенных данных и отсчитывает время появления предварительного и итогового результата относительно момента окончания обнаруженной речи. Это бенчмарк с определёнными аудиоданными и правилами измерения времени, а не гарантия, что конкретное приложение покажет правильные слова за 100 мс. По доступному для этой статьи тексту публичного бенчмарка мы не смогли независимо подтвердить точное место модели Microsoft: в нём не была найдена отдельная строка с результатом этой модели.

Отдельное руководство по MAI-Transcribe-2 для Azure Speech описывает загрузку файлов и такие параметры, как разделение речи по говорящим, временные метки для каждого слова, приоритизация ключевых слов, а также чистый или дословный стиль расшифровки. Не следует считать, что эти настройки работают и с MAI-Transcribe-2-Streaming: руководства по потоковой интеграции их не описывают. Если продукту нужны такие выходные данные, оцените файловую модель или перед разработкой проверьте поддержку потоковой версии по актуальной документации и на практике.

Источники и дополнительное чтение

  • Объявление Microsoft AI, 1 октября 2026 года: запуск, поддержка языков, скорость и стартовая цена. Заявления Microsoft о точности и внутренней скорости модели атрибутированы компании выше.
  • Каталог моделей Microsoft Foundry, проверен 2 октября: версия модели, этап предварительной версии, типы входных и выходных данных. Каталог не является тестом производительности.
  • Обзор потоковой модели, руководство по Realtime API и руководство по Speech SDK, обновлены 1 октября: два описанных способа интеграции, условия предварительной версии, поведение событий, примеры и таблицы регионов. BIG CHANGE не запускало примеры.
  • MAI-Transcribe-2 в Azure Speech, проверено 2 октября: отдельный путь транскрибирования файлов и доступные настройки. Перечень функций этой модели не описывает функции потоковой версии.
  • Потоковый бенчмарк Artificial Analysis и методология, проверены 2 октября: устройство независимого бенчмарка и определения временных показателей. В доступном публичном тексте нет отдельного результата модели, который позволил бы независимо подтвердить её место в рейтинге.