🎤 AIにその場で作詞させるのをやめて、架空の作詞家に発注することにした
「軸のないAIの曲」が嫌で、作詞家のペルソナをつくって事務所みたいに運用してみようとしている
PLT-88 · FEATURED 🎤 AIにその場で作詞させるのをやめて、架空の作詞家に発注することにした
AIで作った曲を並べて聴いていると、軸がないなぁ、と思うことがあります。
一曲ずつは悪くないものもあります。でもいくつか通して聴くと、もちろん同じ人が作ったものに見えない。
これは他人の曲の話ではなくて、自分で作ったものを自分で聴いての話です。プロンプトをその場で考えているんだから当たり前だろ、と言われればそれはそう。
でも、軸のないAIの曲がたくさんある、という印象を自分の作ったものにも持ってしまう。それが嫌でした。ある程度でいいから揃えたい。
というか、自分が作った曲たち。って感じたい。
なので、作詞家のペルソナを作って運用してみてます。
2024年の僕は「良いプロンプトを考案できるようになりたい」と書いていた
2年半前に、Suno AI を触った記事を書いています。
suno-ai-intro
このときは ChatGPT で作詞をして、できた歌詞を Suno に投げていました。記事の締め
AIとうまく対話できるようになるのはこれからを生き抜くために必要な力な気がしますね。良いプロンプトを考案できるようになっていきたい。
となっています。いまやっていることは、この延長ではあるんですが、プロンプトを磨く方向ではなくなりました。
指示を上手くするのではなく、書く人のほうを固定する。そういう形になっています。
そもそも僕は作詞をしていなかった
「AIに作詞をさせる」と言うと、AIにものづくりをさせるなんて作り手として抵抗はないのか!みたいな話になりがちじゃないですか。でも僕はここに引っかかりがほとんどありません。
バンドをやっていた頃も、僕は作詞をしていませんでした。やっていたのは作曲だけ。というか、作詞ができないです。すごいよ作詞。
なので「歌詞を誰かに書いてもらう」のは、僕にとっては元からの作り方でもあります。
新しいのは、書いてもらう相手を自分で作ったところだけ。むしろ任せられるのがおもしろい。
一貫性が欲しかったので、事務所の形にした
ここでひとつ、自分でも面白いなと思っていることがあります。一貫性が欲しいなら作詞家は1人でいいはずなのに、数人作っています。
1人にすると、揃うんじゃなくて単調になる。欲しかったのは曲単位の一貫性であって、全曲が同じになることじゃないんですよね。
だから、それぞれ違う軸を持った書き手が複数いて、束ねるのは僕の側、という形にし、事務所としました。
発注の仕方も、プロンプトを書くというより打ち合わせに近いです。ペルソナごとに受注窓口のコマンドがあって、そこで「こういうテーマで」と依頼する。テーマを決めていないときは、おまかせで出してもらう。
そう言った使い方をします。
人格を立てても、AIの手癖は貫通してくる
AI特有の言い回しが出ます。
「XXだけ残して」とか「XXを覚えてる」みたいな、妙に余韻を残そうとする形に、変な比喩が入るときがあるんですよね。人格を作って、その人の語彙で書いてもらっているつもりでも、そこは人格を通り抜けて出てくる。手癖です。
逆に、語りかける表現は妙にうまいとか、そういう特徴もあったりして。
もうひとつ、言い回しじゃなくて構造のほうにも癖がある気がしています。一曲の中に、無理矢理にでも起承転結をつけたがる。困難があって、途中で気づきがあって、最後は前を向く。そこまで毎回やらなくていいんだけど、放っておくと、だいたいそっちに寄っていく。
対策としてやっていることが、いくつかあります。
まず、書く役と直す役を分けました。歌詞を書くエージェントと、それを読んで直すエージェントが別にいて、差し戻しは直す側が出します。
それから、逆接の接続詞に回数の上限をつけた。禁止ではなく上限です。むしろ足りないと歌詞が閉じた独白になる、というのが元からのルールで、そこに上限のほうを足しました。「でも」「だけど」「のに」みたいな転回の言葉が各サビに一回まで。「それでも」という単語だけは、一曲に一回まで。
これ、最初から決めていたルールじゃないです。やたら頻出するAIの癖ワードみたいなものを探させてみたら、直近12曲で「それでも」が22回。サビの中での出現が半分。
困難があって、それでも進む。その同じ形が、全曲を貫通していたんですね。
数字を見るまで気づいていませんでした。なんとなく似てるな、読みづらいな、とは感じていたんですけど。それが何なのかは分かっていなかった。
あとは主に、直す側が見ているところ。
- 同じ型を続けて使わせない。サビの構文は直近5曲、Cメロの型は直近3曲、同じものを選ぶと減点される
- 比喩は「何を例えているのか」を歌詞の中の言葉で答えられるか。答えられないものは形を直しても直らないので、差し戻し推奨に上げる。最初に書いた、妙に余韻を残すやつを止めたいのはここ
- 書き言葉に戻っていないか。「〜ということ」「〜である」とか、「なぜなら」「つまり」で因果を説明し始めるやつ
- 意味でも語感でも立っていないサビは弾く。完成した文が少なくて、核になる言葉もなくて、接続詞も呼びかけも問いかけも出てこない。全部そろったら即差し戻し
ちなみにいま挙げた検査は、どれもAIに自分で見させています。NGワードを正規表現で弾くような門番は置いていない。ただ、門番ではない計測のスクリプトは別にあって、そっちは語彙のリストを機械的に数えるやつです。「それでも」22回に気づけたのはこっち側。手癖をAIに検査させているので、根本の解決になっているのかは分からない。上限を決めた「それでも」にしても、数えられる形をしていたから気づけただけかもしれません。
工程としては、歌詞が既存曲をなぞっていないかを見る「想起リスクQA」を挟むようにしています。出来上がった歌詞を別のところに渡して、既存の曲を思い出さないかを聞く。
渡すのは本文とタイトルだけです。どのペルソナが書いたかも、何を参照したかも渡さない。情報を与えると、そっちに引っ張られた答えが返ってくるので。
見ているのはタイトルやサビの近さ、特徴的な言葉の組み合わせ、フックの構造あたり。結果は通過・注意・不合格の三段階で返ってきて、注意ならその箇所を直してもう一度、不合格なら書き直しからやり直します。二回書き直してもだめなら、原因になっていそうな技法をスタイルカードの側で弱めて作り直す。それでもだめなら僕のところに上がってくることになっています。
ただ、照合するデータベースがあるわけではありません。モデルが知っているかどうかを聞いているだけなので、これで安全ですと言えるものではないです。ここはこれから育てるところ。
人間の歌詞のほうが、もっと曖昧だった
さっきのCメロの型に「何も言わない」というのがあって、説明が「言わないことが内容。書き込みすぎたら失敗」。サビのほうにも、答えを言い切らずに問いを残したまま終わる型があります。もともと既定だったのは、弱さを告白して本音に着地する型でした。
閉じない型を、こっちからわざわざ足していったわけです。
ペルソナを作る前段に、実在の作詞を分析して資料にする工程があります。その資料のフォーマットに「余白の設計」という必須の欄があって、その書き手が何を書かないか、何を言い切らないかを書くことになっている。欄の定義に、なんでそれが要るのかまで書いてありました。「LLMは説明過多になりやすいため重要」。作る側と調べる側で、同じところに着いていたっぽい。
分析の結果のほうも似ていました。答えを出さない疑問文のまま終わる、痛みが解決しないで残る、明るいのか苦いのか決まらないまま閉じる。そういうのが、分析した範囲では、別々の書き手から繰り返し出てくる。
人間ってもっと曖昧なんだな、と思いました。
うまく閉じないほうが人間らしい、というか。人間味って、たぶんこういうところなんですよね。
とはいえ全部をAIの癖のせいにはできなくて、こっち側で閉じさせているところもあります。タイトルがダサい、と文句を言ったらエージェントが条件を決めてきて、タイトルの意味は歌詞のどこかの行で必ず回収されること、というのが入りました。回収している行を指させないと差し戻しになる。閉じるなと言いながら、ここは閉じろと言っている。
検査の土台にある「歌詞らしさとは何か」も、けっこう機械的な言葉で書いてあります。文として完成している行がどれくらい並んでいるか、因果を説明してしまっていないか、意味で立たせるのか語感で立たせるのかが一曲の中で混ざっていないか。この辺は書き出すと長くなるので、また別で。
まだ何も出していない
ここまで書いておいてなんですが、曲も MV もまだ外に出してないですw
歌詞ができたら Suno に投げて、その先はキャラクターアニメーションとキネティックタイポグラフィで MV にする、というところまでは組んであります。80秒のベンチマークもできている。あとは出すだけです(その「あとは」が長いんですけどね)。
研究の成果がどんな感じかはこれから徐々に出していきたいので、まずは取り組みのお話でした。ここからちょっとの間、AI作曲に勤しんでいこうと思っています。
事務所化して一貫性が出たのかどうかまでは、自分ではまだ判定できていません。