Энтузиаст запустил круглосуточную радиостанцию, весь контент которой генерируется локальными AI-моделями без привязки к облачным API. Ядром проекта стал сабреддит r/wallstreetbets - источник новостей, настроений и мемов, которые алгоритмы превращают в песни и сводки. Станция работает 24/7, создаёт около 60 треков в день и читает новости в прямом эфире.
Технический стек распределён по трём видеокартам NVIDIA RTX 3090 и центральному процессору. Две 3090 обслуживают модель Gemma 4, которая пишет тексты песен, выполняет функции AI-диджея и суммаризирует новости. Третья 3090 занята генерацией музыки и изображений. CPU с синтезатором речи Kokoro озвучивает новостные блоки.
Этот кейс демонстрирует практическую реализацию автономного медиа, полностью независимого от внешних сервисов. Подобные проекты перестали быть теоретическими концепциями - они работают на потребительском железе, доступном для повторения.
Что такое AI-радиостанция на r/wallstreetbets и как она работает
AI-радиостанция на базе r/wallstreetbets - это полностью автоматизированная система вещания, где каждый элемент контента создаётся нейросетями. Тематический фокус - биржевая культура, мемы, истории успехов и провалов розничных трейдеров, собранные с одноимённого сабреддита. Архитектура проекта построена на четырёх ключевых компонентах, каждый из которых работает на выделенном оборудовании.
Первый компонент - языковая модель Gemma 4, развёрнутая на двух RTX 3090. Она решает три задачи: генерация текстов песен в стилистике сообщества, ведение эфира с ироничными комментариями и суммаризация горячих постов в новостные сводки. Две карты работают параллельно: одна обрабатывает текущий запрос на инференс, вторая держит очередь задач и контекст. Такая конфигурация позволяет поддерживать непрерывное вещание без задержек, критичных для радиоформата.
Второй компонент - генеративный стек для аудио и визуального контента на отдельной 3090. Вероятные кандидаты для музыки - MusicGen от Meta или Riffusion, для изображений - Stable Diffusion XL. Результаты кэшируются для повторного использования в эфире. Третий компонент - Kokoro на CPU, который превращает текстовые сводки в речь в реальном времени, не нагружая GPU. Четвёртый, связующий элемент - оркестратор на Python, управляющий очередями задач и потоковым сервером Icecast.
Метрики проекта: около 60 треков ежедневно, новостные блоки каждый час, нулевая зависимость от облачных API. Полная автономность достигнута за счёт того, что все модели - open-weight, а железо - собственное.
Технический стек: как локальные нейросети обеспечивают 24/7 вещание
Распределение нагрузки между компонентами - ключевое архитектурное решение этого проекта. Разработчик не пытался уместить всё на одной машине, а разделил задачи по типам вычислений: LLM-инференс, диффузионная генерация и синтез речи. Каждый тип получил оптимальный для себя вычислитель.
Gemma 4 на двух RTX 3090: тексты, диджей и суммаризация
Gemma 4 - open-weight модель от Google, оптимизированная под следование инструкциям. Для проекта выбрана квантованная версия, которая помещается в 24 ГБ VRAM одной 3090 с достаточным контекстным окном для анализа длинных тредов с Reddit. Две карты используются не для распределения одной модели, а для параллельной обработки разных задач: пока одна генерирует текст песни, вторая готовит новостную сводку или реплику диджея.
Промпты для генерации текстов песен включают примеры реальных постов из r/wallstreetbets. Модель получает контекст вроде «напиши куплет в жанре панк-рок о трейдере, который вложил все сбережения в SPY puts за день до ралли» и выдаёт текст, стилистически соответствующий субкультуре сабреддита. AI-диджей работает по схожему принципу, но его задача - связки между треками: комментарии о предыдущей песне, анонс следующей, шутки на основе последних мемов.
Суммаризация новостей - технически самая простая, но критичная по скорости задача. Gemma 4 получает дайджест из топ-50 постов за час, выделяет ключевые темы, тикеры и настроение, формирует сводку на 2-3 минуты чтения. Подробный разбор производительности Gemma 4 и сравнение с аналогами мы публиковали в детальном тестировании Gemma-4-26B-a4B против Qwen3.6-MoE.
Генерация музыки и изображений на отдельной 3090
Музыкальный генератор работает асинхронно и с запасом по времени. Треки создаются заранее, складываются в плейлист, откуда диджей их забирает по расписанию. Для музыки наиболее вероятны две модели: MusicGen от Meta (трансформерная архитектура, генерирует аудио по текстовому описанию) и Riffusion (диффузионная модель, создающая спектрограммы). Обе работают на 24 ГБ VRAM с приемлемой скоростью - от 30 секунд до 2 минут на трек.
Изображения генерируются для обложек треков и визуализации стрима. Stable Diffusion XL или его форки справляются с задачей за 5-10 секунд на 3090. Результаты кэшируются: если через неделю модель снова запросит «YOLO-трейдер на фоне горящей биржи», система достанет готовую картинку из хранилища. Это снижает нагрузку на GPU и ускоряет подготовку эфира.
Озвучка новостей на CPU с Kokoro
Kokoro - легковесный синтезатор речи, способный работать в реальном времени на центральном процессоре. Выбор CPU для этой задачи освобождает все три GPU для более требовательных вычислений. Качество речи Kokoro достаточно для новостного формата: чёткая дикция, настраиваемая скорость, поддержка пауз и интонационных акцентов.
Интеграция с пайплайном выглядит так: Gemma 4 генерирует текст сводки, оркестратор передаёт его в Kokoro, аудиопоток микшируется с джинглом и уходит в Icecast-стрим. Задержка от появления поста на Reddit до его озвучки в эфире составляет 3-5 минут - это время уходит на суммаризацию и синтез речи.
Экономика локального AI: почему три RTX 3090 выгоднее облачных API
Три подержанные RTX 3090 стоят $2000-2500. Электропотребление всей системы под нагрузкой - около 1.5 кВт/ч, что при цене $0.10 за кВт/ч даёт примерно $110 в месяц. Добавим амортизацию железа на три года - ещё $70 в месяц. Итого эксплуатационные расходы - $180 в месяц.
Теперь посчитаем облачные аналоги. Аренда GPU A100 в облаке стоит $1-2 в час. Для 24/7 вещания это $720-1440 в месяц - только за одну карту. API OpenAI для генерации текста: 60 песен в день по 500 токенов каждая, плюс новостные сводки, плюс реплики диджея - около 100 тысяч токенов ежедневно, что выливается в $90-150 в месяц только за текст. Добавим API для генерации музыки и изображений - ещё $200-400. Суммарно облачный счёт составит $1000-2000 ежемесячно.
Локальное решение окупается за 2-3 месяца. Дальше - чистая экономия. Мы подробно разбирали этот вопрос в статье «Локальный AI против облачных провайдеров: экономия, приватность и контроль», где сравнили реальные затраты на локальный запуск open-weight моделей и облачные API с цифрами и таблицами.
Сравнение с облачными сервисами: не только цена, но и удобство
Финансовый аргумент - самый очевидный, но не единственный. Локальный запуск даёт предсказуемую задержку: инференс на своей 3090 занимает всегда одно и то же время, без очередей облачного провайдера. Для радиостанции, где пауза в 10 секунд означает мёртвый эфир, эта предсказуемость критична.
Другие преимущества: полный контроль над моделями (можно дообучить, квантовать, менять системные промпты), независимость от вендора (облачный провайдер может поднять цены или отключить API), приватность данных (посты Reddit и сгенерированный контент не покидают сервер). Минусы - необходимость администрирования и периодический апгрейд железа. Но для проекта, который должен работать 24/7 без внешних зависимостей, эти минусы некритичны.
Контент-пайплайн: как Reddit превращается в песни и новости
Сбор данных начинается с Reddit API: скрипт забирает горячие посты из r/wallstreetbets каждые 15 минут. Фильтрация отсеивает всё, что набрало меньше 100 апвотов за час - это гарантирует, что в эфир попадёт только резонансный контент. Дополнительные фильтры по ключевым словам выцепляют упоминания тикеров (GME, SPY, TSLA), мемов (YOLO, diamond hands, to the moon) и эмоционально заряженных фраз.
Отфильтрованные посты поступают в суммаризатор на Gemma 4. Модель выделяет главную тему, определяет настроение (азарт, паника, ирония, злорадство) и формирует сводку. Параллельно другой экземпляр Gemma 4 получает задачу на генерацию песни: оркестратор подбирает музыкальный жанр, соответствующий настроению поста, и передаёт модели контекст.
От поста до трека: как рождается песня о стонках
Типичный сценарий: пользователь публикует пост «YOLO на $100k в SPY puts - обновление за час до экспирации». Система определяет эмоцию как смесь азарта и обречённости. Жанр - блюз или панк-рок, в зависимости от того, ушёл ли трейдер в минус. Gemma 4 получает промпт: «Напиши текст блюзовой песни от лица трейдера, который поставил все деньги на падение рынка, а рынок растёт. Используй сленг r/wallstreetbets. Три куплета, припев».
Сгенерированный текст передаётся музыкальной модели на третьей 3090. MusicGen создаёт аккомпанемент в указанном жанре, результат рендерится в WAV и отправляется в плейлист. Параллельно Stable Diffusion генерирует обложку по мотивам поста - например, медведя, плачущего на фоне зелёных свечей. Весь процесс от публикации поста до готового трека занимает 4-7 минут.
Ограничения и риски: что может пойти не так
Качество генерации - первый и главный риск. Языковые модели склонны к галлюцинациям, и в контексте новостей это критично: неправильно названный тикер или выдуманная цена акции дезинформируют слушателей. Решение - строгие промпты с требованием использовать только факты из исходного поста и пост-фильтрация ключевых утверждений.
Отказоустойчивость - второй уязвимый узел. Выход из строя одной из трёх 3090 останавливает либо генерацию текстов, либо музыку. Система спроектирована с запасом по контенту: плейлист всегда содержит на 2-3 часа больше треков, чем нужно, а новостные сводки кэшируются. Это даёт время на восстановление без прекращения вещания. Но поломка двух карт одновременно приведёт к тишине в эфире.
Юридические аспекты: лицензии моделей и контент Reddit
Gemma 4 распространяется по разрешительной лицензии, допускающей коммерческое использование. С музыкальными и графическими моделями ситуация сложнее: MusicGen от Meta имеет некоммерческую лицензию, Stable Diffusion XL - открытую, но с ограничениями. Перед запуском подобного проекта нужно проверить условия каждой используемой модели.
Контент Reddit защищён авторским правом пользователей. Трансформация постов в песни может считаться производным произведением, что в некоторых юрисдикциях требует согласия автора. Reddit API имеет свои условия использования, ограничивающие автоматический сбор данных для коммерческих целей. Рекомендация: изучить актуальные правила платформы и проконсультироваться с юристом перед публичным запуском.
Как повторить: ваш план по созданию автономного AI-медиа
Повторение этого проекта требует трёх компонентов: железа, моделей и связующего кода. Начнём с железа.
Выбор железа: почему 3090, а не облачный сервер
RTX 3090 остаётся оптимальной картой для инференса по соотношению цена/производительность. 24 ГБ VRAM достаточно для запуска квантованных версий большинства open-weight моделей, включая Gemma 4, Llama 3 и Mistral. Подержанная 3090 стоит $600-800 - втрое дешевле 4090 при сопоставимом объёме памяти. Альтернативы: 4090 (быстрее, но дороже), 2x3060 12GB (дешевле, но меньше памяти на карту - не все модели поместятся). Облачный сервер с GPU за $20 в месяц не подходит для 24/7 нагрузки - такие тарифы рассчитаны на эпизодическое использование.
Пошаговый план сборки:
- Соберите сервер с 2-3 RTX 3090. Материнская плата с поддержкой трёх PCIe x16, блок питания на 1500+ Вт, достаточное охлаждение.
- Установите Gemma 4 через Ollama или vLLM. Ollama проще в настройке, vLLM даёт выше пропускную способность. Квантованная версия Q4_K_M занимает около 14 ГБ VRAM.
- Выберите модели для музыки и изображений. MusicGen через библиотеку audiocraft от Meta, Stable Diffusion XL через ComfyUI или Automatic1111.
- Настройте Kokoro для синтеза речи. Доступен через Python-библиотеку, требует минимум зависимостей.
- Напишите оркестратор на Python. Связка из очередей задач (Celery или Redis Queue), планировщика и скриптов для каждого этапа пайплайна.
- Интегрируйтесь с Reddit API. Зарегистрируйте приложение, получите ключи, настройте периодический сбор постов.
- Запустите стрим через Icecast. Настройте потоковый сервер, подключите источник аудио, откройте доступ слушателям.
Оценка времени: 40-80 часов работы для опытного разработчика, знакомого с Python и Linux. Основные затраты времени - отладка пайплайна и настройка промптов под специфику контента.
Заключение: будущее локальных AI-медиа
Кейс AI-радиостанции доказывает: полностью автономные медиа на локальном железе - это не концепт, а работающая технология. Три потребительские видеокарты, несколько open-weight моделей и грамотная оркестрация заменяют студию звукозаписи, команду ведущих и редакцию новостей.
Снижение стоимости GPU и развитие open-weight моделей ускорит распространение таких проектов. Уже сейчас Llama 3, Mistral и Gemma 4 обеспечивают качество текстов, достаточное для публичного вещания. Следующий шаг - интерактивные AI-ведущие, которые принимают запросы от слушателей в реальном времени, и персонализированные новостные ленты, собираемые под интересы конкретного пользователя. Технический фундамент для этого готов.
Если вы рассматриваете запуск собственного AI-медиа, начните с изучения нашего разбора производительности современных моделей на локальном железе - там детально описаны конфигурации и метрики инференса, которые помогут выбрать оптимальный стек под ваши задачи.