Илья Жарков

Илья Жарков 

Независимая разработка софта

0subscribers

2posts

goals3
0 of 50 paid subscribers
50 подписчиков позволят регулярно оплачивать хостинг и сервера раздачи моделей для iazShadow.
$0 of $512 raised
Покупка сертификата подписи кода (Authenticode). Это избавит пользователей от синего предупреждающего окна Windows SmartScreen при установке MSI.
$0 of $768 raised
Выделение времени на адаптацию квантованных моделей для генерации протоколов встреч целиком офлайн.

Почему я начал делать iazShadow

Созвонов много, проекты разные, а после каждого нужны план работ и запись: кто что сказал, что подтвердил, в чём отказал. Ещё нужно саммари переговоров.
Идут они то в Телемосте, то в Zoom, то в Google Meet. В Zoom у нас какое-то время подключался автоматический бот-ассистент (названия уже не помню). Потом он пропал, но видеозапись встреч всё равно шла, и мы получали файл. Для других сервисов такого не было, а расшифровку очень хотелось. Я записывал экран, и встал вопрос: что делать с файлом?
Первая идея была отдать запись облачной нейросети, например Gemini. Но у чатов есть ограничения на размер файла. Я вырезал аудиодорожку (это просто), но длинные записи всё равно упирались в лимиты. Через API (например, Vertex AI от Google Cloud) запись можно обрабатывать, некоторые так и делали, но уже за деньги.
Я выбрал другой путь: обрабатывать запись локально, на своём компьютере. Цена этого пути — моё время. Плюсы — бесплатно и приватно: разговоры точно никуда не утекут (хотя тогда это для меня не было критичным).
Нашёл Whisper — модель распознавания речи от OpenAI. Поднял её в Docker, настроил и примерно за час-два получил текст созвона. Как же это было приятно! Пока не посмотрел результат:
  • Segment 1: Добрый день, коллеги, начинаем нашу встречу.
  • Segment 2: Сегодня мы обсуждаем архитектуру и план развёртывания.
  • Segment 3: Подскажите, есть ли вопросы по предыдущему этапу?
  • Segment 4: Да, у меня есть вопрос по производительности на GPU.
  • Segment 5: Отлично, давайте разберём этот момент подробно.
    
Текст есть, а кто что сказал — непонятно. Whisper только распознаёт речь, а делить её по говорящим не умеет. Ещё часа два ушло на знакомство с диаризацией: это разметка записи по говорящим. Программа находит, когда говорил один и тот же голос, и помечает его меткой (SPEAKER_00, SPEAKER_01…), не зная ни имён, ни того, кто это. Получилось уже удобоваримо:
  • SPEAKER_00: Добрый день, коллеги, начинаем нашу встречу.
  • SPEAKER_00: Сегодня мы обсуждаем архитектуру и план развёртывания.
  • SPEAKER_00: Подскажите, есть ли вопросы по предыдущему этапу?
  • SPEAKER_01: Да, у меня есть вопрос по производительности на GPU.
  • SPEAKER_00: Отлично, давайте разберём этот момент подробно.
Радость снова была недолгой: в конце текста я увидел SPEAKER_12 — при всего четырёх участниках. Оказалось, это типичная болезнь диаризации — переразбиение на спикеров. Междометия вроде «угу» и «ну», перепады интонации и фоновый шум делают один и тот же голос непохожим на самого себя, и программа заводит нового «участника». Ошибиться и склеить двух разных людей для неё хуже, чем создать лишнего, поэтому лишних набегает много. Тринадцатый спикер на четверых — это ещё скромно.
На то, чтобы победить это настройками, времени уже не хватило. Именно тогда я задумался о собственной программе: с транскрибацией, которая работает на обычном компьютере, и с диаризацией, которой можно доверять.
Так начался iazShadow — невидимый секретарь для созвонов под Windows. Он превращает разговор в текст прямо на вашем компьютере, без облака и без бота во встрече.
Что будет на этом Boosty. Базовые версии моих программ бесплатны. Здесь я буду показывать, как всё устроено изнутри: выбор моделей, бенчмарки, архитектурные решения, грабли и находки. Закрытые посты, предрелизные сборки и опросы о приоритетах функций доступны на уровне «Ранний доступ и инсайды» (350 ₽ в месяц). Собранные деньги пойдут на сертификат подписи кода, серверы раздачи моделей и локальное саммари созвонов. Подробнее о целях и уровнях — на странице выше.
В следующем посте расскажу, почему для распознавания я выбрал GigaAM и sherpa-onnx вместо Whisper и что это дало в скорости.
Creator has disabled comments for this post.
Subscription levels2

Ранний доступ и инсайды

$4.5 per month
Поддержка независимой разработки iazShadow и iazKeeper.
Что входит:
• Доступ ко всем закрытым постам: закулисье разработки, бенчмарки и архитектурные решения.
• Ссылки на предрелизные сборки программ прямо в ленте Boosty до официального релиза.
• Участие в опросах по выбору приоритетов новых функций.
• Приоритетный учёт ваших пожеланий и баг-репортов в комментариях и личке.

Спонсор проекта

$19.2 per month
Для тех, кому софт реально экономит рабочее время и кто хочет внести существенный вклад в развитие приватных инструментов.
Что входит:
• Всё из уровня «Ранний доступ и инсайды» (закрытые посты, опросы, ранние сборки).
• Ваше имя или никнейм в списке благодарностей на официальном сайте iazshadow.macroera.ru и в релизных заметках.
• Прямая связь с автором в личных сообщениях Boosty по любым техническим вопросам.
Go up