Статья опубликована в рамках: C Международной научно-практической конференции «Вопросы технических и физико-математических наук в свете современных исследований» (Россия, г. Новосибирск, 22 июня 2026 г.)
Наука: Информационные технологии
Секция: Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
Скачать книгу(-и): Сборник статей конференции
дипломов
АСИНХРОННАЯ КОНВЕЙЕРНАЯ АРХИТЕКТУРА АВТОМАТИЗАЦИИ МНОГОЯЗЫЧНОГО СИНТЕЗА РЕЧИ ДЛЯ ИНТЕРАКТИВНЫХ ОБУЧАЮЩИХ СИМУЛЯТОРОВ
ASYNCHRONOUS PIPELINE ARCHITECTURE FOR AUTOMATING MULTILINGUAL SPEECH SYNTHESIS IN INTERACTIVE TRAINING SIMULATORS
Nguyen The Son
Master of Science, Air Force Officers' College,
Khanh Hoa, Vietnam
Vo Van Viet
Engineer, Air Force Officers' College,
Vietnam, Khanh Hoa
АННОТАЦИЯ
В статье предлагается архитектура программного обеспечения на базе языка Python для автоматизации процесса многоязычного синтеза речи (Text-to-Speech), предназначенная для разработки технических обучающих симуляторов. При оцифровке технической документации традиционные моноязычные модели TTS сталкиваются с проблемой искажения произношения при внутрифразовом переключении кодов (вьетнамский и русский языки). Разработанный конвейерный подход включает детерминированную сегментацию строк на основе кириллических блоков Unicode, асинхронную оркестрацию сетевых запросов и инкрементное кэширование состояний. Практическая значимость работы подтверждается успешной автоматической генерацией аудиофайлов и структур данных (.as, .json) для бесшовной интеграции как в устаревшие среды (ActionScript 3.0), так и в современные веб-симуляторы (JavaScript/HTML5).
ABSTRACT
This article proposes a Python-based software architecture for automating multilingual Text-to-Speech (TTS) synthesis, specifically designed for developing technical training simulators. When digitizing technical documentation, traditional monolingual TTS models face pronunciation distortion problems during intra-sentential code-switching (Vietnamese and Russian). The developed pipeline approach includes deterministic string segmentation based on Cyrillic Unicode blocks, asynchronous orchestration of network requests, and incremental state caching. The practical significance of the work is confirmed by the successful automatic generation of audio files and data structures (.as, .json) for seamless integration into both legacy environments (ActionScript 3.0) and modern web simulators (JavaScript/HTML5).
Ключевые слова: программная инженерия, синтез речи, переключение кодов, асинхронное программирование, обучающие симуляторы, ActionScript, JavaScript, Python.
Keywords: Software engineering, Text-to-Speech, code-switching, asynchronous programming, training simulators, ActionScript, JavaScript, Python.
1. Введение
В эпоху цифровой трансформации инженерного образования разработка интерактивных тренажеров и обучающих симуляторов (в частности, для изучения сложных бортовых систем и систем автоматического регулирования авиационных двигателей) требует создания огромного объема мультимедийного контента [1]. Звуковое сопровождение играет ключевую роль в снижении когнитивной нагрузки на оператора. Однако при переводе и адаптации сложных технических инструкций часто возникает явление внутрифразового переключения кодов (code-switching) - сохранение оригинальных русскоязычных терминов, маркировок на панелях управления или аббревиатур внутри вьетнамского объяснительного текста [2].
Современные коммерческие нейросетевые интерфейсы (API) для синтеза речи (Text-to-Speech) оптимизированы для одноязычных потоков. Принудительная подача текста, содержащего кириллические символы, на вход вьетнамской языковой модели (например, vi-VN) приводит к пропуску слов или критическим фонетическим искажениям [3]. Целью данного исследования является разработка автоматизированной асинхронной программной архитектуры, способной детерминированно сегментировать многоязычный текст, параллельно синтезировать аудиофрагменты с использованием соответствующих нативных моделей TTS и автоматически генерировать готовые структуры данных для прямой интеграции в программные среды на базе ActionScript и JavaScript.
2. Методология и архитектура конвейера данных
Предлагаемая система реализована на языке Python и представляет собой конвейер данных (Data Pipeline), обрабатывающий сценарии из табличных структур (Excel) и состоящий из трех основных вычислительных модулей.

Рисунок 1. Общая архитектура конвейера данных
2.1. Детерминированная контекстная сегментация
Для решения проблемы переключения кодов без привлечения ресурсоемких статистических языковых моделей применен метод сканирования блоков Unicode. С помощью библиотеки регулярных выражений (re) входная строка анализируется на наличие кириллических символов:
chunks = re.split(r'([А-Яа-яЁё]+(?:[\s\-\_]+[А-Яа-яЁё]+)*)', text)
Алгоритм выступает в роли интеллектуального маршрутизатора: обнаруженные русскоязычные сегменты направляются к нейросетевой модели ru-RU-SvetlanaNeural (или ru-RU-DmitryNeural), а остальные фрагменты передаются модели vi-VN-HoaiMyNeural [3]. Изолированные знаки препинания фильтруются для экономии циклов процессора.
2.2. Асинхронная оркестрация сетевых запросов
Последовательный (синхронный) вызов API для тысяч микро-сегментов приводит к неприемлемым задержкам ввода-вывода (I/O bottleneck). В архитектуре применяется библиотека asyncio [4].
- Контроль параллелизма: Для предотвращения блокировки со стороны серверов поставщика услуг (Rate Limiting HTTP 429) используется примитив синхронизации Semaphore, жестко ограничивающий количество одновременных сетевых подключений (в базовой конфигурации - 5 параллельных потоков).
- Отказоустойчивость: Дополнительно внедрен алгоритм отказоустойчивости (Exponential Backoff Retry), автоматически повторяющий запросы при временных сбоях соединения.
2.3. Обработка цифровых сигналов и генерация кода
Разрозненные аудиофайлы (.mp3) для одной фразы загружаются в оперативную память с помощью объекта AudioSegment библиотеки pydub и линейно конкатенируются. Чтобы операции файлового ввода-вывода не блокировали цикл событий (Event Loop), функция склейки делегируется в отдельный пул потоков через вызов asyncio.to_thread().
Финальным этапом конвейера является автоматическая генерация (RPA) промежуточного программного кода. Система формирует два типа данных:
- Файл ScenarioData.as (содержащий статические строковые переменные rawData и rawErrors) для прямой интеграции в объектно-ориентированную архитектуру симуляторов на базе ActionScript 3.0.
- Файл dictionary.json для использования в современных кроссплатформенных веб-приложениях на базе JavaScript и фреймворков Frontend.
3. Архитектура инкрементного кэширования
Жизненный цикл разработки программного обеспечения (SDLC) симуляторов требует частых итеративных изменений в сценариях. Полная перекомпиляция всего пула аудиофайлов нерациональна [5]. Для решения этой задачи в систему внедрен механизм инкрементного кэширования на базе файла журнала history_log.json.

Рисунок 2. Логика инкрементного кэширования и валидации состояний на основе хэширования
Для каждого генерируемого аудиосегмента вычисляется уникальная сигнатура (Hash), учитывающая текстовое содержимое и заданные параметры синтеза (скорость, громкость). Система выполняет проверку состояния с временной сложностью O(1): ресурсоемкий сетевой запрос к API инициируется исключительно в том случае, если сигнатура изменилась, либо физический аудиофайл отсутствует в целевой директории. Данный подход гарантирует консистентность данных при минимальных вычислительных затратах.
4. Заключение
Предложенная асинхронная конвейерная архитектура представляет собой эффективное инженерное решение узкоспециализированной, но критически важной проблемы автоматизации производства многоязычных обучающих сред. Синтез методов детерминированной сегментации текста, асинхронного управления потоками и инкрементного кэширования позволил создать надежный ресурсоэффективный инструмент. В перспективе планируется расширение архитектуры за счет интеграции легковесных моделей обработки естественного языка (NLP) для распознавания более сложных паттернов переключения кодов в языковых парах с единой кодировкой символов (например, английский-вьетнамский).
Список литературы:
- Clark, R. C., Mayer, R. E. E-Learning and the Science of Instruction: Proven Guidelines for Consumers and Designers of Multimedia Learning. - Hoboken: John Wiley & Sons, 2016. - 528 p.
- Sitaram, S. et al. A Survey of Code-switched Speech and Language Processing // IEEE Transactions on Audio, Speech, and Language Processing. - 2019. - Vol. 27, No. 11. - P. 2072-2089.
- Microsoft Azure. Language and voice support for the Speech service [Электронный ресурс] // Azure AI Services Documentation. URL: https://learn.microsoft.com/en-us/azure/ai-services/speech-service/language-support (дата обращения: 17.06.2026).
- Python Software Foundation. asyncio - Asynchronous I/O [Электронный ресурс] // Python 3.12 Documentation. URL: https://docs.python.org/3/library/asyncio.html (дата обращения: 17.06.2026).
- Макконнелл, С. Совершенный код. Мастер-класс. - М.: Русская Редакция, 2010. - 896 с.
дипломов

