VIBE_CODING_CHANNEL Telegram 263
Вайб-кодим сервис транскрибации аудио на базе Whisper под Apple Silicon.

Как вы помните, я недавно снял видео, в котором сравнивал UX n8n и langflow. Перед публикацией в Telegram мне нужно было наложить на видео субтитры. Я загуглил, что сейчас можно использовать для таких целей и нашел следующие варианты:

veed.io - крутой инструмент, но очень дорогой, к тому же я не так часто делаю видео, чтобы платить 20$ за это дело.

clideo.com - я не пожалел денег и оплатил его, просто потому, что он обошелся в 9$, и я как фронтендер в анамнезе, ценю минималистичные и простые интерфейсы. А там интерфейсы делал какой-то Конфуций, на столько просто, чисто, изящно, я прям получил удовольствие.

Но потом я подумал, что субтитры не такая уж и сложная вещь, чтобы за нее платить, и вспоминил что gladia.com дает 10 часов в месяц бесплатно на транскрибации, и у них есть возможность их скачивать в формате .srt. Я залил свое видео на YouTube, и закинул ссылку на Gladia, он сделал мне .srt. Я открыл бесплатную программу для сжатия видео HandBrake, и там вставил полученный .srt во вкладке Subtitles. Вот такой бесплатный способ я нашел.

Но я подумал, Gladia - это внешний зарубежный сервис, лимиты могут меняться (привет Cursor), а Handbrake вообще десктопное приложение. Значит такой способ не подходит для интеграций в n8n. Тогда я решил сделать то, что давно хотел на своем домашнем сервере MacStudio, а именно поднять свой Whisper как веб-сервис на FastApi.

Начал я с whisper-cli. Поднял его с помощью Brew. Скачал сначала Base модель, но качество мне не понравилось. Когда попробовал Large модель, ощутил как продакшен уровень вошел в мой дом.

Я попросил Kiro написать мне микросервис с одним ендпоинтом POST /srt, который бы дергал whisper-cli. Он сначала начал делать все правильно, а потом начал путаться, и использовать Python библиотеку whisper, которая работает на базе Torch. В процессе работы с ней, я узнал что Torch еще не работает нормально с Apple Silicon Metal GPU. А запускать транскрибацию на Large модели на CPU, ну прям больно.

Попросил выпилить Torch версию Whisper, и использовать whisper-cli. Потом пошел гуглить, какие еще есть альтернативы, и обнаружил крутой репозиторий с примерами портирования разных ML моделей под MLX. MLX - это фреймворк для машинного обучения, специально разработанный для эффективной работы на чипах Apple Silicon.

И среди примеров оказался Whisper MLX который отлично запускается на Apple Silicon, через Python библиотеку, а не через CLI. Kiro быстро сориентировался в документации, выпилил whisper-cli, и переписал все на whisper-mlx. Заработало как по маслу, GPU очень эффективно использовал, транскрибировал 18 минутную запись на Large модели за 1-2 минуты. Но мне показалось, что качество Large модели под MLX ниже, чем под whisper-cli, но об этом я напишу в другой раз.

@vibe_coding_channel
@vibe_coding_community
1🔥85



tgoop.com/vibe_coding_channel/263
Create:
Last Update:

Вайб-кодим сервис транскрибации аудио на базе Whisper под Apple Silicon.

Как вы помните, я недавно снял видео, в котором сравнивал UX n8n и langflow. Перед публикацией в Telegram мне нужно было наложить на видео субтитры. Я загуглил, что сейчас можно использовать для таких целей и нашел следующие варианты:

veed.io - крутой инструмент, но очень дорогой, к тому же я не так часто делаю видео, чтобы платить 20$ за это дело.

clideo.com - я не пожалел денег и оплатил его, просто потому, что он обошелся в 9$, и я как фронтендер в анамнезе, ценю минималистичные и простые интерфейсы. А там интерфейсы делал какой-то Конфуций, на столько просто, чисто, изящно, я прям получил удовольствие.

Но потом я подумал, что субтитры не такая уж и сложная вещь, чтобы за нее платить, и вспоминил что gladia.com дает 10 часов в месяц бесплатно на транскрибации, и у них есть возможность их скачивать в формате .srt. Я залил свое видео на YouTube, и закинул ссылку на Gladia, он сделал мне .srt. Я открыл бесплатную программу для сжатия видео HandBrake, и там вставил полученный .srt во вкладке Subtitles. Вот такой бесплатный способ я нашел.

Но я подумал, Gladia - это внешний зарубежный сервис, лимиты могут меняться (привет Cursor), а Handbrake вообще десктопное приложение. Значит такой способ не подходит для интеграций в n8n. Тогда я решил сделать то, что давно хотел на своем домашнем сервере MacStudio, а именно поднять свой Whisper как веб-сервис на FastApi.

Начал я с whisper-cli. Поднял его с помощью Brew. Скачал сначала Base модель, но качество мне не понравилось. Когда попробовал Large модель, ощутил как продакшен уровень вошел в мой дом.

Я попросил Kiro написать мне микросервис с одним ендпоинтом POST /srt, который бы дергал whisper-cli. Он сначала начал делать все правильно, а потом начал путаться, и использовать Python библиотеку whisper, которая работает на базе Torch. В процессе работы с ней, я узнал что Torch еще не работает нормально с Apple Silicon Metal GPU. А запускать транскрибацию на Large модели на CPU, ну прям больно.

Попросил выпилить Torch версию Whisper, и использовать whisper-cli. Потом пошел гуглить, какие еще есть альтернативы, и обнаружил крутой репозиторий с примерами портирования разных ML моделей под MLX. MLX - это фреймворк для машинного обучения, специально разработанный для эффективной работы на чипах Apple Silicon.

И среди примеров оказался Whisper MLX который отлично запускается на Apple Silicon, через Python библиотеку, а не через CLI. Kiro быстро сориентировался в документации, выпилил whisper-cli, и переписал все на whisper-mlx. Заработало как по маслу, GPU очень эффективно использовал, транскрибировал 18 минутную запись на Large модели за 1-2 минуты. Но мне показалось, что качество Large модели под MLX ниже, чем под whisper-cli, но об этом я напишу в другой раз.

@vibe_coding_channel
@vibe_coding_community

BY Вайб-кодинг по Чуйкову | Ментор




Share with your friend now:
tgoop.com/vibe_coding_channel/263

View MORE
Open in Telegram


Telegram News

Date: |

Users are more open to new information on workdays rather than weekends. A vandalised bank during the 2019 protest. File photo: May James/HKFP. In the “Bear Market Screaming Therapy Group” on Telegram, members are only allowed to post voice notes of themselves screaming. Anything else will result in an instant ban from the group, which currently has about 75 members. Find your optimal posting schedule and stick to it. The peak posting times include 8 am, 6 pm, and 8 pm on social media. Try to publish serious stuff in the morning and leave less demanding content later in the day. fire bomb molotov November 18 Dylan Hollingsworth yau ma tei
from us


Telegram Вайб-кодинг по Чуйкову | Ментор
FROM American