yandex-speech — wrapper к речевым технологиям Яндекса

    Ознакомившись с обзором движков для распознавания речи, заметил там API от Яндекса. И на выходных написал небольшую обертку для Node.js для распознавания речи с целью поиска мата в своих телефонных разговорах. По мотивам топика на Хабре.

    Список нецензурных слов выкладывать не буду, а сам npm устанавливается командой.
    npm install yandex-speech
    


    Исходники и примеры использования:
    github: www.github.com/antirek/yandex-speech

    Немного деталей:

    Ключ API активировали в течение трех часов. В запросе так и написал: «нужен тестовый ключ, запросов будет 10-20 штук в день». Ключ, указанный в примерах, блокирован. Запросите, пожалуйста, свой: developer.tech.yandex.ru

    В документации написан пример, подобный запросу curl типа
    curl -v -4 -H "Content-Type: audio/x-mpeg-3" -d "@examples/data/1.mp3" "asr.yandex.net/asr_xml?key=yandex_developer_key&uuid=12345678123456781234567812345678&topic=general&lang=ru-RU"

    Оказалось, что можно и так отправить:
    curl -v -4 -F "Content-Type=audio/x-mpeg-3" -F "audio=@examples/data/1.mp3" "asr.yandex.net/asr_xml?key=yandex_developer_key&uuid=12345678123456781234567812345678&topic=general&lang=ru-RU"

    Добавил проверку размера отправляемого аудиофайла, не более 1Мб, т.к. сервис ругается на файлы большего размера.

    Также добавил враппер для генерации аудиофайла по тексту. Неофициальное API по мотивам комментария на Хабре. Чтобы и text2speech, и speech2text в одном флаконе.

    Надеюсь, что кому-то еще пригодится в хозяйстве. Вопросы, пожелания, критика по коду?
    • +21
    • 12.9k
    • 6
    Share post
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 6

      +9
      Объективно лучше справляется с распознаванием чем подобный сервис от гугла?
        +1
        Объективно- это если приведете сухие цифры, а так уж извините, но субъективно!
          +1
          Вот вы просто вопрос задали, а я сиди мучайся: как бы объективно сравнить качество распознавания?: ) надо какой-нить эталон типа «Выпей чаю и съешь мягких французских булок» прогнать по обоим сервисам и сравнить количество отклонений.

          Субъективно: где-то одно лучше, где-то другое хуже, что у Яндекса, что у Гугла. Распознавание у Яндекса записей, начитанных дикторами с нормальным четким произношением, очень хорошо. С шумами, посторонними звуками начинаются разные приколы.

          А еще хотелось бы как-то обучать сервис, т.е. есть названия, фамилии, которые произносятся достаточно четко, но поскольку они редко употребимы, то, вероятно, их нет в словаре SpeechKit'а, и подбираются ближайшие аналоги.
          0
          Спасибо Вам за работу!
          Не в курсе ли Вы, есть ли возможность распознавать длинные аудио записи (подкасты)?
            0
            Нет, не в курсе. Пообщайтесь с Яндексом, у них разные варианты есть подключения.
              0
              Можно, например, в моем боте распознать длинные подкасты при помощи Google Speech :) Только осторожнее, гуглоспич платный :(

            Only users with full accounts can post comments. Log in, please.