BACHが生のトークンをどのように構造化された音楽へと変換するか——ステップごとにご覧ください。
BACH: 小節単位AI作曲支援ツール
> "Score to Performanceによる: 小節単位で人間が制御可能な効率的な長尺楽曲生成と記号譜表現" > ICASSP 2026 採択済み – Accepted
🎼 一文要約
BACHは初の人間編集可能な小節単位の記号楽曲生成器です: LLMで歌詞作成 → TransformerでABC記譜出力 → 既存レンダラーで数分級・Sunoレベルの音楽生成。 10億パラメータ、分単位の推論、SOTAオープンソース。📦 このリポジトリの内容(プレビュー版)
| パス | 説明 | |------|------| |README.md | このファイル |
| code/ | 推論コード |
| example.mp3 | 楽曲例 |
| fig/ | アーキテクチャ図 |🏗️ モデルアーキテクチャ(概要)
ユーザープロンプト Qwen3 — 歌詞 & スタイルタグ BACH-1B Decoder-Only Transformer ABC記譜(Dual-NTP + Chain-of-Score)
ABC → MIDI → FluidSynth + VOCALOID ステレオミックス
| コンポーネント | キーアイデア |
|---------------|--------------|
| Dual-NTP | 毎ステップごとに {vocal_patch, accomp_patch} を共同で予測 |
| Chain-of-Score | 長い一貫性のためのセクションタグ [START:Chorus] ... [END:Chorus] |
| Bar-stream patch | 各小節ごとに16文字の非重複パッチ |
🧪 クイックスタート(CPUフレンドリー)
# 1. Clone
git clone https://github.com/your-github/BACH.git
cd BACH2. Install
pip install -r requirements.txt # transformers>=4.41 mido abcpy fluidsynth3. Generate ABC
python bach/generate.py \
--prompt "A rainy-day lo-fi hip-hop song about missing the last train" \
--out_abc demo/rainy_lofi.abc4. Render audio
🎧 今すぐ聴く
example.mp3 が準備できています。これは一曲全体です。Sunoと比較してみてください🙂関連論文の受理後に完全公開
- 完全なトレーニングセット(ABC + 歌詞 + 構造ラベル)
- BACH-1B 重み(トランスフォーマーフォーマット)
- トレーニングスクリプト(多段階 + マルチタスク + ICL)
- 完全なコード
📎 引用
論文はArxivで公開されています、@misc{wang2025scoreperformanceefficienthumancontrollable,
title={スコアを通じてパフォーマンスへ:小節単位の記譜による効率的で人間制御可能な長編曲生成},
author={王彤曦 and 于洋 and 王清 and 錢俊朗},
year={2025},
eprint={2508.01394},
archivePrefix={arXiv},
primaryClass={cs.SD},
url={https://arxiv.org/abs/2508.01394},
}
---
Tranlated By Open Ai Tx | Last indexed: 2026-03-08
---