3行でいうと
- 公式のGeminiアプリのヘルプは、プロンプトのコツを3つ挙げています。動詞(write、compose、create)で始める、ジャンルと必要なら楽器を書く、題材・動作・場面を書く、の3つです。
- Gemini APIのプロンプトガイドは、主なジャンルを先頭に書き、楽器、テンポ(BPM)、調、雰囲気、曲の構成(
[Intro] -> [Verse 1] -> [Chorus]のような書き方)を足していく書き方を示しています。 - Flow Musicでは、左の「New session」から始め、「Send」で曲を作り、「Songs」→「More」→「Remix」で「Extend」「Cover」「Replace」を選べます。
- APIのLyria 3.5は一度に作る形で、続けての編集(反復的な手直し)は、公式が「対応していない」と書いています。直したいときは、プロンプトを変えて作り直す形になります。
この記事は、公式の資料を2026年10月25日に読んでまとめたものです。この記事は、実際に使って確かめた記録ではありません。
手順は「公式の手順を順に並べたもの」です。プロンプトの例は「この記事の例」と書いたものが、この記事で組んだ例で、動作は確かめていません。画面の表記は更新で変わることがあるので、手元の画面と照らして読んでください。
先に結論
- 画面から試すなら、Geminiアプリで一文を書く所から。 「Upload & tools」→「Create music」→プロンプトを入力、が公式の手順です。
- 曲を何度も手直ししたいなら、公式のヘルプで手直しの手順があるのはFlow Musicです。 「Compose」「Remix」など。Geminiアプリのヘルプには、手直しの手順は読んだ範囲では見つかりませんでした。
- コードで使うなら、30秒のClipで試してから、
lyria-3.5で全曲にする。 公式のベストプラクティスに「Iterate with Clip first」とあります。 - 結果は毎回少し変わる。 公式は、同じプロンプトでも結果が変わりうると書いています。
前提:用語をそろえる
- プロンプト:作りたい曲を説明する文。
- BPM:1分あたりの拍数。テンポの指定に使う。
- セクションタグ:
[Verse][Chorus][Bridge]のように、曲の区間を示す目印。 - インストゥルメンタル:歌なし。公式はプロンプトで頼むと書いています。
- SynthID:Googleの電子透かし。公式は、Lyriaの出力に入ると書いています(07)。
- base64:音声のバイナリを文字にした形。APIの応答の
dataがこの形で、コードで元に戻して保存します。 - WebSocket:つなぎっぱなしで双方向にやりとりする通信方式。Lyria RealTimeが使います。
たとえ話:依頼メモの書き方
作曲家に渡す依頼メモにたとえると、「ジャンル、速さ、楽器、声、歌詞の話題」を書くほど返ってくる方向がそろいます。公式のガイドも、まず主なジャンルを先頭に書く、と示しています。楽器、質感、テンポ、調、雰囲気は足していく要素として挙げられていて、決まった順番はガイドに書かれていません。これは僕らのたとえです。
プロンプトの書き方(全場面で共通)
公式が示している要素
| 要素 | 公式の記載 | 出どころ |
|---|---|---|
| 書き出し | 動詞(write、compose、create)で始める | Gemini Appsヘルプ |
| ジャンル | 先頭に主なジャンルを書く。混ぜる、年代や地域をつけるのもよい | Lyria prompt guide |
| 楽器 | 指定したい楽器や変わった組み合わせは、はっきり書く。書かないと、ジャンルに合うものをLyriaが選ぶ。楽器どうしの絡み方を書くと雰囲気に効く | Lyria prompt guide |
| 題材・場面 | 題材、何をしているか、背景や場面を書く | Gemini Appsヘルプ |
| テンポ | BPMで書く(例:「120 BPM」「slow tempo around 72 BPM」) | Lyria prompt guide |
| 調 | 「in G major」「in D minor」など | Lyria prompt guide |
| 雰囲気 | Ambient、Dreamy、Melancholicなどの形容詞 | Lyria prompt guide |
| 構成(Lyria 3.5) | [Intro] -> [Verse 1] -> [Chorus] -> [Bridge] -> [Outro] のようなタグや矢印。盛り上がり、静かになる、止まる、などの変化も言葉で |
Lyria prompt guide |
| 時刻の指定 | 「12秒でビートが落ちる」「22秒でサビ」のような目安。APIのページには [0:00 - 0:10] の形で、その区間の楽器・声・雰囲気を書く方法もある |
Lyria prompt guide、Generate music with Lyria 3.5 |
| 歌詞 | Lyrics: の見出しの下に、[Verse] などのタグつきで書く。括弧は、バックコーラスやアドリブ |
Lyria prompt guide |
| 声 | 性別、音域、音色。公式ガイドには、Female Soprano、Female Alto、Male Tenor、Male Baritone、Weathered Rockerという声の例がある | Lyria prompt guide |
| 歌なし | 「instrumental」と書く。Lyria 3.5は、既定で歌詞つきの声が入る | Lyria prompt guide(既定で声が入る)、Vertex AIのブログ(「instrumental」と書く) |
| 言語 | プロンプトの言語に歌詞が従う | Generate music with Lyria 3.5 |
書き分けのコツ(公式のベストプラクティス)
- 楽器、BPM、調、雰囲気、構成を具体的に書く。
- 歌詞と、音楽の指示(ジャンルなど)は、分けて書く。
- 短いプロンプトも詳しいプロンプトも良い結果になる。楽器のタグと雰囲気のタグは分けて書くと、別々に調整できる(プロンプトガイドの記載)。
公式が止める依頼
- 特定のアーティストの声や、著作権のある歌詞を求める依頼は、セーフティフィルター(safety filters)でブロックされる(Gemini APIの記載)。
- Vidsのヘルプは、特定のアーティストやブランドへの言及を避けるよう書いています(センシティブな情報を入れないよう求める記載は、評価のフィードバックの欄にあります)。
- 詳しくは04を参照。
場面1:Geminiアプリで、短い曲を作る
公式のヘルプ「Generate music with Gemini Apps」の手順です(ウェブ。モバイルも同じ流れ)。
- gemini.google.com を開き、Googleアカウントで入ります(18歳以上、Keep Activityがオン)。
- テキストボックスの下の「Upload & tools」を押します。
- 「Create music」を選びます。
- (任意)画像や動画をアップロードします。
- プロンプトを入力します。
この記事の例(動作は確かめていません): 公式のコツに合わせて、動詞・ジャンル・楽器・題材・場面を入れた形です。
Compose a calm lo-fi hip-hop beat with soft piano and vinyl crackle for studying on a rainy evening. No vocals.
- 画面のドロップダウンで、長さ(short=約1分、full=約2〜3分)、ボーカルの有無、ジャンルを選べます。
- 結果を待ちます。生成の完了の見え方は、ヘルプに書かれていません。
返ってくるもの(公式の記載): 表紙の画像つきの動画ファイルとして届く、とヘルプにあります。
公式の例の題材(ヘルプ): ポッドキャストのイントロ、歴史の時代についての短い歌、ローファイ・ヒップホップのビート、自分の街についての歌、が挙がっています。
保存と共有:
- 曲の画像の右上の「Download」を押します。
- 「MP4」(表紙つきの動画)か「MP3」(音声のみ)を選びます。
- 共有するときは、右上の「Share」を押して、リンクをコピーします。
場面2:Geminiアプリで、フルの曲を作る
- 場面1の手順で「Create music」を選びます。
- モデルを「Pro」に切り替えます(ヘルプは「To create a full track, switch the model to Pro」という趣旨で書いています。切り替えの場所は、読んだ範囲では見つかりませんでした)。
- 長さを「full」(約2〜3分)にします。
- プロンプトを入力します。
この記事の例(動作は確かめていません): 構成を書く形です。構成のタグ([Intro] など)をGeminiアプリで使えるかは、Geminiアプリのヘルプには書かれていません。ここでは公式のAPIガイドの書き方に合わせた、この記事の案です。
Write an upbeat indie-pop song in G major at 122 BPM about a summer road trip. [Intro] -> [Verse 1] -> [Chorus] -> [Verse 2] -> [Chorus] -> [Outro]. Female vocals, acoustic guitar, handclaps.
場面3:Geminiアプリで、写真から曲を作る
- 「Upload & tools」→「Create music」を選びます。
- 画像(または動画)をアップロードします。
- 写真に合わせた指示を入れます。
この記事の例(動作は確かめていません):
Create a gentle acoustic song that matches the mood of this photo. Warm, nostalgic, with a slow tempo.
画像から作れること自体は、ヘルプと公式ブログ(02)にあります。
場面4:Flow Music で、最初の曲を作る
公式のヘルプ「Create & manage songs in Google Flow Music」の手順です。サインインは05のBを先にしてください。
- flowmusic.app にサインインします。
- 左の「New session」を選びます。
- プロンプトボックスに、作りたい曲を書きます。
この記事の例(動作は確かめていません):
Make a dreamy synth-pop song with female vocals about a late-night train ride. Slow tempo, warm pads.
- (任意)プロンプトボックスの下の「Add」を選び、次のどれかを足します。
- 「Recording」:マイクで録音する。
- 「Audio」:自分の音楽から作る。
- 「Image」:歌詞や表紙の絵のヒントにする。
- 「Send」を選びます。
- 結果が出たら、曲にカーソルを合わせて「Play」を選びます。
会話の相手: Flow Musicでは、ヘルプにProducer、Ghostwriter、Instrumentというモデルの選択が出てきます(05のB)。Producerとのチャットの操作は、この日に読んだヘルプには書かれていませんでした。設定は「Settings」→「Customize producer」(05のB)。
場面5:Flow Music で、曲を手直しする
同じヘルプの「Edit a song」と「Remix a song」です。
プロンプトで直す
- 左の「Songs」を選び、曲を選びます。
- プロンプトボックスに、直したい内容を書きます。
詳細を直す
- 曲の横の「More」→「Details」→「Edit details」を選びます。
- 曲名、表紙の絵、表示される歌詞を変えます。
- 「Save」を選びます。
Composeで作り直す
- 曲を選び、右上の「Compose」を選びます。
- 「Lyrics」「Sound」「Details」の下で内容を変えます。
- 「Generate」を選びます。
リミックス
- 左の「Songs」を選びます。
- 曲の横の「More」→「Remix」を選びます。
- 「Extend」「Cover」「Replace」のどれかを選びます。ヘルプは、それぞれの違いまでは説明していません。
- 変えたい音の区間を選びます。
- 変更の内容を書きます。
- 「Generate」を選びます。
場面6:Flow Music で、共有・書き出し・削除
共有(公開)
- 「Songs」で曲を選びます。
- 「Publish」で、公開の状態にします。
- リンクを渡すときは「Share」→「Copy link」。
- 範囲を決めるには「Published」を選び、「Anyone with the link」か「Only me」を選びます。
- ほかの人のリミックス、バイブ、ダウンロードを止めるには、「Allow community remix」をオフにします。
ダウンロード
- 1曲:曲の横の「More」→「Download」→ファイル形式を選びます。
- 複数:曲の横のチェックボックスを選び、右上の「Download」。ファイルは.zipで届きます。
どの形式があるか、ステムが出せるかは、このヘルプの要約には書かれていませんでした(料金ページには項目がある、と03にあります)。
削除
- 「Songs」を選びます。
- 曲のチェックボックスを選びます。
- 上の「Delete」を選びます。
プレイリストは、別のヘルプ「Organize songs with playlists in Google Flow Music」があります(この日は読んでいません)。
場面7:Vids で、動画のBGMを作る
05のCの手順に加えて、Vidsのヘルプには次の機能もあります。
- 「Recreate」で、前のプロンプトを再利用する。
- 曲のプレビューで「Good suggestion」「Bad suggestion」の評価ができる。悪い評価では、問題を選び、コメントを書いて「Submit」。
この記事の例(動作は確かめていません): ヘルプが求める、ジャンル・状況・トーンを入れた形です(アーティスト名・ブランド名は入れない)。
Upbeat corporate background music, bright acoustic guitar and light percussion, optimistic tone, no vocals.
場面8:Gemini APIで、30秒のClipを作る
準備は05のD(キー、環境変数、SDK)です。次のPythonは、公式の「Generate music with Lyria 3.5」の例をもとにしたものです(要約を通して読んだもの。コードの全文は公式ページで確認)。
import base64
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="lyria-3-clip-preview",
input="A short instrumental acoustic guitar piece.",
)
generated_audio = interaction.output_audio
if generated_audio:
with open("music.mp3", "wb") as f:
f.write(base64.b64decode(generated_audio.data))
lyrics = interaction.output_text
if lyrics:
print(f"Lyrics:\n{lyrics}")
- 上のコードをファイルに保存して実行します。
- 期待される結果:
music.mp3が書き出されます。output_textがあれば、歌詞と曲の構成がターミナルに出ます(公式は、レスポンスは歌詞と構成を常に含む、と書いています)。 - Clipは常に30秒、MP3です(公式の表)。
応答の読み方(公式の記載):
interaction.output_audio:最後に生成された音声のブロック。dataをbase64で戻して保存します。interaction.output_text:歌詞と曲の構成。- 応答は
stepsの並びで、model_outputのステップに、text(歌詞や構成のJSON)とaudio(base64)のブロックが入ります。 - 音声と文章が交互に出る場合、便利なプロパティでは一部が拾えないことがあるので、
interaction.stepsを順に見て、step.type == "model_output"のものについて、ブロックの種類(audioかtext)ごとに処理する、と書かれています。公式ページに5言語の完全な例があります。
場面9:Gemini APIで、全曲を作る・WAVにする・画像を渡す
全曲(公式の記載): モデルを lyria-3.5 にして、長い文章で指示します。公式の例の入力は、壮大な映画音楽風の曲で、ソロピアノのイントロから弦が重なり、大きな盛り上がりに至る、という内容です(原文は公式ページで確認)。長さはプロンプトで影響を受ける程度で、固定ではありません(公式の「Limitations」)。
WAVにする(公式の記載): 公式の音楽生成ページは、Lyria 3.5はMP3が既定で、response_format を設定するとWAVでも出力できる、と書いています。ただし、公式の例が示す値は {"type": "audio"} だけで、WAVを示す値は例に出てきません。Lyria 3.5のモデルページの出力欄は「Audio (MP3)」とだけあり、資料の間で書き方が分かれています。
interaction = client.interactions.create(
model="lyria-3.5",
input="A beautiful piano melody.",
response_format={"type": "audio"},
)
保存するファイル名を .wav にする点は、この記事の案です(公式の例は書き出しまで載せていません)。Clipが response_format に対応するかは、ページに書かれていません。
画像を渡す(公式の記載): 画像は最大10枚まで、テキストと一緒に渡せます。公式の例は、画像ファイルを読み、base64にして、input に {"type": "text", ...} と {"type": "image", "mime_type": "image/jpeg", "data": image_b64} のリストを渡す形です。コードの全文は公式ページで見て写してください。
場面10:Gemini APIで、歌詞・構成・時刻を指定する
公式のページにある指定の方法を、この記事で組み合わせた例です(動作は確かめていません。歌詞は自作の短い例)。
An upbeat pop song in C major at 120 BPM, female vocals, acoustic guitar and light drums.
[0:00 - 0:10] Soft intro, guitar only.
[0:10 - 0:30] Vocals enter, steady groove.
Lyrics:
[Verse]
Walking through the morning light
[Chorus]
Sing it out, we're alright
- 区間の時刻の形
[0:00 - 0:10]は、公式のページにある書き方です。 - 歌詞は
Lyrics:の下にタグつきで書く、は公式ガイドの書き方です。 - 公式のガイドは、歌詞と音楽の指示を分けて書くよう勧めています。
- 歌詞をAIに作らせたいときは、物語、感情、入れたい言葉を伝える、と書かれています。ダンス系では短い繰り返しのフレーズを頼む、ともあります。
- インストゥルメンタル: 「instrumental」と書き、調やテンポ、スタイルを足す(公式の例はClipモデル)。
日本語について: 公式の「Generate music with Lyria 3.5」は「プロンプトの言語に歌詞が従う」と書いています。日本語の歌詞の品質は、公式の資料では確認できていません。
場面11:Lyria RealTimeで、流し続ける演奏を作る
Lyria RealTimeは、WebSocketでつなぎっぱなしにして、音を流し続けるモデルです(models/lyria-realtime-exp、公式は実験的と書く)。楽器だけです。次は、公式のPythonの例(要約を通して読んだもの)をもとに、この記事で字下げを整えたものです。字下げや記号が崩れている可能性があるので、写すときは公式ページの全文を見てください。
import asyncio
from google import genai
from google.genai import types
client = genai.Client(http_options={'api_version': 'v1beta'})
async def main():
async def receive_audio(session):
"""Example background task to process incoming audio."""
while True:
async for message in session.receive():
audio_data = message.server_content.audio_chunks[0].data
# Process audio...
await asyncio.sleep(10**-12)
async with (
client.aio.live.music.connect(model='models/lyria-realtime-exp') as session,
asyncio.TaskGroup() as tg,
):
# Set up task to receive server messages.
tg.create_task(receive_audio(session))
# Send initial prompts and config
await session.set_weighted_prompts(
prompts=[
types.WeightedPrompt(text='minimal techno', weight=1.0),
]
)
await session.set_music_generation_config(
config=types.LiveMusicGenerationConfig(bpm=90, temperature=1.0)
)
# Start streaming music
await session.play()
if __name__ == "__main__":
asyncio.run(main())
- 操作:
session.play()、session.pause()、session.stop()、session.reset_context()。 - 出力:生の16ビットPCM、48 kHz、ステレオ(公式の記載)。同じページのJavaScriptの例は
sampleRateHz: 44100と書いていて、48 kHzの記載と食い違います。どちらが正しいかは、公式で確認してください。音声を鳴らす・保存する処理は、例では# Process audio...の所に自分で書く形です。 - 設定項目(公式の一覧):
| 項目 | 範囲・既定 | 公式の注記 |
|---|---|---|
guidance |
0.0〜6.0、既定4.0 | 高いほどプロンプトに沿うが、切り替わりが急になる |
bpm |
60〜200 | 反映には、stop/playかコンテキストのリセットが要る |
density |
0.0〜1.0 | 低いとまばら、高いと密 |
brightness |
0.0〜1.0 | 高いと高い音域が目立つ |
scale |
Scale の列挙 |
反映には、stop/playかリセットが要る |
mute_bass / mute_drums / only_bass_and_drums |
既定はFalse | |
music_generation_mode |
QUALITY(既定)/ DIVERSITY / VOCALIZATION |
|
temperature |
0.0〜3.0、既定1.1 | |
top_k |
1〜1000、既定40 | |
seed |
0〜2,147,483,647、既定はランダム |
bpm、density、brightness、scaleを指定しないと、最初のプロンプトからモデルが決めます。- 設定を更新するときは、全体を送る必要があります。省いた項目は既定に戻る、と書かれています。
- 重みつきプロンプト:
WeightedPrompt(text=..., weight=...)。重みを変えていくと、曲調が移り変わります(プロンプトガイドの記載)。 - 止められたプロンプトは無視され、理由は
filtered_promptに入ります。 - ブラウザで試すなら、AI Studioの「Prompt DJ」と「MIDI DJ」(05のE)。
場面12:AI Studioの音楽ワークスペースで作る
05のEの手順で開き、次のように進めます(公式ブログ、2026年3月25日付の記載)。
- 「Text mode」:テンポや調を含めて、自然な言葉で説明を書く。
- 「Composer mode」:区間ごとに、タイミング・強さ・説明を決める。各区間に別々の強さと説明をつける。
- 曲の進行をプロンプトに書くと、歌詞が始まる・終わる時刻をコントロールできる、とブログのコツにあります。
- 雰囲気は、言葉の代わりに画像で伝えることもできる、と書かれています。
最初の1時間でやる順番(この記事の案)
公式の資料にある手順を、軽い順に並べた案です。公式が示した順番ではありません。
| 順 | やること | 目安 | 参照 |
|---|---|---|---|
| 1 | Geminiアプリで、短い曲を1つ作り、MP3で保存する | 場面1 | 05のA |
| 2 | 同じ話題で、ジャンルと楽器を変えて作り直し、違いを聞き比べる | 場面1 | |
| 3 | モデルを「Pro」に切り替えて、フルの曲を作る | 場面2 | |
| 4 | Flow Musicにサインインし、「New session」で1曲作る | 場面4 | 05のB |
| 5 | 作った曲を「Compose」か「Remix」で直す | 場面5 | |
| 6 | 作った曲の音声ファイルをGeminiに渡して、Google AIで作られたかを聞く | 07 | |
| 7 | コードを使うなら、APIキーを作り、Clipを1回呼ぶ | 場面8 | 05のD |
つまずきと直し方
| 症状 | 公式の記載に基づく確認点 |
|---|---|
| 同じプロンプトで結果が違う | 公式は、結果が変わりうると書いています。プロンプトの具体性(楽器、BPM、調、構成)を増やす |
| 歌が入ってしまう/入らない | Lyria 3.5は既定で声が入る。「instrumental」と書く。声を入れたいときは、性別・音域・音色を書く |
| 構成が思い通りにならない | [Intro] -> [Verse 1] -> [Chorus] のタグ、時刻の指定、エネルギーの変化を言葉で足す(Lyria 3.5) |
| APIで続けて直せない | Lyria 3.5の現行版は続けての編集に対応しない、と公式にあります。プロンプトを直して作り直す |
| ブロックされた | アーティスト名の声、著作権のある歌詞、ブランド名などを外す |
| 曲の長さが決まらない | APIでは、長さはプロンプトの影響です。資料により「最大3分」「30秒」「約2〜3分」と書き方が分かれます。公式の最新を確認 |
| Vidsで音が出ない | スピーカーのミュート、Vidsのタイムラインのオブジェクトトラックのミュートを確認 |
| 回数の上限 | Geminiアプリは通知が出る。上限が更新されるのを待つか、契約を変える(ヘルプの記載) |
気をつけること
- 続けての編集は入口ごとに違います。 Flow Musicのヘルプに手直しの手順があり、Gemini API(Lyria 3.5)は続けての編集に未対応、と公式にあります。
- 日本語のプロンプトと歌詞。 公式の資料で、日本語の歌の品質や発音を確認できていません。この記事の例のプロンプトは英語で組みました。
- この記事の例のプロンプトとコード。 公式の書き方に合わせて組んだ案で、動かして確かめたものではありません。結果は、毎回変わる前提で試してください。
- 著作権と利用規約。 作った曲の権利や商用利用の扱いは、この記事では扱いません。04と、公式の規約を読んでください。この記事は法律の助言ではありません。
- 透かし。 公式のGemini APIの音楽生成ページとSynthIDのページは、Lyriaの音声にSynthIDの透かしが入ると書いています。Google Cloudのブログは、Lyria 3とLyria 3 Proの出力にSynthIDが埋め込まれると書いています(2026-10-25確認)。Lyria RealTimeのページは透かしが入ると書き、SynthIDの名前は出していません。公式のSynthIDのページには、検出の精度や誤検出率の記載はない、と読んだ要約にありました。
- ページ内の指示文。 取得したページに、AIへの指示と読める文は見つかりませんでした。
出典
- Generate music with Lyria 3.5(Gemini API、Google AI for Developers、確認日 2026-10-25)
- Lyria prompt guide(Gemini API、Google AI for Developers、確認日 2026-10-25)
- Lyria RealTime(Gemini API、Google AI for Developers、確認日 2026-10-25)
- How developers can use Lyria 3 for AI music generation(Google、2026-03-25、確認日 2026-10-25)
- Generate music with Gemini Apps(Gemini Apps Help、確認日 2026-10-25)
- Get started with Google Flow Music(Google Flow Help、確認日 2026-10-25)
- Create & manage songs in Google Flow Music(Google Flow Help、確認日 2026-10-25)
- Generate music with AI in Google Vids(Google Docs Editors Help、確認日 2026-10-25)
- Lyria 3 and Lyria 3 Pro on Vertex AI(Google Cloud、2026-04-07、確認日 2026-10-25)
- SynthID(Google DeepMind、確認日 2026-10-25)