Amazon Bedrockに歌詞を作成してほしかった

NTTテクノクロスの飯塚です。
[NTTテクノクロスアドベントカレンダー6日目](https://qiita.com/advent-calendar/2024/ntt-tx)の記事となります。

個人的には日常生活の中であまり生成AIを使いたくなる機会が多くないのですが、一方でITエンジニアの端くれである以上「使ってみたい！」欲があります。

ライブハウスに行くことがあるのですが、周りの知らない人の会話をよく聞いています！（怖い）
おそらく学生バンドのメンバーでライブに来ている集団がいて、こんな会話を耳にしました。
「最近歌詞をChatGPTに任せていて～」
「何回か聞けば良さげな歌詞を出してくれるんだよね～」

AIに作詞を任せたいニーズがある！

「作詞はAIに任せるべきではない！」という論争は、話が長くなりそうなので本記事では割愛します。（この論争に興味がある方はきっと趣味が合いますので連絡お待ちしてます笑）
導入はこの辺にしておいて、本記事ではAmazon Bedrockに作詞をお願いしてみる記事となります。

# Amazon Bedrockとは
https://aws.amazon.com/jp/bedrock/

Amazonが提供している生成AIサービスです。

# Bedrockで作詞
Bedrockに聞いてみました。

![20241121_Bedrock_001.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3761509/25231c45-1c7c-17da-bedf-3bbbeac95aab.png)

ふむふむなるほど、
基盤モデル選択：Bedrockプレイグラウンド「比較モード」を使ってみよう！
プロンプトエンジニアリング：使ってみたいけど具体的な方法が分からない
パラメータ調整：使ってみたいけど具体的な方法が分からない
ファインチューニング：やってみたいけど今回は割愛
RAG：やってみたいけど今回は割愛
バッチ処理：使ってみたいけど具体的な方法が分からない

プロンプトエンジニアリング、パラメータ調整、バッチ処理を追加で質問してみました。

![20241121_Bedrock_002.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3761509/f5679081-f275-ffd0-f807-e0bd1c4570ac.png)

このまま試して問題なさそうな手順を教えてくれました！
プロンプト入力欄に指示を入力して、

![20241121_Bedrock_003.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3761509/48bb158e-acfc-4cdf-732e-36518b7ecbf5.png)

パラメータを調整して、

![20241121_Bedrock_004.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3761509/8f0d1d82-bd5e-9209-bf28-9f53ab56ec07.png)

複数回実行！3回試してみました。

<details><summary>1回目</summary>

```
はい、承知しました。以下の条件に基づいて歌詞を作成いたしました。

タイトル: 「春風の中で」

[1番]
桜並木 歩く二人
心躍る 春の陽気
まぶしすぎる 君の笑顔
胸の鼓動 止まらない

[サビ]
春風が運ぶ 甘い香り
君との距離 近づいてく
初めての この気持ち
恋の予感 包まれて

[2番]
新しい 制服着て
踏み出す未来 期待と不安
君と一緒なら 怖くない
春の空 高く広がる

[サビ]
春風が運ぶ 甘い香り
君との距離 近づいてく
初めての この気持ち
恋の予感 包まれて

[アウトロ]
春の日差し 君と僕を
そっと包む 永遠の今
この瞬間 忘れない
初恋の 思い出に

この歌詞は、ポップスのジャンルで初恋をテーマにしています。また、桜や春風などの表現を使用して春の季節感を取り入れました。2番と繰り返しのサビ構成で、若々しさと爽やかさを表現しています。
```

</details>

<details><summary>2回目</summary>

```
はい、承知しました。それでは、指定された条件に基づいて歌詞を作成いたします。

タイトル: 「桜色の初恋」

[1番]
春風が頬をなでる 
桜並木を歩いてく
ふわりと舞う花びらが
この胸の高鳴りを知る

君の笑顔見つけたら
言葉がつまる不思議さ
まだ名前も知らないのに
心は君を覚えてる

[サビ]
春の日差しのように
君は僕を照らす
初めての この気持ち
桜色に染まってく

[2番]
教室の窓辺に立ち
遠くを見つめる君を
そっと見つめていたんだ
春の陽気に誘われて

勇気を出して声をかけ
交わした言葉のぬくもり
まだ幼い恋心が
春の風に乗って舞う

[サビ]
春の日差しのように
君は僕を照らす
初めての この気持ち
桜色に染まってく

[アウトロ]
桜色の初恋
心に刻むよ
この春の思い出を

この歌詞は、春の季節感を取り入れながら、初恋のテーマを表現しています。桜や春風などの春の要素を使いつつ、初めての恋心の高揚感や不思議さを描写しています。2番構成で、繰り返しのサビを入れることで、ポップスの一般的な構造に沿っています。
```

</details>

<details><summary>3回目</summary>

```
はい、承知しました。以下に、ご指定の条件に基づいた歌詞を作成いたしました。

タイトル: 「春風の中で」

[1番]
桜並木 歩く二人
はにかむ笑顔 心躍る
まだ言えない この気持ち
春の風が 背中押す

[サビ]
君と見つけた この世界
まぶしすぎて 目を閉じても
瞼の裏に 咲く花びら
初めての恋 春風の中で

[2番]
教室の窓 開けたなら
新しい風 吹き込んで
ドキドキする 君の横顔
春の陽射し 優しく照らす

[サビ]
君と見つけた この世界
まぶしすぎて 目を閉じても
瞼の裏に 咲く花びら
初めての恋 春風の中で

[アウトロ]
春風に乗せて 届けたい
この想い 君だけに

この歌詞は、春の季節感を取り入れながら、初恋のテーマを表現しています。桜や春風、新しい季節の始まりを感じさせる表現を使いつつ、初恋特有のドキドキ感や甘酸っぱさを描写しています。2番構成で、繰り返しのサビを入れることで、ポップスらしい親しみやすい構造になっています。
```

</details>

# 感想

## 作成された歌詞の感想
- 全体的に春すぎる
    - 直接的な春が多すぎて、もっと「この歌詞から3月くらいかな」みたいな歌詞の方がおしゃれで良い歌詞だと思います。
- 当たり障りないフレーズ
    - 尖った言葉は全く見当たらず、この歌詞を覚えることは大変苦行かと。

## Bedrockで作詞してみた感想
- プレイグラウンドで手軽に色々なモデルを試せるのは良いと思いました！今回はClaudeでしたが、他モデルとの比較もしてみたいと思いました。
- さらに求めている歌詞を作成するために、プロンプトを工夫するべきだと思いました。
- よく「あのバンドのこの曲っぽい方向性で～」みたいな作曲コメントを見るので、今回割愛したファインチューニングやRAGで精度向上を見込めるのではと思ったので後日試していきたいです。
- 今後Bedrockの新機能が続々出てきて、1年後にはもっと簡単に高精度の作詞が出来ているかもしれないので、日々アップデート情報をキャッチしていきたいと思います！


# 最後に
[NTTテクノクロス](https://www.ntt-tx.co.jp/products/aws/)では、クラウドや生成AI関連の支援を行っておりますので是非お気軽にご連絡ください！