Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex SpeechKit
  • Обзор технологий SpeechKit
    • О Python SDK
    • Установка Python SDK
    • Решение конфликта версий при установке Python SDK
    • Аутентификация в Python SDK
    • Синхронное распознавание Python SDK
    • Синтез Python SDK
  • Поддерживаемые форматы аудио
  • Интеграция телефонии
  • Квоты и лимиты
  • Управление доступом
  • Правила тарификации

В этой статье:

  • Перед началом работы
  • Создайте приложение для синхронного распознавания речи
  1. SDK
  2. Синхронное распознавание Python SDK

Синхронное распознавание речи с помощью Python SDK

Статья создана
Yandex Cloud
Обновлена 7 марта 2025 г.
  • Перед началом работы
  • Создайте приложение для синхронного распознавания речи

Ниже приведен пример синхронного распознавания речи из аудиофайла с помощью Python SDK SpeechKit. В примере заданы параметры:

  • модель распознавания — general;
  • язык — русский.

Для работы с Python SDK нужен пакет yandex-speechkit.

Аутентификация выполняется от имени сервисного аккаунта с помощью API-ключа или IAM-токена. Подробнее об аутентификации в API SpeechKit.

Перед началом работыПеред началом работы

  1. Создайте сервисный аккаунт и назначьте ему роль ai.speechkit-stt.user.
  2. Для сервисного аккаунта получите и сохраните API-ключ.
  3. Скачайте пример аудиофайла для распознавания или сгенерируйте свой.

Создайте приложение для синхронного распознавания речиСоздайте приложение для синхронного распознавания речи

Python 3
  1. Установите пакет yandex-speechkit с помощью менеджера пакетов pip:

    pip install yandex-speechkit
    

    Установка проверялась на Python 3.9. Минимально допустимую версию Python см. на сайте SDK.

    Если возникает конфликт версий пакета grpcio-tools, см. раздел Решение конфликта версий при установке Python SDK.

  2. Создайте файл test.py и добавьте в него код:

    from argparse import ArgumentParser
    from speechkit import model_repository, configure_credentials, creds
    from speechkit.stt import AudioProcessingType
    
    # Аутентификация через API-ключ.
    configure_credentials(
       yandex_credentials=creds.YandexCredentials(
          api_key='<API-ключ>'
       )
    )
    
    def recognize(audio):
       model = model_repository.recognition_model()
    
       # Задайте настройки распознавания.
       model.model = 'general'
       model.language = 'ru-RU'
       model.audio_processing_type = AudioProcessingType.Full
    
       # Распознавание речи в указанном аудиофайле и вывод результатов в консоль.
       result = model.transcribe_file(audio)
       for c, res in enumerate(result):
          print('=' * 80)
          print(f'channel: {c}\n\nraw_text:\n{res.raw_text}\n\nnorm_text:\n{res.normalized_text}\n')
          if res.has_utterances():
             print('utterances:')
             for utterance in res.utterances:
                print(utterance)
    
    if __name__ == '__main__':
       parser = ArgumentParser()
       parser.add_argument('--audio', type=str, help='audio path', required=True)
    
       args = parser.parse_args()
    
       recognize(args.audio)
    

    Где:

    • api_key — API-ключ для сервисного аккаунта.

    • audio — путь до файла для записи аудио.

    • model — модель распознавания.

    • language — язык, для которого будет выполнено распознавание.

    • audio_processing_type — способ обработки аудио.

      В Python SDK не поддержаны возможности потокового и асинхронного распознавания, но их можно просимулировать. Для этого в файле test.py, в параметре audio_processing_type, укажите значение:

      • AudioProcessingType.Stream — для потокового распознавания;
      • AudioProcessingType.Full — для асинхронного распознавания.
  3. Выполните созданный файл:

    python3 test.py --audio speech.pcm
    

    Где --audio — путь к аудиофайлу, который необходимо распознать.

    Результат содержит распознанную речь:

    channel: 0
    
    raw_text:
    я яндекс спичкит я могу превратить любой текст в речь теперь и вы можете
    
    norm_text:
    Я Яндекс Спичкит, я могу превратить любой текст в речь, теперь и вы можете.
    
    utterances:
    - Я Яндекс Спичкит, я могу превратить любой текст в речь, теперь и вы можете. [0.419, 6.379]
    

См. такжеСм. также

  • Python SDK SpeechKit
  • Пример использования API v1 синхронного распознавания

Была ли статья полезна?

Предыдущая
Аутентификация в Python SDK
Следующая
Синтез Python SDK
Проект Яндекса
© 2025 ООО «Яндекс.Облако»