Web Analytics

BACH

⭐ 161 stars Simplified Chinese by WtxwNs

🌐 语言



观看 BACH 如何将原始令牌一步步转化为结构化音乐。

BACH:小节级 AI 作曲助手

arXiv License Repo Size Stars

> “从乐谱到演奏:通过小节级符号记谱实现高效的人类可控长乐曲生成” > ICASSP 2026 投稿 – 已接收


🎼 一句话摘要

BACH 是首个可人类编辑小节级的符号歌曲生成器: LLM写歌词 → Transformer生成ABC乐谱 → 通用渲染器输出分钟级、Suno水准音乐。 10亿参数分钟级推理,SOTA开源


📦 本仓库包含内容(预览版)

| 路径 | 描述 | |------|------| | README.md | 本文件 | | code/ | 推理代码 | | example.mp3 | 示例歌曲 | | fig/ | 架构图 |


🏗️ 模型架构(快速一览)

用户提示 Qwen3 — 歌词与风格标签 BACH-1B 仅解码型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 BACH

2. Install

pip install -r requirements.txt # transformers>=4.41 mido abcpy fluidsynth

3. 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.abc

4. Render audio

🎧 立即收听

example.mp3 已为您准备好,这是一整首歌。您可以将其与 Suno🙂 进行比较

相关文章接受后完整发布

📎 引用

论文已发布在 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 ---