Интеграция Amazon Polly для синтеза речи

Проектируем и внедряем системы искусственного интеллекта: от прототипа до production-ready решения. Наша команда объединяет экспертизу в машинном обучении, дата-инжиниринге и MLOps, чтобы AI работал не в лаборатории, а в реальном бизнесе.
Показано 1 из 1Все 1566 услуг
Интеграция Amazon Polly для синтеза речи
Простой
~1 день
Часто задаваемые вопросы

Направления AI-разработки

Этапы разработки AI-решения

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1284
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1196
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    901
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1119
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    586
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    853

Интеграция Amazon Polly для синтеза речи

Amazon Polly — TTS-сервис AWS с нативной интеграцией в экосистему Amazon: S3, Lambda, CloudFront. Поддерживает Neural TTS (NTTS) голоса и классические. Для русского: голоса Maxim (мужской) и Tatyana (женский), Neural версии недоступны для ru-RU.

Синтез через boto3

import boto3

polly = boto3.client('polly', region_name='us-east-1')

def synthesize_speech(text: str) -> bytes:
    response = polly.synthesize_speech(
        Text=text,
        OutputFormat='mp3',      # mp3 | ogg_vorbis | pcm | json
        VoiceId='Tatyana',       # Maxim | Tatyana для ru-RU
        LanguageCode='ru-RU',
        Engine='standard',       # standard | neural (не для ru-RU)
        SampleRate='22050',      # 8000 | 16000 | 22050
        TextType='text',         # text | ssml
    )
    return response['AudioStream'].read()

# SSML синтез
ssml_text = """
<speak>
  Здравствуйте! Ваш заказ <break time="300ms"/>
  номер <say-as interpret-as="digits">12345</say-as> готов.
</speak>
"""
response = polly.synthesize_speech(
    Text=ssml_text,
    TextType='ssml',
    OutputFormat='mp3',
    VoiceId='Tatyana',
)

Presigned URL для прямого доступа к S3

# Для длинных текстов — async task в S3
response = polly.start_speech_synthesis_task(
    Text=long_text,
    OutputFormat='mp3',
    VoiceId='Tatyana',
    OutputS3BucketName='my-tts-bucket',
    OutputS3KeyPrefix='audio/'
)
task_id = response['SynthesisTask']['TaskId']

Стоимость: Standard TTS $4/1M символов. Neural TTS $16/1M символов (только для поддерживаемых языков). Бесплатно: 5 млн символов/месяц первые 12 месяцев.

Ограничение: для ru-RU нет Neural голосов — качество ниже чем у Google Wavenet или Azure Neural. Рекомендуется для систем уже на AWS.

Сроки: 1 день.