了解。
ここでは 先ほど抽出した「チャイコフスキー:ピアノ協奏曲第1番 第1楽章の構造 JSON」 をそのまま AI に渡して “新しい第1楽章” を生成するための完成プロンプト を作るよ。
あなたの 構造OS(構造 → 主題 → 音) に完全準拠した、実戦で使えるプロンプトだ。
🎼 新しいピアノ協奏曲第1楽章を生成するためのプロンプト(完成版)
以下をそのまま AI に渡せば、
チャイコフスキーの構造を模倣した “新しい第1楽章” が生成される。
🎹 プロンプト(構造OS 仕様)
あなたは作曲家AIです。
以下の JSON は「チャイコフスキー:ピアノ協奏曲第1番 第1楽章」の構造抽出です。
この構造を模倣しつつ、新しいオリジナルのピアノ協奏曲第1楽章を作ってください。
【重要な生成方針】
- 構造(序奏 → 提示部 → 展開部 → 再現部 → コーダ)は維持する
- 調性の流れ(短調 → 長調)は踏襲する
- 主題A/Bの役割と性格は模倣するが、旋律は完全に新しくする
- 序奏テーマは本編に再登場させない(チャイコフスキーの特徴)
- ピアノはロマン派的に華やかで、オーケストラと対話する
- 出力は MusicXML または Base64 MIDI とする
【構造JSON】
(ここに前回の構造抽出JSONをそのまま貼る)
【主題生成】
- 主題A:短調、推進力、リズムの強さ
- 主題B:長調、歌うような広い旋律
- 序奏テーマ:壮大、広い和音、アルペジオ
【出力形式】
以下の形式で返してください:
{
"movement": 1,
"themes": {
"intro": "ABC または MusicXML",
"A": "ABC または MusicXML",
"B": "ABC または MusicXML"
},
"musicxml": "<score-partwise> ... </score-partwise>"
}
🎻 このプロンプトが強い理由
✔ チャイコフスキーの「構造的特徴」を AI に明示
- 序奏テーマが再登場しない
- 主題Bが長調で歌う
- 展開部は技巧中心
- 再現部で主題Bが勝利の長調に変わる
✔ あなたの OS(構造 → 主題 → 音)に完全一致
- JSON で構造
- ABC/MusicXML で主題
- 最終出力は MusicXML/MIDI
✔ そのままアプリに組み込める
Python で Base64 MIDI をデコードすれば即再生できる。
🎧 さらに強化したい場合
次のどれでも作れるよ:
- 🎼 主題A/Bの “抽象化された旋律テンプレート” を追加したプロンプト
- 🎻 第2楽章・第3楽章も含めた「協奏曲全体生成プロンプト」
- 🎧 MusicXML → MIDI → 音声 変換の Python 雛型
- 🧩 Roblox や WebAudio に組み込むための JSON → 音生成パイプライン
どれを続けたい?
了解。
ここでは 「主題を自分で作って AI に与える」ための、完成度の高い“構造OS対応プロンプト” を作るよ。
あなたが作った主題A/Bをそのまま差し込めるように、入力枠を明確にしたテンプレートにしてある。
🎼 主題を自分で作って与えるための生成プロンプト(完成版)
以下のプロンプトは、あなたが 自作した主題A/B(ABC または MusicXML) を AI に渡し、
チャイコフスキー構造で新しいピアノ協奏曲第1楽章を生成させるための OS 仕様プロンプト。
🎹 プロンプト(主題A/Bを自分で入力する版)
あなたは作曲家AIです。
以下の JSON は「チャイコフスキー:ピアノ協奏曲第1番 第1楽章」の構造抽出です。
この構造を模倣しつつ、私が与える主題A/Bを使って、新しいオリジナルのピアノ協奏曲第1楽章を作ってください。
【重要な生成方針】
- 構造(序奏 → 提示部 → 展開部 → 再現部 → コーダ)は維持する
- 調性の流れ(短調 → 長調)は踏襲する
- 主題A/Bの役割と性格は構造JSONに従う
- 旋律は私が与える主題A/Bを中心に展開する
- 序奏テーマは本編に再登場させない
- ピアノはロマン派的に華やかで、オーケストラと対話する
- 出力は MusicXML または Base64 MIDI とする
【構造JSON】
(ここに構造抽出JSONを貼る)
【私が作った主題】
以下に主題A/Bを与えます。これを提示部・展開部・再現部で使用してください。
■ 主題A(短調・推進力)
形式:ABC または MusicXML
---
A_THEME_START
(ここにあなたが作った主題Aを貼る)
A_THEME_END
---
■ 主題B(長調・歌う)
形式:ABC または MusicXML
---
B_THEME_START
(ここにあなたが作った主題Bを貼る)
B_THEME_END
---
【序奏テーマについて】
- 序奏テーマはAIが新規に作ってよい
- ただし本編には再登場させない(チャイコフスキーの特徴)
【出力形式】
以下の形式で返してください:
{
"movement": 1,
"themes": {
"intro": "ABC または MusicXML",
"A": "(私が与えた主題Aを使用)",
"B": "(私が与えた主題Bを使用)"
},
"musicxml": "<score-partwise> ... </score-partwise>"
}
🎻 このプロンプトの強み
✔ あなたの主題を“核”として AI が展開する
AI が勝手に主題を変えず、
あなたの主題を中心に展開部・再現部を構築する。
✔ チャイコフスキー構造を維持
- 序奏テーマは再登場しない
- 主題Aは短調で推進力
- 主題Bは長調で歌う
- 再現部で主題Bが勝利の長調に変わる
✔ あなたの構造OSに完全準拠
- JSON:構造
- ABC/MusicXML:主題
- MusicXML/MIDI:音
🎧 次のステップも作れるよ
- 🎼 あなたが作った主題A/Bを“自動で抽象化”して AI に渡すテンプレート
- 🎻 主題A/Bをもとに展開部だけを生成するプロンプト
- 🎧 MusicXML → MIDI → 音声の変換パイプライン(Python)
- 🧩 Roblox で協奏曲を鳴らすための Sound 分割テンプレート
どれを進めたい?