При помощи нейросети сделал песню про героя всея ДТФ Райана Гослинга

Хочу поделиться небольшим опытом использования нейросети Suno AI для создания песен (ну а так же результатом работы).

На удивление, я практически не видел на ДТФ её упоминаний и обсуждений: поэтому хотел бы немного исправить эту ситуацию (а заодно и рассказать о своих впечатлениях и поделиться результатом).

Если честно, то я никогда не интересовался нейросетями и принципами их работы. Но я интересуюсь музыкой. Поэтому когда я узнал об относительно новой нейросети Suno AI (сайт - suno.ai), которая может генерировать не просто музыку или тексты, а целые песни, то был «вэри эксайтед»! Ведь можно, например, создать для себя целый уникальный набор треков, удовлетворяющий всем твоим требованиям… или нельзя? Ну давайте посмотрим.

What the fuck is that?

Всё взаимодействие происходит через Дискорд, а если ещё точнее - через бота. Как я понял, то можно использовать и общий канал, отправляя команды туда. Но в этом случае все увидят плоды вашего творчества (так что если хотите сделать что-то типа порно-граинда про лолей, то лучше использовать приватную переписку с ботом).

Сейчас нейросеть находится в бэте и после короткой регистрации даёт 250 токенов на месяц для генерации (что примерно равняется 25 генерациям). При оформлении подписки за 10$, ежемесячных генераций становится примерно 100 (1000 токенов) + есть возможность покупать токены (например ещё 1000 токенов уже будет стоить всего 8$).

При генерации создаётся 2 разных варианта музыкального фрагмента до 40 секунд (обычно около 30 секунд). Дальше можно сохранить понравившийся вариант или продолжить его новой генерацией, которая будет учитывать тональность, ритм и общий стиль исполнения. Продолжать склеивать из кусков песню можно сколько угодно, а затем так же сохранить понравившийся результат.

При помощи нейросети сделал песню про героя всея ДТФ Райана Гослинга

You know, i’m something of a musician

Для генерации указывается жанр и вводится небольшой кусок текста. Также есть возможность, вместо готового текста, сгенерировать его через нейросеть по запросу. В этом случае есть бан на некоторые слова, но при этом нейросеть иногда поддерживает и может раскрыть неожиданные темы (такие как инцест, например).

При помощи нейросети сделал песню про героя всея ДТФ Райана Гослинга

Что касается жанров. Есть список жанров и он не такой большой, но Suno AI может работать и за пределами этого списка: например отлично справляется с созданием пост-панк треков. Жанр эмо, как вариант, тоже распознаётся, но результат получается неоднородный: по этому запросу может быть сгенерирован как эмо-кор, так и эмо-панк или молл-эмо; при этом, если указать эмо-панк, то большинство генераций будут иметь более припанкованный и гаражный звук. А вот более специфические жанры, к сожалению, не распознаются: по запросу «screamo» получались какие-то разговорные треки с минимальным музыкальным сопровождением. Некоторые жанры работают в ожидаемой синергии и органично продолжают друг друга. Я прямо кайфанул от сочетания пост-хардкора и запроса «synth».

С введением собственного текста всё более-менее понятно. Есть ограничение по символам и одна генерация подразумевает сочетание коротких куплета и припева, либо один более развёрнутый куплет/припев. Поддерживаются метки, типа «[Verse], [Chorus]», но для меня осталось не очевидно в полной мере как они работают (об этом я ещё скажу ниже). Есть также подводные камни, связанные с длительностью фрагмента: я уже писал, что сгенерированный фрагмент в основном длиться около 30 секунд, поэтому даже если введённый текст соответствует необходимому количеству символов, то при медленном темпе исполнения или использовании пауз между строками, текст не помещается в рамки фрагмента и может просто прерваться на середине.

Поддерживаются разные языки исполнения. У меня получался хороший результат на английском, приемлемый результат на немецком, спорный результат на русском и японском.

Также есть неочевидная проблема при попытках смешать языки. Если один кусок на английском, а второй, например, на японском, то нейросеть с большой вероятностью затупит и вместо второго куска будет произносить какую-то тарабарщину (прямо как мы все в детстве, когда старались петь выдуманные слова на незнакомом языке… хотя я до сих пор так делаю). Помогает создание «мостиков» от одного языка к другому в пределах одного генерируемого куска: например можно вставить что-то типа «yeah» на английском, а потом продолжать песню на другом языке со следующей строки. Возможно это связано с моделью, которую нейросеть начинает использовать для синтеза речи, а так как следующий фрагмент - это продолжение предыдущего, то при резком переходе есть некоторое «непонимание» как с этой моделью работать… да простят меня инженеры и айтишники за такое объяснение.

Нужно отметить, что нейросетевой голос всё-равно будет отличаться от человеческого (хотя разве это не очевидно, хех?). В некоторых жанрах (том же пост-хардкоре) - это уместно, но в акустической балладе такой вокал может ломать всю магию.

Самая лучшая часть, как по мне - это генерация текста через нейросеть. И тут можно получить самый большой фан!

Let’s (govno)rock!

Можно бесконечно спорить о творческой способности нейросетей и художественной ценности произведений, которые в них получаются. Но я думаю, что не стоит отрицать, что это хороший развлекательный инструмент.

Меня захватила мысль сделать себе треклист из песен, которые были бы достаточно странные, чтобы их реально кто-то стал записывать, но при этом они были бы в «серьёзных» жанрах. Я понимаю, что есть много сатирических и ироничных групп, но при этом они зачастую играют в специфических жанрах и не покрывают темы, о которых бы я хотел послушать.

Получилось ли у меня задуманное? Я считаю, что да!

Какие плюсы я могу отметить: можно воплотить в жизнь свою творческую задумку, но при этом, в отличие от самостоятельно записанной песни, слушать результат будет не кринжово; есть рандом в генерации песен, а значит результат будет более интересный (ведь при написании собственной песни вы будете знать каждую ноту и каждый следующий ход, что несколько «замыливает» взгляд на неё) - сгенерированная песня может быть маленьким открытием при том, что она будет соответствовать вашему вкусу и быть про то, про что вы хотите.

Минусы очевидны: помимо спорной художественной ценности, в песне будет скудное музыкальное разнообразие и практически полное отсутствие интересных, новых музыкальных приёмов; также ото всюду будут торчать элементы генерации нейросетью (например странное произношение слов и роботизированный голос, неаккуратные переходы между разными частями композиции и местами её общая нестройность, странный выбор партий конкретных инструментов и «плавающая» динамика).

Но иногда нейросеть рождает то, что нормальному человеку в голову могло и не придти: особенно это раскрывается при генерации случайного текста. Что будет, если написать песню о классическом анимэ-тропе с перерождением гг в новом мире, но в виде… трусиков? В таких ситуациях могут родится удивительные рифмы и речевые обороты, которые без скатывания песни в кринж, вроде как при серьёзной подаче, создают дополнительный комедийный элемент.

Разберём то, о чём я говорил, на примере того, что у меня получилось. Но перед тем как представить результат, я бы хотел поговорить о сложностях написания песен при помощи Suno AI.

You had one job…

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

  1. Первая проблема, с которой сталкиваешься - это куплетно-припевная система. Припев, обычно - это бэнгер, который должен цеплять. Но даже при использовании метки «[Chorus]», в каждом новом фрагменте припев будет спет по разному. Иногда в первой части ловишь идеальный припев, но нет возможности полностью его сохранить - только наролить похожий. Зачем тогда нужен специальный тег «[Chorus]»? Может исправят в новых версиях.
  2. В коротких песнях из 2-3 кусков часто получается прикольная динамика, но это трек на 1-1,5 минуты. При попытке делать больше частей получается сломанный телефон: каждый новый кусок будет чуть отличаться от старого по манере исполнения и ритмике, а каждый последующий будет опираться на предыдущий (а не на первый, где задаётся ритм и гармония), немного меняя канву песни.
  3. В композиции не должно быть ровной динамики, должны быть её спады и подъёмы. Обычно для этого нужны проигрыши. Можно сделать их несколькими способами: ставить чисто музыкальные теги, такие как например «drums», или создавать куски без текста. Проблема в том, что эти части малопредсказуемы. Может получиться фрагмент на 2-5 секунд, а может на 30, причём в себе он может содержать вообще что угодно. В варианте, без ввода текста - почти всегда будет повторяться строчка из предыдущей части (эхом с эффектами, как бэк, или как полноценная вокальная партия), что не всегда подходит. Спасает применение меток «[Breakdown]», «[Instrumental]» и т. д. В этом случае, опять же: нет достаточного контроля над результатом (вообще сомневаюсь что эти метки работают, но хотя бы спасают от «эхо-текста»).
  4. Вся песня будет сохранять стиль первой части. Если там был какой-нибудь панк, а затем вы хотите сделать акустический проигрыш (что, в принципе, уместно в жанре), то песня не перейдёт в чистую акустику, а просто обыграет элементы. То-есть нельзя создать что-то хаотичное и экспериментальное. У меня была проблема, когда при создании эмо трека я хотел хардкорный проигрыш с брейкдауном и гроулом, а затем с возвращением к первоначальному варианту исполнения. Тег «hardcore» в проигрыше давал нужный эффект (видимо из-за родственности жанров), но затем при возвращении жанра в «emo», песня не возвращалась в лиричное русло, а продолжался «тежеляк» с экстрим-вокалом.

В общем, вполне можно сделать прикольную зарисовку, но сделать полноценную песню с хорошей динамикой крайне трудно.

Да не умер он в конце!

Ну литрали про меня!

Вот, одна из первых полноценных песен, которую я сгенерировал. Задумку и её реализацию оценивать вам. Я бы хотел немного проанализировать то, что получилось.

Специфика жанра пост-панк сыграла отчасти положительную роль: за монотонностью и однообразностью исполнения меньше бросается в глаза «лоскутность» песни, разница между исполнением куплетов и припевов. В то же время, есть проблема с динамикой, части песни трудно воспринимать и дифференцировать, а отсутствие полноценных проигрышей и невнятные переходы усугубляют это. В бридже я попробовал поставить жанр госпел, но, как видите, стиль мало поменялся.

Также, есть вещи, которые бы вряд ли были в песне, если бы её писал человек. Сюда бы я отнёс скудные и однообразные (а местами и очевиднейшие) рифмы. При этом сам подбор слов кажется интересным. Также использование одной и той же дроби (в первой части) и двойного удара по рабочему (во второй части) в конце каждого квадрата - это было бы очень странным решением «живого» барабанщика (да даже в случае драм-машины, скорее всего паттерн бы постарались сделать интереснее), хотя может тут я просто недооцениваю жанр. Что касается гитары и баса - ну они просто тут есть; отчасти это жанровая специфика, но хотелось бы чего-то поинтереснее.

Какой вывод можно сделать из всего этого? Да, наверное, никакого. Просто имеем классный инструмент, который можно использовать «джаст фо фан». Если говорить о пользе, то это хорошее подспорье для начинающих музыкантов. А так же неплохой генератор вариантов исполнения, что особенно актуально при творческом кризисе.

Хотел написать короткую заметку, а вышел в итоге лонг. Надеюсь, что текст при этом получился не очень тяжёлым и, возможно, интересным. Так как тема, на мой взгляд, достойна внимания.

Я и дальше планирую экспериментировать с данной нейросетью и генерировать забавные музыкальные зарисовки. Так что если вам интересно - подписывайтесь;)

55
10 комментариев

Не знал точно куда лучше закинуть, но вроде правилам оффтопа не перечит… не перечит же?)

2
Ответить

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

2
Ответить

cringe

Ответить
2
Ответить

Звучит как lo-fi из 20-го века.

Ответить

Да. Сети всё больше ебут.

Ответить

я интересуюсь музыкойПрочитал 30 тысяч символов в статье, но ни одного упоминания про авторское право, лицензию. Можно ли использовать на коммерческой основе? Можно выкладывать на платные прослушивания Аля спотифая?
Ни одно творчество не существует в отрыве от реализации, иначе это просто хобби для ящика стола

Ответить