Немного о работе с моделями гемини, небольшой анализ других LLM и собственный инструмент

Привет, Хабр! В предыдущих статьях я делился опытом создания инструментов для работы со структурированными данными на базе Gemini. Этот проект, начатый из практической необходимости, перерос в нечто большее — в исследовательский интерес к возможностям современных ИИ-моделей.

Если работа с текстами и таблицами стала понятной, то огромный пласт неструктурированных данных — аудиозаписи совещаний, вебинары, обучающие видео — оставался для моих инструментов «слепой зоной». Моей новой целью стало освоение мультимодальных возможностей Gemini. Частично это был чистый интерес — желание научиться работать с моделями, способными обрабатывать звук и видео. Частично — решение прикладных задач.

Я сформулировал для себя три ключевые задачи, которые должен был решить мой обновленный инструмент:

  • Слушать: Превращать любую аудиозапись в точный, читаемый текст (Speech-to-Text).

  • Говорить: Озвучивать любой текст практически человеческим голосом (Text-to-Speech).

  • Смотреть: Анализировать видео и извлекать из него суть, экономя время.

Эта статья — практический рассказ о создании трех новых модулей на базе Google Gemini: транскрибации, синтеза речи и анализа видео. Но прежде чем перейти к реализации, я поделюсь результатами своего «кабинетного исследования» — небольшого анализа рынка, в котором я сравнил подходы Google с решениями OpenAI, Qwen и Yandex.

Предварительный анализ и обоснование выбора технологического стека

Перед началом разработки я провел анализ рынка существующих ML-решений для работы с аудио и видео. Изначально я планировал остаться в экосистеме Google (Vertex AI), так как это обеспечивало единую аутентификацию, биллинг и уже знакомую среду разработки. Однако, чтобы убедиться, что этот выбор не накладывает критических ограничений на качество и функциональность будущего продукта, я провел сравнительный анализ ключевых альтернатив от OpenAI, Yandex и open-source сообщества.

Целью исследования было не найти абсолютного лидера, а понять, насколько конкурентоспособны решения Google в контексте моих конкретных бизнес-задач. Ниже приведены результаты анализа по трем ключевым направлениям.

1. Распознавание речи (ASR): Сравнение точности в различных акустических условиях

В данном сегменте рассматривались три основных решения: OpenAI Whisper, Google Speech-to-Text v2 (модель Chirp) и Yandex SpeechKit. Сравнение проводилось по метрике WER (Word Error Rate — процент ошибок на слово) и наличию встроенных функций постобработки.

Точность на чистых данных: Согласно бенчмаркам (на датасете LibriSpeech), модель OpenAI Whisper демонстрирует наилучшие показатели на студийных записях с низким уровнем шума. Значение WER составляет менее 3%. Это делает модель предпочтительной для транскрибации аудиокниг, подкастов или диктовки в идеальных условиях.

Точность в реальных условиях: При анализе зашумленных записей (датасеты CHIME-5, записи телефонных разговоров) производительность Whisper снижается, а WER возрастает до 25–30%. В этих условиях модель Google Chirp демонстрирует большую стабильность. Это обусловлено тем, что модель Google обучалась на массивах данных из YouTube, содержащих аудиофайлы низкого качества, фоновые шумы и перекрёстную речь.

Диаризация (разделение спикеров): Особенно критическим фактором для бизнес-задач (протоколирование совещаний) является способность системы различать спикеров.

  • OpenAI Whisper: Не имеет встроенной функции диаризации. Для реализации этого функционала требуется интеграция сторонних библиотек (например, Pyannote Audio), что усложняет архитектуру приложения и увеличивает время обработки.

  • Google Speech-to-Text: Поддерживает нативную диаризацию (enableSpeakerDiarization) через API. Система автоматически маркирует реплики разных участников, что исключает необходимость развертывания дополнительных сервисов.

Анализ показал, что OpenAI Whisper является лидером по точности в идеальных условиях. Однако для моей задачи (анализ записей совещаний) функционал Google оказался более чем достаточным, а наличие встроенной диаризации стало ключевым практическим преимуществом. Это подтвердило, что первоначальный выбор в пользу экосистемы Google не является компромиссом и полностью покрывает требуемые функциональные возможности без усложнения архитектуры.

2. Синтез речи (TTS): Методы управления интонацией

Сравнение проводилось между Yandex SpeechKit и Google Gemini TTS. Основным критерием был способ управления просодией (интонацией, темпом, паузами) и фонетикой.

Программный контроль (Yandex SpeechKit): Данное решение предоставляет инструменты для точного фонетического контроля. Используя специальную разметку, можно принудительно выставлять ударения (символ + перед гласной), задавать точную длительность пауз в миллисекундах (например, sil <500>) и корректировать произношение отдельных фонем. Этот подход оптимален для статических сценариев, требующих строгого соответствия стандартам (например, IVR в банковской сфере) и создания уникальных брендированных голосов.

Семантический контроль (Google Gemini TTS): Google использует подход, основанный на интерпретации контекста и промптов (Prompt-driven control). Вместо жесткой разметки пользователь может задать эмоциональную окраску речи через текстовые теги, например [angry], [calm] или [news reporter style]. Нейросеть самостоятельно адаптирует высоту тона, скорость и интонационный контур. Также поддерживается стандарт SSML (разметка для синтеза голоса), но акцент смещен на генеративное управление стилем (через промпт можно задать общий стиль речи).

Мое небольшое исследование продемонстрировало два принципиально разных, но одинаково мощных подхода к стилизации речи. Решение от Yandex незаменимо для задач, требующих глубокого инженерного контроля над произношением. В то же время, семантический подход Google идеально соответствовал моим целям — дать нетехническим пользователям простой инструмент для быстрой генерации аудиоконтента с разной эмоциональной окраской. Таким образом, выбор Gemini TTS был вполне оправдан.

3. Видеоаналитика: Специализация против мультимодальности

В сегменте анализа видео сравнивались мультимодальная модель Google Gemini 2.5 Pro и специализированная модель Qwen2.5-VL (Vision-Language).

Точность временной привязки: Модель Qwen2.5-VL архитектурно оптимизирована для работы с видеопотоком. Она использует механизмы динамического разрешения и абсолютного временного кодирования. Это позволяет ей генерировать саммари с точными таймкодами (time-coded summaries) и локализовать события с высокой точностью. Это решение предпочтительно для задач поиска конкретных кадров или событий в видеопотоке.

Контекстное окно и интеграция: Gemini 2.5 Pro обладает контекстным окном объемом до 2 миллионов токенов, что позволяет загружать в контекст видеофайлы большой длительности целиком. Ключевым преимуществом для архитектуры проекта стала возможность нативной обработки ссылок YouTube.

  • Для использования Qwen или аналогов необходимо предварительно скачать видеофайл, извлечь аудиодорожку или раскадровку, и только затем передать данные в модель.

  • API Gemini позволяет передать URL видео напрямую, выполняя процессинг на стороне провайдера.

Специализированные модели, такие как Qwen, предлагают более высокую точность в задачах временной локализации (саммари с таймкодами). Однако для моей цели (быстрый семантический анализ вебинаров и докладов) ключевым фактором является минимизация предварительной обработки данных. Нативная поддержка YouTube-ссылок в Gemini API представляет собой значительное архитектурное упрощение, которое подтвердило целесообразность моего первоначального выбора для создания быстрого и удобного пользовательского инструмента.

Итог и подтверждение выбора

Рынок речевых и видеотехнологий предлагает множество высококачественных, но идеологически разных решений. Мое первоначальное решение остаться в рамках единой инфраструктуры Google прошло проверку на адекватность. Небольшой анализ подтвердил, что, хотя по отдельным метрикам (как WER на чистом аудио у Whisper или контроль фонетики у Yandex) существуют более сильные специализированные решения, для моих бизнес-задач комплексный продукт от Google не имеет критических недостатков.

  • Распознавание речи: Встроенная диаризация и устойчивость к шуму в реальных условиях делают Google Speech-to-Text v2 оптимальным практическим выбором.

  • Синтез речи: Семантический контроль Gemini TTS более интуитивен для нетехнических пользователей, что соответствует целям проекта.

  • Анализ видео: Нативная обработка YouTube URL значительно упрощает рабочий процесс, что является ключевым преимуществом.

Таким образом, я пришел к выводу, что выбранный технологический стек не только удобен в интеграции, но и полностью конкурентоспособен для решения поставленных задач.

Построение инструментов: от логики к реализации

Вооружившись этим пониманием, я приступил к проектированию и созданию трех новых модулей. Как я ранее говорил, я технически неподкованный специалист (вайбкодинг и общее понимание — мои основные инструменты), поэтому в технические аспекты лезть не буду. Просто расскажу про подход.

Модуль 1: Транскрибация аудио

Логика и тактика: Моей главной целью было избавить коллег от необходимости слушать многочасовые записи. Я представил себе инструмент: я загружаю файл, нажимаю кнопку и через пару минут получаю не просто стену текста, а структурированный документ с основными моментами и задачами.

Эта мысль привела меня к двухэтапной логике:

  • Этап "Механическая работа": ИИ должен превратить звук в текст. Это чисто техническая задача.

  • Этап "Осмысление": Другой ИИ (или тот же, но в другой роли) должен прочитать этот текст и превратить его из хаоса в порядок.

Именно эта двухэтапная концепция легла в основу. Я не стал пытаться решить все одной моделью, а разделил процесс, как это сделал бы человек: сначала записал, потом проанализировал.

Реализация:

В интерфейсе все просто: кнопка загрузки аудио, выпадающий список для выбора языка и большая кнопка "Начать транскрибацию".

Когда пользователь нажимает кнопку, запускается процесс. Обработка часового аудио не может быть мгновенной, поэтому пользователь должен видеть, что что-то происходит. Для этого я добавил прогресс-бар, который проходит три логических стадии: "Загрузка файла в облако", "Выполнение транскрибации (может занять несколько минут)" и "Структурирование текста". После завершения под формой появляются два текстовых поля. В первом — "сырой" транскрипт, который можно скопировать при необходимости. Далее можно прописать промпт для работы с данным текстом. Тут можно структурировать, делать саммари, ставить задачи (в общем, все как и при работе с любым другим текстом).

Собственно, а для чего? Теперь после часовой планерки (если так можно назвать наши «заседания») за пару минут можно получить четкий документ: саммари для отчета вышестоящему руководству и список задач, которые можно сразу скопировать в Битрикс.

Модуль 2: Синтез речи (TTS)

Разработка данного модуля была обусловлена скорее не прикладными задачами, а стремлением к освоению технологии синтеза речи, созданию удобного инструмента для генерации аудио и банальным интересом. Основной задачей было внедрение функционала Text-to-Speech (TTS) на базе доступных API.

Реализация:

Интерфейс модуля был разработан с упором на минимализм. Он включает в себя большое текстовое поле для ввода озвучиваемого текста, поле для описания желаемого стиля или интонации, выбора модели озвучки, выбор голоса и языка озвучки, и кнопку «Озвучить речь».

После активации кнопки «Озвучить» система направляет запрос к Gemini TTS API, передавая как текст, так и заданный промпт стиля. В течение нескольких секунд сгенерированное аудио воспроизводится во встроенном плеере, с возможностью загрузки файла. Данный процесс обеспечивает простоту и функциональность использования.

А это то зачем?

Если честно ответить на данный вопрос, то «я просто захотел попробовать». Но что можно с этим сделать:

  • Обучающие материалы: Генерация аудиофайлов для объемных инструкций и обучающих курсов, повышающая доступность информации.

  • Прототипирование IVR-систем: Возможность быстрого итерационного тестирования голосовых меню (Interactive Voice Response) без привлечения профессиональных дикторов. Это позволяет оперативно генерировать и оценивать различные варианты сообщений, значительно ускоряя процесс разработки и оптимизируя финансовые затраты на финальную озвучку.

  • Озвучивание внутренних коммуникаций: Создание аудиоверсий информационных сообщений и новостных дайджестов.

Модуль 3: Анализ видео (та же транскрибация практически с теми же целями)

При проектировании данного модуля приоритетом было упрощение процесса взаимодействия с видеоданными. Ранее подготовка видео для анализа часто требовала скачивания, конвертации и загрузки, что являлось трудоемким этапом. Обнаружение в документации Gemini функционала прямой обработки видео по URL-ссылке YouTube было признано оптимальным решением для устранения этих сложностей.

Логика модуля основана на интерактивном взаимодействии в формате "вопрос-ответ". Целью было предоставить пользователю возможность не только получать сводное содержание, но и задавать конкретные вопросы к видеоматериалу для извлечения целевой информации.

Реализация:

Интерфейс модуля разделен на две вкладки: "Ссылка YouTube" и "Загрузить файл". В обеих вкладках ключевыми элементами являются поле для указания источника видео и большое текстовое поле для ввода вопроса пользователя к видеоматериалу.

При активации кнопки "Анализировать" система формирует мультимодальный запрос. Этот запрос состоит из двух частей: объект, содержащий видеоданные (по ссылке или из загруженного файла), и текстовый промпт с вопросом пользователя. Такой подход позволяет формулировать конкретные запросы, например: "Определите момент, где спикер демонстрирует график роста, и опишите его содержание" или "Извлеките все упомянутые в докладе технологии и соответствующие таймкоды". Ответ, сгенерированный Gemini, выводится в текстовом поле под кнопкой активации.

А это пригодилось?

Тут ответ реально убедительный. Инструмент позволяет получать сводное содержание видеоматериалов, перечень анонсированных продуктов или соответствующие таймкоды значительно быстрее, чем при ручном просмотре. Обработка видео (с учетом огромного количества видео на YouTube на самые разные темы) потенциально дает много разного рода информации. По-простому, я «кайфанул» от использования этой технологии.


Итог:

В части проведенного анализа — модели Gemini можно использовать, не опасаясь за качество. В части инструмента – результаты внедрения меня удовлетворили, чего желаю и вам с вашими продуктами.

Благодарю за уделенное время! Надеюсь, мой подробный рассказ о пути от небольшого исследования до реализации вдохновит и вас на создание собственных ИИ-помощников.
оригинал статьи

Комментарии (3)


  1. Smogendrr
    12.12.2025 08:01

    Интересно. Я примерно тем же занимаюсь для анализа консультаций с клиентами. А сервис DeepGram, который собственную модель и диаризацию имеет, не рассматривали? А тайминги для фраз у Gemini у вас получилось для транскрипта указывать?


  1. Bardakan
    12.12.2025 08:01

    а как же модели Mistral?

    Как я ранее говорил, я технически неподкованный специалист (вайбкодинг и общее понимание — мои основные инструменты), поэтому в технические аспекты лезть не буду.

    Тогда вы просто обязаны рассказать про использование speech-to-text для вайбкодинга. Насколько я понял, здесь модель может быть не такой точной, но должна быть достаточно быстрой. И локальные модели здесь как будто не подходят


    1. RS_AI Автор
      12.12.2025 08:01

      локальные модели не рассматривал, так как требовательность к железу снижает порог входа. да, есть модели, которые можно запустить даже на смартфоне, но WER будет очень высоким.
      Мистраль ранее использовал small модели для определенных задач, но в контексте статьи опыта не было. Нужно посмотреть, что там и как