OsuGAI 的运作方式
OsuGAI 把歌曲转成 osu! standard 谱面包 (mapset),在游戏区域中安排打击圈、滑条与转盘。系统先规划整首歌,再生成节奏、配置对象并检查结果。本页介绍 2026 年 10 月 30 日发布的 v3.0。
本页内容
v3.0 测量摘要
- 训练谱面
- 157,209
- 模型参数
- ~77M
- 训练运算量
- ~78 GPU·h
- 校准测试的平均星数误差
- 0.28★
- 有效性测试通过谱面
- 36 / 36
- Flower Dance・6 个难度・T4
- 79 s
星数测试使用 3 首歌、4 个目标,每个目标使用一个种子;其中 2 首歌曾用于训练。独立的有效性测试使用 3 个种子。这些是小样本测试,不代表所有歌曲的品质。
理解音乐
Beat This 侦测拍点与小节首拍,再由我们的 timing 网格拟合方法换算成 BPM 与 offset,也支持变速歌曲。MERT-v1-95M 提供逐拍对齐的音乐特征。训练谱面也使用同类网格。系统会侦测安静的前奏、尾奏与淡出,让没有声音的段落保持空白。
规划整首歌
约 5.9M参数的高斯扩散规划器,在放置对象前先逐段描述整首歌。它依照音乐与要求的设置,同时规划难度、风格与休息段,因此副歌可以更密集,安静的间奏则能留白。
节奏与对象
主模型生成按下与松开、对象类型、滑条折返、新 combo、休息段与滑条速度。它是 MaskGIT 类型的非自回归 Transformer:通过数轮修整生成整张谱,而非只由左至右书写。节奏先生成并清理,再加入对象细节与速度。
位置与几何
节奏与位置共用一个约 71M参数的网络,重用对音乐的理解。约束求解器让对象留在游戏区域内、依所需长度拟合滑条曲线,并写入速度变化。无法正确组成的难度会回报失败,而非输出坏档;24,000 次压力测试中没有触发这条失败路径。
可以控制什么
可选 ★1 至 ★10 目标,各难度分开设置。9 个风格控制涵盖滑条、角度、间距、节奏、aim 与 speed 等特性;谱面设置包含 CS、AR、OD、HP 与滑条速度。模型会读取 CS、AR、OD 与速度;HP 写入文件。所选难度会一起生成为同一个 mapset。
你选的是目标星数;下载的谱面会标示实际测得的难度。
下载前的检查
系统会清理近到无法游玩的连续按键与过短的长按,移除静音中的对象,并检查几何。最后使用 osu! 的算法测量星数,以实测值命名难度。测试也会用 osu!lazer 解析谱面。同一歌曲、设置与种子的 10 次重复生成,产生逐字节相同的 .osu 档。
训练数据
数据共 157,209 张谱面:132,032 张 ranked、approved 或 loved 谱面,加上 ranked 区域以外的 25,177 张高星补充谱。基础数据约有 56M个对象。高星选集排除 gimmick 谱、AI 生成谱,以及与验证或测试歌曲相同的数据。同一歌曲的所有难度与音频版本放在同一数据分割。另保留 200 首于 2026 年 ranked 的歌曲作盲测,不参与训练。
训练方式
规划器与主网络都从零训练。主网络约训练 103 万步,先使用 ranked 数据,再混入高星谱,最后以星数平衡抽样。规划器训练 60,000 步。全部使用一张 RTX 4070 Ti SUPER:主网络约 68 GPU 小时,规划器约 10 GPU 小时。检查点依实际生成的谱面挑选,不只看验证损失。
我们测量了什么
下表校准测试的平均绝对误差为 0.28 星。这只是小样本校准检查,无法证明对未见歌曲的表现,也未测试 ★9–★10。另一组使用 3 首歌、4 个目标、3 个种子的测试,36 张谱面全部有效。最终评估中,清理进程移除了原始模型每 1,000 个对象约 3.9 个节奏问题。
| ★ | Flower Dance | River Flows in You | FREEDOM DiVE |
|---|---|---|---|
| 2 | 1.92 | 1.89 | 2.38 |
| 4 | 3.63 | 3.90 | 4.61 |
| 6 | 5.49 | 5.53 | 6.02 |
| 8 | 8.27 | 8.10 | 8.38 |
在 24 张谱面的测试中,休息段规划找回了 50% 的人类休息段,涵盖 35% 的人类休息时间。约 60% 的生成休息段与人类谱相符。给定正确规划时,网络在 24 张中的 23 张放出了正确数量。这组测量使用正式发布的规划器与较早的主网络,并非完整发布系统的评估。
从制作到可游玩的谱面
浏览器先解码并范式音频,再上传。服务只为每首歌提取一次 timing 与音乐特征,规划所选难度后,在同一次 GPU 批量中生成。经过清理、星数测量与封装,输出附歌曲和背景的 .osz。以下是 Flower Dance 在正式服务 NVIDIA T4 上的测量例子,不是等待时间保证。
| 请求 | 时间 |
|---|---|
| 1 个难度 | 21–32 s |
| 3 个难度 | 42 s |
| 4 个难度 | 54 s |
| 6 个难度・自动分布 | 79 s |
| 9 个难度 | 116 s |
v3.0 改了什么
v2.0 使用分开的节奏与位置模型。v3.0 改为共用网络,训练数据从 10,428 张增至 157,209 张,加入休息段规划、可变滑条速度,以及每个难度的风格与谱面设置。Flower Dance 的 T4 纪录为 v2.0 的 4 个难度 72 秒、v3.0 的 6 个难度 79 秒;工作量不同,不能当成速度倍率。
已知限制
- 小样本校准中,★4–★6 偏低,★8 略高;该测试未评估 ★9–★10。
- 约一半的人类休息段仍被漏掉,有些生成的休息段位置也不适合。
- 部分歌曲转盘偏多,尤其低星谱;滑条形状仍刻意保持简单。
- 长而快的歌曲可能因细微 timing 误差累积而在后段漂移。
- 新 combo 使用固定规则;没有自订 hitsound、kiai 段落或 storyboard。
- 结构有效不代表好玩或设计良好。生成谱供游玩与练习使用,不适用于 ranked 区域。
接下来的工作
改善休息段位置、全星数范围的校准、滑条形状与生成速度。v3.0 的盲测与滑条自相交测量尚未公开。TaikoGAI 与 CatchGAI 仍是未来产品。