Назад к блогу
5 минНаговори

Как мы строили Наговори: архитектура и безопасность

архитектурабезопасностьразработка

Как мы строили Наговори: архитектура и безопасность

Мы часто получаем вопросы: «Где обрабатываются мои записи?», «Кто имеет доступ к данным?», «Почему так быстро?». В этой статье расскажем об архитектуре сервиса — без лишних технических деталей, но достаточно подробно, чтобы вы понимали, как это работает.

Общая архитектура

Наговори — это веб-приложение с очередью обработки. Когда вы загружаете файл, происходит следующее:

  1. Загрузка — файл передаётся на сервер через зашифрованное соединение (HTTPS/TLS)
  2. Очередь — файл попадает в очередь обработки. Вы видите свою позицию и ориентировочное время ожидания
  3. Распознавание — воркер берёт файл из очереди, конвертирует в нужный формат и отправляет на модель распознавания
  4. Результат — текст сохраняется и становится доступен в вашем личном кабинете

Архитектура построена на микросервисах: веб-приложение, API-сервер, воркеры обработки и хранилище — это отдельные компоненты, которые масштабируются независимо.

Модели распознавания

Мы используем несколько моделей в зависимости от задачи:

  • Основная модель — оптимизирована для русского языка, обеспечивает точность 95%+ на чистом звуке
  • Мультиязычная модель — для записей на английском и других языках
  • Лёгкая модель — для коротких голосовых сообщений, когда важна скорость

Модели работают на GPU-серверах с NVIDIA-картами. Это позволяет обрабатывать час аудио за 2–5 минут.

Безопасность данных

Шифрование

  • Все данные передаются по HTTPS (TLS 1.3)
  • Файлы в хранилище зашифрованы
  • Соединение между внутренними сервисами защищено

Хранение

  • Серверы расположены в России
  • Файлы хранятся столько, сколько нужно для обработки, плюс доступны в истории пользователя
  • Пользователь может удалить свои данные в любой момент

Доступ

  • Доступ к данным пользователя имеет только сам пользователь
  • Администраторы системы не имеют доступа к содержимому аудиофайлов и расшифровок
  • Авторизация через защищённый сервис идентификации

Соответствие требованиям

  • Обработка персональных данных в соответствии с ФЗ-152
  • Политика конфиденциальности и условия использования доступны на сайте
  • Данные не передаются третьим лицам для маркетинговых целей

Интеграции с мессенджерами

Боты для Telegram, VK и Max работают по одному принципу:

  1. Пользователь пересылает голосовое сообщение боту
  2. Бот получает файл через API мессенджера
  3. Файл отправляется в ту же очередь обработки, что и файлы из веб-интерфейса
  4. Результат возвращается пользователю в чат

Важно: бот не хранит сообщения, не читает переписку и не имеет доступа к чатам, в которых он не добавлен.

Синтез речи (TTS)

TTS работает по обратному принципу: пользователь вводит текст, система отправляет его на модель синтеза и возвращает аудиофайл. Доступно несколько голосов с разными характеристиками. TTS и транскрипция используют общий баланс минут.

Масштабирование

Очередь обработки позволяет справляться с пиковыми нагрузками. Если одновременно загружают файлы 100 пользователей, система не падает — файлы выстраиваются в очередь и обрабатываются последовательно. При росте нагрузки мы добавляем воркеры.

Что дальше

Мы работаем над:

  • Ускорением обработки (цель — обработка часового файла за 1 минуту)
  • Разделением дикторов (diarization) — чтобы различать, кто что сказал
  • API для разработчиков — для интеграции транскрипции в сторонние продукты

Итог

Архитектура Наговори построена вокруг простоты для пользователя и безопасности данных. Загрузите файл, дождитесь результата, используйте текст — всё остальное происходит под капотом.