Привет всем увлеченным нейронными сетями или тем, кто хочет вникнуть в технологии. Сегодня я хотел бы познакомить вас со своим захватывающим проектом с открытым исходным кодом «Бесконечное нейронное радио». Бесконечное, потому что lofi музыка и подкасты могут генерироваться нейронными сетями бесконечно. В этой статье я бы хотел углубиться в то, как все работает изнутри.

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

Технические детали:

Бэкенд: Разработанный на Go, он служит двум основным целям:

а) Предоставляет уникальный и постоянно меняющийся список музыки и подкастов lofi при каждом обновлении страницы.
б) Отслеживает подключение различных радиостанций, позволяя пользователям переключаться между музыкой, созданной нейронными сетями, и традиционными радио точками.

Внешний интерфейс: Созданный с использованием JavaScript, он взаимодействует с серверной частью через запросы AJAX. Я также интегрировал в проект прогрессивные веб-приложения (PWA). Такой подход, позволил сделать так, чтобы пользователь мог устанавливать приложение прямо с веб-сайта и беспрепятственно использовать его в фоновом режиме как музыкальный плеер. Хотите посмотреть, какой код в бэкенде и фронтенде? Весь код проекта открыт на GitHub.

Создание музыки: Я использовал проект Audiocraft с открытым исходным кодом для создания треков lofi. Основываясь на текстовых подсказках, которые определяют настроение музыки — будь то работа, дождь или отдых в вечернее время — я использовал demo/musicgen_app.py и большую модель для генерации музыки по текстовым запросам.

Создание подкастов. Здесь сыграли важную роль два open-source проекта:

  1. Wunjo AI для преобразования текста в речь и синтеза дипфейк видео. Я обучил модель, используя образцы своего голоса. Как обучить модель и подготовить данные для обучения в Wunjo AI на голосе, я снял видео на своем YouTube канале.

  2. Проект text-generation-webui в сочетании с моделью Llama для создания забавных новостных статей, сохраняющих ауру достоверности. Используя базовую модель Llama 33B из huggingface, я дополнительно обучил Lora для модели на юмористическом новостном контенте, что из этого вышло, судите сами на radio.wladradchenko.ru или английская версия.

Цитаты занимают еще одно место в приложении. В то время как английские цитаты происходят полностью из ChatGPT, русские цитаты представляют собой смесь — одни из ChatGPT, другие из фильмов и мемов, а некоторые — подлинные цитаты известных личностей. Кроме того, я создал несколько пиксельных GIF-изображений с помощью AUTOMATIC1111 Stable Diffusion, получив необходимые модели с CivitAI.

Вот и получается, что это радио создается нейронными сетями.

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

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


  1. mm3
    21.08.2023 07:11
    +1

    честно говоря ожидал увидеть вариацию на тему riffusion для генерации бесконечного потока музыки а это что то новенькое


    1. Wladradchenko Автор
      21.08.2023 07:11
      +1

      Мне показалось решение от Facebook создаёт более качественную музыку, есть Music решение для создание музыки и Audio для создания эффектов, например шум моря, аплодисменты


  1. LyuMih
    21.08.2023 07:11
    +2

    Хочу бесконечную игру-рогалик с использованием нейросетки)


    1. azTotMD
      21.08.2023 07:11

      в каком смысле "бесконечную"?


      1. LyuMih
        21.08.2023 07:11
        +1

        Сейчас можно создавать музыку / картинки через нейросети.
        Видел видео, где китай уже делает визуальные новеллы через GPT.

        Вот хочется, чтобы нейронка могла создавать "Квесты", "Карточки умений", "Оружие" и т.п. в рамках самой игры)


    1. Wladradchenko Автор
      21.08.2023 07:11
      +1

      Как раз игру дорабатываю из codepen в честь 1000 подписчиков на ТенЧат, ещё не выпускал. Симулятор автора статей называется https://wladradchenko.ru/simulator_post. Суть при помощи тапов писать статьи, набирать подписчиков и изучать темы, чтобы улучшать скиллы, и все это 1 игровой год. Остаётся подключить к музыки и подкасту из radio.wladradchenko.ru, генерации текста скиллов и тем статей, убрать лимит в 1 год (точнее добавить, что можно продолжить) , и вот бесконечный рогалик нейронными сетями)))

      Тоже скоро код открою под игру как полностью будет готова


  1. dxq3
    21.08.2023 07:11
    +2

    Отлично вышло. Треки кажутся коротковатыми. Обрываются в том месте когда ты только обращаешь на него внимание и начинаешь думать - о, неплохой трек). Сделать бы раза в два длинее и сделать плавный FADE in и out по громкости - было бы идеально


    1. Wladradchenko Автор
      21.08.2023 07:11

      Согласен. Пока лимит в 1 мин 30 секунд по генерации)) Думаю дальше только круче будет развитие технологии генерации музыки


    1. Wladradchenko Автор
      21.08.2023 07:11
      +2

      Спасибо за идею. Добавил fade in, fade out на треки))


  1. m68k
    21.08.2023 07:11
    +1

    Cинтетическая музыка подъехала в этот "дивный новый мир"