Комментарии 23
Нативную диаризацию 🙏
И, в целом, бы без pyannote
Очень крутая работа! У нас почему-то все постоянно нахваливают Whisper по кругу, слабо понимаю почему.
Commercial usage
В GigaAM-v2 мы предобучали модель примерно на 50 тысячах часов русской речи. В v3 мы увеличили этот объём до 700 тысяч часов.
То есть правильно понял, что все эти 700к часов, это тоже внутренние данные Сбера, раз вы открыли модель для коммерческого использования?
применяем Voice Activity Detection, режем длинные записи на минутные фрагменты и отбрасываем сегменты со слишком большой долей тишины;
А какой VAD используется, если не секрет?
Спасибо!
Мы использовали составной корпус аудиозаписей, собранный нами из разных источников, внутренние данные клиентов не применялись. Модели опубликованы с MIT лицензией, которая допускает коммерческое использование, датасеты не распространяем.
Для обработки данных применяли внутреннюю VAD-модель из сервисов SaluteSpeech. В ближайшее время планируем выпустить ее в открытый доступ.
У вас есть модели, которые позволяют транскрибировать аудио с микрофона на двух языках со средним качеством? Пробовал модели во Whispering - у простых (в том числе parakeet) качество не подходит, чуть более сложные - тормознутые для использования с микрофоном, а покупать ChatGPT для таких задач как-то жирно (порядка 300к токенов в месяц)
В SaluteSpeech API есть модели, которые поддерживают 2 языка (русский + еще один): киргизский, казахский, узбекский. Модели справляются в том числе с переключением между языками в одной фразе. Недавно рассказывали про разработку таких моделей на нашей конференции: запись доклада. Также мы работаем над open-source мультиязычной моделью
У сообщества в запросах разве нет готового образа чтоб без заморочек api дергать?
Это было бы удобно для
Если вы уже пользуетесь Whisper или другими моделями, то попробуйте подменить их на GigaAM-v3 в своём пайплайне и посмотрите, как изменятся метрики и субъективное восприятие.
Можно ли дообучить на новый язык?
Во многих статьях под словом "домены" - чаще всего подразумевали другие языки, в рамках вашей статьи насколько понял, используется только русский язык, а домены - это наборы данных разного качества и содержимого.
Еще хотел уточнить, делали ли вы гибридную модель, где есть 2 головы - CTC (на быстрое распознавание) и RNNT (на более точное) и как такую модель используете в своих проектах?
И на вопрос, который вы обычно не отвечаете на своих докладах и выступления, ну или говорите фразу типа "бесплатного google colab для этого не хватит" - так все таки, сколько времени и на каких мощностях вы обучили модель которую выложили и с какой попытки получилось? Спасибо.
Под доменом имеем в виду речь на русском языке из разных источников. Домены отличаются друг от друга текстом, качеством звука, спонтанностью речи, инструкцией (например, в одних доменах транскрипция содержит всю речь на записи, в других — посторонняя речь на фоне игнорируется).
Для production моделей мы учим гибридную модель (CTC + Attention Encoder-Decoder), авторегрессивный декодер позволяет лучше обучить сам энкодер, во время инференса его не используем.
Вычислительные мощности не можем раскрывать. Можно ориентироваться на статьи по SSL моделям, например, wav2vec2.0: https://arxiv.org/pdf/2006.11477. Но стоит делать поправку на то, что с момента публикации обучение было оптимизировано в несколько раз.
А ели сравнивать с каким-нибудь простым Vosk, то какая будет разница в качестве распознавания?
Мы такого сравнения не проводили, но есть независимое исследование: https://alphacephei.com/nsh/2025/04/18/russian-models.html
Каждый день используем whisper в turboscribe. Качеством в целом довольны даже плохое качество распознает нормально в большинстве случаев.
Есть конкретные примеры превосходства гигаам для обывателей типа:
Аудио: “Привет, как дела”
Whisper → “Привет как дела”
GigaAM → “Привет, как дела?”
?
Конечно! Мы как раз проводили сравнение с Whisper-large-v3 в формате side-by-side.
Вот несколько примеров оттуда
- Чаще всего Whisper хуже в точности распознавания
оригинал: салют включи земфира
GigaAM: Салют, включи Земфира.
Whisper: Савит киши зимки рейсканы.
оригинал: странная ты девушка тамара
GigaAM: Странная ты девушка — Тамара.
Whisper: Сторона этой девушки, Тамара.
оригинал: отметь на карте дорожные работы
GigaAM: Отметь на карте дорожные работы.
Whisper: Отметь на карте дорожной работы.
- Лучшее понимание языка влияет и на пунктуацию
оригинал: наше золото звенящие голоса
GigaAM: Наше золото — звенящие голоса.
Whisper: Наше золото, звенящие голоса.
оригинал: оттепель это самое опасное время
GigaAM: Оттепель — это самое опасное время.
Whisper: Вот теперь это самое опасное время.
- Названия / термины
оригинал: номер рейса карши худжанд
GigaAM: Номер рейса Карши Худжанд.
Whisper: Номер рейса Корши-Худжанд.
- У Whisper бывают и банальные галлюцинации
оригинал: возраст пациента пятьдесят шесть лет
GigaAM: Возраст пациента 56 лет.
Whisper: Продолжение следует...
оригинал: а я понял когда кто то будет что то делать
GigaAM: Ну, а-а, я понял, когда кто-то будет что-то делать.
Whisper: Аааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа...
Забавно, что в последнем примере GigaAM добавил "Ну" :)
Кстати, интересно, есть у вас режим наоборот, где выкидываются всякие паразитные э-кания, мэк-ния и ну-кания без потери смысла? Потому что бывает что человек читает прекрасную лекцию, но в качестве связки/пробела ставит что-нибудь паразитное короткое, хорошо если такое разумным способом отбрасывается.
Потестировал, очень понравилось! Качество гораздо лучше Whisper large. Причём Whisper начинала к середине трёхминутной аудиодорожки жутко галлюцинировать, у GigaAM-v3 же на протяжении всего аудио стабильный результат. Ещё и работает гораздо шустрее Whisper. Спасибо!
Здравствуйте, аудиофайлы стерео формата еще не поддерживает?
Ребята-разработчики, привет! Специально зарегистрировался чтобы написать что вы очень крутые и ваша библиотека это реально лучший вариант для обработки русскоязычного аудио из тех вариантов, с которыми я до этого имел дело (Whisper, Vosk). Единственное, что я, пожалуй, присоединюсь к комментарию выше, что использование pyannote для длинных аудиозаписей это не очень удобное решение. Я сделал для себя свой конвейер обработки длинных аудио, использую для него VAD-модель от Silero, это тоже очень крутые ребята, которые делают не менее классные решения для работы с речевым аудио (voice active detection, синтез голоса). Прошлый вариант вашей модели (v2-ctc) в onnx-формате я интегрировал в модуль на c++, работает локально даже на очень слабых компьютерах (4+ ядер) без gpu, при этом удается добиться онлайн-транскрибации. После Whisper, которая на ПК без gpu просто не заработает, это кажется невероятным). В общем, спасибо вам за такие классные модели, надеюсь увидеть продолжение. И да, - очень не хватает диаризации "из коробки", лучше в виде отдельной модели).
pip install -e .
Obtaining file:///media/Work/GigaAM
Installing build dependencies ... done
Checking if build backend supports build_editable ... done
Getting requirements to build editable ... done
Preparing editable metadata (pyproject.toml) ... done
Collecting hydra-core==1.3.* (from gigaam==0.1.0)
Downloading hydra_core-1.3.2-py3-none-any.whl.metadata (5.5 kB)
Collecting numpy==2.* (from gigaam==0.1.0)
Downloading numpy-2.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.metadata (6.6 kB)
Collecting omegaconf==2.3.* (from gigaam==0.1.0)
Downloading omegaconf-2.3.0-py3-none-any.whl.metadata (3.9 kB)
Collecting onnx==1.19.* (from gigaam==0.1.0)
Downloading onnx-1.19.1.tar.gz (12.0 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 12.0/12.0 MB 46.1 MB/s 0:00:00
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
INFO: pip is looking at multiple versions of gigaam to determine which version is compatible with other requirements. This could take a while.
ERROR: Ignored the following versions that require a different python version: 1.21.2 Requires-Python >=3.7,<3.11; 1.21.3 Requires-Python >=3.7,<3.11; 1.21.4 Requires-Python >=3.7,<3.11; 1.21.5 Requires-Python >=3.7,<3.11; 1.21.6 Requires-Python >=3.7,<3.11; 1.26.0 Requires-Python >=3.9,<3.13; 1.26.1 Requires-Python >=3.9,<3.13
ERROR: Could not find a version that satisfies the requirement onnxruntime==1.23.* (from gigaam) (from versions: none)
ERROR: No matching distribution found for onnxruntime==1.23.*
Здравствуйте. Распознаю на процессоре (Core i3, 12 Гб DDR3, Debian 64) и, вроде, даже получатся. 11 минут чистой диктофонной записи (длинные паузы удалены диктофоном) за 5 минут работы c занятием 20-25% ОЗУ. Но:
Выдаются сообщения вида "[W*** NNPACK.cpp:56] Could not initialize NNPACK! Reason: Unsupported hardware." Это потому, что процессор без AVX2 и AVX512 или что-то другое? Насколько критично это предупреждение?
Токен от pyannote получил, но диаризация в model.transcribe_longform не срабатывает. Куда бежать, что делать? Или pyannote используется только для разбиения на фрагменты?
Информация
- Сайт
- sberdevices.ru
- Дата регистрации
- Дата основания
- 2019
- Численность
- 501–1 000 человек
- Местоположение
- Россия
GigaAM-v3: открытая SOTA-модель распознавания речи на русском