О чём эта история

IT‑компания Smile Tech специализируется на разработке систем в области образовательных технологий.

В 2024 году перед командой возникла задача — преобразовывать аудиолекции в текстовые конспекты. Нужно было не более чем за месяц преобразовать 44 ТБ аудиоданных. Smile Tech использовала Yandex SpeechKit для транскрибации. Все работы выполнили с оптимальными затратами в течение трёх недель, и при этом тестовые результаты получились высокого качества.

Задача компании

Smile Tech — это российская IT‑компания, которая специализируется на разработке систем в области образовательных технологий. Компания создаёт цифровые сервисы, которые помогают различным образовательным организациям увеличивать количество и качество реализуемых ими программ.

Самое крупное направление работы компании — это федеральный проект «Содействие занятости», в рамках которого за счёт государственного бюджета ежегодно получают дополнительное образование и трудоустраиваются порядка 100 000 человек.

Smile Tech никогда не имела существенной собственной серверной инфраструктуры и изначально пользовалась услугами иностранного облачного провайдера. Это позволяло не тратить лишние ресурсы и время сотрудников на низкоуровневое администрирование оборудования и операционных систем. Кроме того, использование PaaS‑решений позволяло снизить риски, связанные с инцидентами инфраструктуры и простоями.

В 2020 году компании потребовалось перестроиться на работу с российскими провайдерами. В частности нужно было найти российского облачного провайдера. Smile Tech рассмотрела несколько вариантов и выбрала Yandex Cloud, поскольку эта платформа выглядела наиболее зрелой из всех решений на рынке, при этом команда провайдера обладала высокой экспертизой.

В 2024 году в рамках обучающих курсов команде Smile Tech понадобилось преобразовать 44 ТБ аудиолекций в текстовые конспекты. Причём это нужно было сделать в очень ограниченные сроки — не более месяца, и с минимальными затратами.

Чтобы транскрибировать аудиодорожки, команда рассмотрела несколько сервисов, доступных на рынке, и в итоге остановилась на Yandex SpeechKit. На решение повлияли следующие факторы:

  • Все сервисы Smile Tech, включая хранилище аудиозаписей, уже размещались в Yandex Cloud.

  • Скорость работы модели распознавания и транскрибации удовлетворяла требованиям задачи. Yandex SpeechKit за доли секунды высокоточно распознаёт речь во всём её многообразии и стилистике.

  • Yandex SpeechKit уже используется для двух проектов компании: в LMS Odin и в федеральном проекте «Содействие занятости».

  • Сервис предоставляется по относительно низкой цене. На отложенное распознавание аудиозаписей, которое можно было использовать в этом проекте, действуют специальные тарифы, и команда могла уложиться в выделенный бюджет.

Решение

Основные продукты Smile Tech:

  • Odin — система управления обучением (Learning management system — LMS), с помощью которой можно оцифровывать образовательные процессы в университетах, колледжах и организациях дополнительного образования. Этой системой пользуются приблизительно 1400 учебных организаций России.

  • Flow — система, которая автоматизирует обработку заявок на обучение, процесс зачисления, отчисления, документооборот, финансовые потоки. Изначально эта система создавалась под конкретные потребности федерального проекта «Содействие занятости» с учётом правил распределения бюджетных средств и отчётности.

  • Finch — система для автоматизации рутинных задач репетиторов: финансовый учёт, сбор оплат, составление расписаний, организация видеозвонков, интерактивные доски, обмен учебными материалами.

Ещё в 2020 году специалисты Smile Tech перенесли продукты компании в Yandex Cloud. Команда развернула все рабочие версии приложений, тестовые стенды, серверы сборки и перекодирования видео, после чего перенесла все нужные данные в Yandex Object Storage.

В рамках проекта по преобразованию аудио в текст компания использовала технологию асинхронного распознавания Yandex SpeechKit, которая работает в отложенном режиме. В таком режиме аудиофайл попадает в очередь распознавания с низким приоритетом и обрабатывается во время наименьших нагрузок на сервис.
Асинхронное распознавание позволяет преобразовывать в текст многоканальные аудиофайлы с максимальной длительностью записи в четыре часа и размером до 1 Гб, что соответствовало требованиям проекта.

Сначала провели тестовую настройку взаимодействия с Yandex SpeechKit. Нужно было проверить насколько качественными получатся результаты транскрибации и достаточно ли аудиоданных для формирования требуемых текстов. Кроме конспектов, команда хотела создать субтитры для видеолекций. Поэтому при тестовом запуске также проверили возможно ли создавать текст в подходящей для субтитров форме.

Команда организовала импорт данных из существующих систем подготовки и архивации медиаматериалов. После того как был налажен поток данных, сервис Yandex SpeechKit начал их обрабатывать. На первом этапе реализовали субтитры для видео. В результате распознавания получали набор фраз с временными метками. Этот набор фраз преобразовывали в файл субтитров и сохраняли рядом с видеофайлами, а затем добавляли информацию об этом файле в манифест-файл видео. Таким образом, видеоплеер автоматически смог подгружать субтитры. Эту же технологию Smile Tech использовала для преобразования аудиолекций в текстовые конспекты материалов. Конспекты затем обрабатывали с помощью YandexGPT, чтобы сжать текст, сделать его более читаемым и создать краткое содержание лекции.

Кроме того, в проекте использованы и другие сервисы Yandex Cloud:

  • Yandex Object Storage — здесь хранятся все загружаемые пользователями файлы. Основной объём занимают образовательные материалы в видео-формате — 200 ТБ. Звуковые дорожки находятся в отдельных файлах, т. к. видео подготовлено для потокового адаптивного воспроизведения. Здесь же хранятся файлы с готовыми субтитрами, а также документы для формирования отчётности по расходованию федерального бюджета.

  • Yandex Managed Services for PostgreSQL используется в качестве основной базы данных для долговременного хранения. Здесь находится информация об имеющихся файлах, отправленных в Yandex SpeechKit задачах, а также логи и сырые результаты работы этого сервиса. Такие данные необходимы на случай повторной обработки результатов.

  • Yandex Cloud CDN для кэширования и ускорения загрузки всего статического контента.

  • Yandex Compute Cloud и Yandex Managed Service for Kubernetes® для запуска вспомогательных приложений, которые конвертировали и извлекали аудиодорожки из видео. Приложения также взаимодействовали с API сервисов и отвечали за обработку результатов распознавания и формирования файлов с субтитрами и их добавление в видео.

  • Yandex Managed Service for Redis для хранения кэша, сессий и синхронизации между экземплярами приложений.

При реализации проекта команда столкнулась с необходимостью перекодировать аудио в формат .mp3, который поддерживается Yandex SpeechKit, но с этой задачей специалистам Smile Tech удалось справиться самостоятельно.

После тестового внедрения и устранения ошибок Smile Tech массово запустила генерацию субтитров и текстовых конспектов лекций. Затем весь процесс организовали в виде фоновой задачи и встроили в общий паттерн обработки видео.

Результаты

С помощью сервиса Yandex SpeechKit транскрибировали 44 ТБ данных, это весь имевшийся на тот момент объём архива. Команде удалось подготовить текстовые материалы всего за три недели и точно соблюсти дедлайн в месяц. При этом команда Smile Tech смогла уложиться в небольшой бюджет.

Smile Tech планирует и в будущем применять созданное решение. Его внедрили на платформе в виде дополнительного этапа в процессе обработки и подготовки видеофайла к потоковому воспроизведению.

В процессе работы команда проекта пришла к архитектурному решению, которое позволило существенно снизить нагрузку на сайт и уменьшить расходы на трафик. Smile Tech подключила Yandex Cloud CDN к основному домену сайта и теперь статический контент кэшируется, а динамический — напрямую проксируется. Это помогло компании справиться с пиковыми нагрузками на лендинги.

Smile Tech считает использование Yandex Cloud экономически оправданным, поскольку в условиях быстрого роста компании физическая инфраструктура стала бы ограничивающим фактором. Например, сейчас компания намерена выйти на зарубежные рынки и запустить проекты в Казахстане и Кении, и облачная инфраструктура остается актуальным выбором. Кроме того, используя многочисленные сервисы и обращаясь к экспертизе инженеров облачного провайдера, Smile Tech снижает риски инфраструктурных инцидентов.

Мнение

Алексей Цыганков,
СТО Smile Tech
Алексей Цыганков,
СТО Smile Tech

С помощью сервиса Yandex SpeechKit нам удалось транскрибировать весь необходимый объём информации менее чем за месяц в условиях жесткого дедлайна и интегрировать процесс асинхронного распознавания в работу обучающих курсов. При этом удалось уложиться в небольшой бюджет, выделенный на реализацию проекта.