恒美微站
首页
关于我们
建站服务
主题模板
案例展示
资讯中心
联系我们
从嘴搓清唱到女团嗓AI翻唱:完整制作流程拆解
首页
资讯中心
/
从嘴搓清唱到女团嗓AI翻唱:完整制作流程拆解
从嘴搓清唱到女团嗓AI翻唱:完整制作流程拆解
发布时间:2026/9/1 5:10:14
很多人第一次看到“嘴搓 AI 翻唱”这类标题会觉得它只是个娱乐向的玩梗随便哼两句AI 帮你把人声变成某个女团嗓再配上 RB 伴奏一首“姐姐真漂亮”的翻唱就出来了。但如果你真正动手做一次就会很快发现这件事的难点根本不在“AI”这三个字母而在“嘴搓”这两个字。一个普通人用手机录制的清唱音准可能偏、气息可能断、节奏可能飘底噪和混响也不干净。把这些素材直接丢给音色转换模型得到的结果大概率不是“女团嗓”而是“电音幽灵”。所以我想先把一个判断放在前面想做出一首听感自然的 AI 翻唱尤其是类似“女团嗓翻唱 RB 版”这种强人声表现力的作品你面对的其实是一条完整的音频工程流水线而不是一键生成的魔法。它至少包含数据集准备、模型训练、清唱录音预处理、歌声转换、伴奏对齐、混音后期六个环节。任何一个环节失控最终成品都会露馅。这篇文章会从零开始拆解这条链路。我会先讲清楚 AI 歌声合成和歌声转换两条技术路线的区别再给出环境准备、数据集处理、模型训练与推理的具体流程最后演示如何把一段“嘴搓清唱”变成可发布的翻唱成品并附上常见问题和工程建议。如果你正准备入坑 AI 翻唱、音色克隆或者只是好奇这类作品的制作原理这篇文章可以帮你避开大部分弯路。1. 为什么“嘴搓”翻唱值得认真讨论你可能觉得AI 翻唱不就是去网上找一个音色模型然后把歌丢进去转换吗这种用法确实存在很多公开模型也的确能做到“输入干声、输出去伴奏翻唱”。但如果你是想要一个专属音色比如“我自己的女团嗓”或者想让翻唱风格从原版变成明显的 RB 版那问题就复杂得多。第一个难点是数据。音色转换模型需要目标音色的高质量干声数据来训练。一个普通人如果此前没有录制过大量清唱素材能拿出来的往往只有手机录音、直播片段或者聊天语音这些素材的混响、底噪、频率分布差异极大。数据质量不高模型就学不到稳定的音色特征推理时很容易出现“时而是 A 的声音、时而是 B 的声音”的拼接感。第二个难点是输入。所谓“嘴搓”通常是指你对着麦克风哼出自己想要的旋律和歌词。这里最致命的问题不是音色而是音准和节奏不稳。音色转换模型在多数情况下会保留源音频的旋律和节奏也就是说它只负责把“你的嗓音质感”换成“目标嗓的质感”并不会帮你修正走音。输入已经跑调输出一定会更跑调因为模型在转换过程中还会加入目标音色的频谱细节反而放大了原有瑕疵。第三个难点是混音。就算模型输出的人声已经很接近目标音色一段裸人声和一首伴奏放在一起仍然需要做音量匹配、动态平衡、EQ 和混响处理。很多新手会把“AI 翻唱效果怪”归结为模型不行实际上问题是混音阶段没有任何处理人声像贴在伴奏上面而不是融在伴奏里面。从这些难点可以看出AI 翻唱表面上是一个娱乐产品内核却是一套典型的音频工程流程。它的价值在于它让一个没有专业声乐训练、没有录音棚资源的人也有机会做出一首听起来还不错的翻唱作品。这篇文章的目标就是帮你把这段流程跑通。2. AI 歌声生成的两条技术路线开始实践之前有必要先分清两个非常容易被混淆的概念歌声转换SVC和歌声合成SVS。2.1 SVC 与 SVS 的核心区别SVCSinging Voice Conversion歌声转换做的事情是输入一段真人演唱的音频输出同一段旋律、同一段歌词内容但是音色变成目标演唱者的歌声。它不修改歌词和旋律只做“音色替换”。你可以把它理解成“换声滤镜”你唱什么、唱多高、怎么断句都由输入音频决定。SVSSinging Voice Synthesis歌声合成做的事情则完全不同输入的是乐谱、歌词、音素时长、音高曲线等符号化信息由模型从零生成一段歌声。唱歌的人可以不存在只要给足音符和歌词模型就能“唱”出来。它更像“语音合成界的歌唱版”。两者的技术难点不一样。SVC 要解决的是“在保持内容不崩坏的前提下把声纹特征迁移到目标空间”难点是内容与音色的解耦SVS 要解决的是“从乐谱还原自然演唱”难点是音高、时长、情感和咬字的建模。市面上普通人最容易上手的 AI 翻唱工具绝大多数走的都是 SVC 路线因为它需要的输入只有一个音频文件而 SVS 往往还需要精细的标注数据。2.2 主流开源工具与定位在开源社区中有两类工具使用最广一类是基于检索的歌声转换工具代表是 RVCRetrieval-based Voice Conversion系列另一类是基于扩散模型的歌声合成工具代表是 DiffSinger。RVC 的核心思路是把目标说话人的音色特征切分成小片段并建立索引转换时从索引中检索最匹配的特征片段再与源音频的内容特征融合最终重建出带有目标音色的歌声。这种做法的优点是稳定性高、训练门槛相对低个人使用一张消费级显卡就能完成小规模训练。缺点是它的输出质量高度依赖目标数据集和输入干声质量如果输入音频的人声不干净转换结果很容易出现金属音或机械感。DiffSinger 则属于另一条路线。它把歌声建模成扩散过程输入乐谱、歌词和音素信息后逐步去噪生成频谱。它能做到非常细粒度的音高和情绪控制适合从零生成一段全新的歌声但使用门槛明显更高你需要准备带音素标注的歌声数据集还需要理解 MIDI、音素序列这些概念。对只想“把嘴搓清唱变成女团嗓翻唱”的普通玩家来说DiffSinger 的路线更偏研究向。下面用一张表对比四条核心维度对比方向SVC歌声转换SVS歌声合成输入真人演唱音频乐谱、歌词、音素时长输出目标音色的歌声凭空生成的歌声核心难点内容与音色解耦音高、时长、情感建模上手难度相对低相对高典型工具RVC 系列DiffSinger 系列最适合场景翻唱、音色克隆原创歌曲、虚拟歌姬2.3 理解音色不是唯一变量很多新人以为“AI 翻唱像不像”只取决于音色模型好不好这是一个很大的误区。人耳对一个歌手声音的感知是多维度的除了音色还有音域、滑音习惯、气声比例、咬字位置、换气节奏和颤音风格。SVC 模型主要负责音色迁移但滑音和气声这类演唱技巧如果输入源里没有模型也难以凭空生成。这就是为什么同样一个女团嗓模型专业歌手哼出来的输入转出来就动听普通人念歌词式地唱出来转出来就平淡甚至难听。“嘴搓”这一层其实是在训练你的演唱表现力而不是完全交给 AI。理解了这一点你才会愿意在录音、去噪、调音这些环节花时间。3. 环境准备与前置条件无论使用哪条技术路线环境准备都是绕不开的一步。下面以本地部署为主因为 AI 翻唱会涉及大量私人声音数据在本地处理能避免把个人音频上传到第三方平台带来的隐私风险。3.1 硬件与操作系统操作系统方面Windows 和 Linux 都是主流选择。很多开源声音工具对 Windows 支持很友好提供一键启动脚本Linux 则在依赖管理上更干净适合长期跑训练任务。我建议新手先用 Windows 把流程跑通再考虑迁移到服务器。硬件方面最核心的是 GPU。NVIDIA 显卡因为有 CUDA 生态绝大多数音频模型都优先支持。显存大小决定你能训练多大的模型、跑多长的推理。以社区常见的轻量级歌声转换项目为例推理阶段 6GB 显存通常足够训练阶段则建议 8GB 以上但具体数值请以你使用的工具官方说明为准。完全没有 NVIDIA 显卡也不是不能玩CPU 推理可以出结果但速度会慢很多训练基本不现实。3.2 软件依赖安装基础依赖主要是 Python、FFmpeg、音频处理库和深度学习框架。FFmpeg 尤其重要因为几乎所有音频格式转换、采样率调整、变调变速都会用到它。下面给出一个通用的环境准备流程# 1. 确认基础环境 nvidia-smi python --version ffmpeg -version # 2. 创建虚拟环境 conda create -n voiceai python3.10 conda activate voiceai # 3. 安装音频处理基础库 pip install numpy scipy librosa soundfile深度学习框架的安装比较特殊。PyTorch 有 CPU、CUDA 等多个版本安装方式取决于你的 CUDA 版本。这里不写死具体 channel因为不同机器的 CUDA 版本不同最稳妥的方式是到 PyTorch 官网选择与机器匹配的安装命令。一个常见的参考方式是# 假设你的 CUDA 版本与官网某个稳定版本匹配 pip install torch torchaudio注意如果你同时使用 RVC 或 DiffSinger 这类项目建议不要手动乱装 torch而是直接按照项目 README 的安装说明执行。项目通常会锁定依赖版本手动安装容易造成版本冲突。3.3 数据集与项目目录规划动手训练之前先规划好目录结构。我的建议是把原始素材、中间产物、模型文件、训练日志分开存放避免后期文件混乱。下面是一个参考结构voice-ai-project/ ├── dataset/ │ ├── raw/ # 原始音频素材不清理 │ ├── sliced/ # 切片后的短音频 │ └── vocals/ # 最终训练用干声 ├── models/ # 训练产出的模型文件 ├── logs/ # 训练日志与验证音频 ├── output/ # 推理输出 └── input/ # 待转换的嘴搓清唱这个结构的好处是每一步都有明确输出排查问题时能快速定位是数据问题还是模型问题。4. 数据集准备高质量“干声”怎么来数据集是整个流程中最容易被低估的一环。模型能学到的音色上限由数据集质量决定。数据集里全是嘈杂语音模型就不可能输出干净的歌声。4.1 原始素材的收集与筛选要训练一个音色模型需要准备目标音色的“干声”——也就是没有被伴奏覆盖、没有明显混响和回声的纯人声。干声的来源可以有几个自己录制的清唱、已经授权的公开人声素材、开源歌声数据集。无论哪种来源都要确认你有合法使用这些声音素材的权利。素材不是越多越好质量优先。筛选时可以遵循以下几点优先选择无伴奏、无混响、无严重底噪的片段。避免多个说话人混在同一段音频里。尽量覆盖不同音高的演唱而不仅是说话声。剔除有爆麦、喷麦、大幅度失真的片段。一个常见误区是有人会用很长一段平滑的人声训练认为数据多模型就稳。但如果你十几分钟的素材都是同一首歌、同一个音域模型就只会在这段狭窄范围内表现良好一旦输入音域偏离立刻崩坏。更合理的方式是准备覆盖低音、中音、高音、假声、气声的多样片段。4.2 伴奏分离与人声提取如果你手里只有带伴奏的成品歌曲需要先用伴奏分离工具把人声抽出来。开源工具 Demucs 是目前社区使用较广的方案它基于深度网络做音源分离。分离命令大致如下demucs --two-stemsvocals -o output input_song.wav这里的--two-stemsvocals表示把音频分成“人声”和“伴奏”两轨输出会生成一个包含vocals.wav的目录。需要提醒的是Demucs 分离出来的人声不是完美干声它可能会残留伴奏的混响和乐器尾音。如果对品质要求高可以再用噪声抑制工具进一步处理。4.3 切片、重命名与质量筛选拿到人声素材后需要切分成几秒到十几秒的短片段。切片的意义有两个一是方便后续训练时高效采样二是便于人工筛选删除不合格片段。切片可以手动在音频编辑器里做也可以用脚本批量处理。下面是一个使用 librosa 和 soundfile 切片的参考脚本# 文件路径scripts/slice_audio.py import librosa import soundfile as sf from pathlib import Path raw_dir Path(dataset/raw) out_dir Path(dataset/sliced) out_dir.mkdir(parentsTrue, exist_okTrue) segment_seconds 10 sr 44100 for audio_path in raw_dir.glob(*.wav): y, _ librosa.load(str(audio_path), srsr, monoTrue) segment_len int(segment_seconds * sr) for idx, start in enumerate(range(0, len(y) - segment_len, segment_len)): seg y[start : start segment_len] out_path out_dir / f{audio_path.stem}_{idx:03d}.wav sf.write(str(out_path), seg, sr) print(fsaved: {out_path})切片之后人工筛选很重要。我会建议你把这些切片都听一遍把有电话铃声、咳嗽、喷麦、明显破音的片段删掉。这一步听起来笨却是所有经验丰富的 AI 翻唱玩家都会做的事。数据干净比数据多更重要。5. 模型训练与推理示例数据集准备好之后就进入模型训练阶段。这个阶段根据你选定的工具会有不同的操作界面但背后的训练逻辑是相似的。5.1 训练前的参数选择以 RVC 这类歌声转换项目为例进入 WebUI 后一般会看到几类关键参数采样率常用的有 40k、48k。采样率越高理论上可表示的高频细节越多但要求数据集质量也越高。如果你的数据集主要是唱歌干声一般按项目推荐的 40k 或 48k 配置即可。数据集路径填写你整理好的切片干声目录。训练轮数epochs轮数太少模型可能欠拟合音色不像轮数太多又容易过拟合导致推理时出现失真的“口哨声”或“金属音”。具体设置可以参考项目文档同时观察验证集损失。batch size受到显存限制。显存不足时优先减小 batch size而不是强行调大。这些参数不是固定的需要结合显存和数据集大小做实验。更稳妥的做法是先用一个较小数据集跑通全流程再逐步增加数据量和训练轮数。5.2 训练流程与监控训练流程一般包括预处理、特征提取、训练和导出四个阶段。预处理阶段会把人声切片做静音检测和归一化特征提取阶段会计算音高、频谱等特征训练阶段则不断迭代更新模型参数。训练完成后项目一般会导出可供推理使用的模型文件通常以.pth或类似格式保存。训练过程中要养成看日志的习惯。常见的健康信号是 loss 整体下降并且验证集上的 loss 不出现异常反弹。如果训练到一半 loss 突然飙升优先检查数据集里是否混入了坏音频而不是盲目继续训练。很多项目还支持在训练过程中保存 checkpoint方便你回退到效果更好的中间状态。5.3 推理调用示例下面给出一个使用 Python 调用歌声转换模型进行推理的示例。需要注意不同项目对封装类的命名和调用方式不同下面的代码是常见接口的示意写法实际使用时请以你的项目 README 为准。# 文件路径scripts/infer.py # 参考示例具体 API 以你所使用的项目文档为准 from pathlib import Path # 假设当前项目提供了一个 RVCInference 封装 from rvc_python.infer import RVCInference rvc RVCInference() rvc.load_model(models/MyVoice.pth) input_audio input/voice_raw.wav output_audio output/voice_converted.wav rvc.infer_file(input_audio, output_audio) print(fconverted audio saved to: {output_audio})如果你不想编写代码许多开源歌声转换项目直接提供 WebUI 页面在浏览器里选择模型、上传音频、点击转换即可。两种方式没有本质区别核心流程都是加载模型 → 上传输入音频 → 推理 → 输出转换后人声。6. 从“嘴搓清唱”到成品翻唱的完整流水线模型训练完成之后真正的挑战才开始。接下来我们要把一段“嘴搓清唱”处理成一首可以听的 RB 版翻唱。这里我会用一套完整流程演示涉及录音、降噪、变调、转换、混音五个阶段。6.1 清唱录音的预处理“嘴搓”并不是真的随便哼几句就能用。想让 AI 输出稳定输入音频的质量必须尽量干净。录音时注意几点找一个安静房间手机或麦克风离嘴大概 10 到 15 厘米避免爆音尽量清唱不要开伴奏先对准节拍器或原曲速度确保节奏稳定。录音完成后先做降噪和单声道归一化。FFmpeg 自带一些简单滤波器比如afftdn可以做噪声衰减。下面是一个参考命令# 降噪、转单声道、调整采样率 ffmpeg -i input/voice_raw.wav -af afftdnnf-35 -ac 1 -ar 44100 input/voice_clean.wavnf-35表示噪声阈值实际数值需要根据你录音的底噪试听调整。数值过大会损伤人声细节过小则降噪不彻底。如果录音有环境底噪可以先在 Audacity 这类工具里目视频谱找到底噪频段再处理。接下来是变调。如果你的音域和目标翻唱不像原调就需要移调。FFmpeg 中常见的实现方式是用asetrate改变采样率再aresample重采样配合atempo恢复原速度。例如把音高升高 6%ffmpeg -i input/voice_clean.wav -af asetrate44100*1.06,aresample44100,atempo1/1.06 input/voice_pitch.wav这段命令的思路是先把采样率提升改变音高再重采样回原始采样率最后用atempo补偿速度变化保持时长不变。实际移调比例要看原歌和你自身音域的关系。6.2 歌声转换与音色迁移干声处理干净后就可以调用模型做音色转换。这一阶段的基本命令与上一节推理示例一致。我建议在转换时保持同一段输入多试几次不同参数比如转换强度。部分项目支持控制音色迁移的强度强度过大会让声音出现“塑料感”强度过小则音色变化不明显。转换后的人声依然是一个干声文件。建议先单独听一遍确认音准、咬字、气口没有被严重破坏。如果转换结果里有明显的“电音”“机器人声”通常不是因为模型不行而是输入清唱本身不够干净或者源音频音域严重超出模型训练范围。这时应该回头处理录音而不是继续往下混音。6.3 混音让 AI 人声与伴奏融为一体转换完成后最后一步是把人声和伴奏合在一起。这一步决定最终的听感。最简单的合成可以用 FFmpeg 的amixfilter# 将伴奏和 AI 人声混合成 MP3 ffmpeg -i input/accompaniment.wav -i output/voice_converted.wav \ -filter_complex [0:a][1:a]amixinputs2:durationlongest:dropout_transition3,volume1.0 \ -c:a libmp3lame -q:a 2 output/mix.mp3但我不建议你只依赖自动混音。一个可用的做法是先保证人声和伴奏的开始时间对齐再调节两者音量比例让人声突出但不刺耳。之后可以用 Audacity 或 Reaper 这类工具做简单 EQ把人声的频率范围调整到不与伴奏打架。例如RB 版本通常希望人声更贴耳、更有空气感可以在高频段做轻微提升同时衰减可能与贝斯冲突的低频段。“混音”听起来偏艺术但本质上是工程化的音量与频率平衡。你可以先不做任何处理直接听一遍混音找到“人声发闷”“伴奏盖过人声”之类的具体问题再针对性调整。这比盲目套用效果器更有效。7. 运行结果与效果验证怎么判断一次 AI 翻唱是成功还是失败不能只靠“听起来还行”。我建议从听感和客观指标两个维度验证。7.1 从听感上检查哪些维度第一是音准。AI 音色转换基本保留输入旋律如果输入录音跑调输出一定跑调。可以逐句检查有没有走音特别明显的字。第二是咬字清晰度。RB 版翻唱通常强调歌词的语感和气声如果某些字被模型转换成含糊的“嗡嗡声”说明模型在该音素上表现不稳定。第三是换气自然度。自然演唱有呼吸声和换气停顿如果输出人声完全没有气息听起来就会像“一口气唱完”很假。第四是融合度。人声是否像从伴奏中长出来的还是像贴在伴奏上面的另一条音频。7.2 从波形和频谱上验证如果你不放心完全靠耳朵判断可以用工具看频谱。打开 Audacity 或 Praat查看转换后的人声频谱如果高频段出现不自然的密集谐波条带往往意味着模型产生失真如果频谱在某个频率处突然断裂说明可能发生了帧间不连续。也可以用 librosa 提取音高曲线检查输出音频的基频是否平滑。下面是一段参考代码用来绘制音高曲线# 文件路径scripts/check_pitch.py import librosa import matplotlib.pyplot as plt y, sr librosa.load(output/voice_converted.wav, sr44100) f0, voiced_flag, voiced_probs librosa.pyin( y, fminlibrosa.note_to_hz(C3), fmaxlibrosa.note_to_hz(C6) ) times librosa.times_like(f0, srsr) plt.plot(times, f0, labelF0) plt.xlabel(time (s)) plt.ylabel(Hz) plt.legend() plt.savefig(logs/pitch_curve.png)如果音高曲线存在大量突兀的跳变说明输入源或转换过程中存在不稳定的音高段。7.3 效果不好时先查哪个环节按优先级顺序我会建议这样排查输入清唱本身是否干净有无底噪、混响、爆音输入是否严重偏离模型训练音域数据集质量是否足够切片里有没有混入不合格素材混音阶段是否把音量、EQ、混响处理得当大多数“AI 翻唱不自然”的问题最终都会落到第 1 条和第 3 条而不是模型本身。8. 常见问题与排查思路问题现象可能原因排查方式解决方案转换后人声像“机器人”输入清唱底噪大或数据集质量低单独听输入干声看频谱是否有大量噪声重新降噪、清理数据集尾音输出像“电音”/有金属感转换强度过高或输入音域超出模型训练范围降低强度参数对比不同参数下的输出调低转换强度换更稳妥的音域输入音色像但音准跑调输入清唱本身走音用音高曲线工具检查输入 F0修正录音或先做手动修音咬字含糊不清数据集中该音素覆盖不足检查数据集中歌词文本多样性补充不同歌词、不同咬字的训练片段显存不足导致训练中断batch size 或输入长度过大查看报错日志中的显存占用调小 batch size减小切片长度人声和伴奏不融合混音阶段缺 EQ/压缩/混响单独听伴奏和人声的频段冲突做人声 EQ、压缩、混响空间匹配训练 loss 异常升高数据集混入坏音频检查最近加入的音频切片剔除损坏或异常音频重新训练需要说明的是上表中的解决方案是通用排查思路具体参数和命令始终要以你实际使用的工具文档为准。9. 最佳实践与安全边界9.1 工程与审美上的最佳实践先谈工程层面。第一所有原始素材和中间产物都要保留备份并使用清晰命名规则。试过一次之后你就会明白最耗时间的永远是“我找不到之前那个效果好的模型版本了”。第二每次训练都记录下数据集规模、训练轮数、参数配置和结果音频形成一份简单的实验日志。这样当你调整参数后效果变差还能回退到之前版本。第三尽量用脚本和配置文件管理全流程不要全靠手动点击。哪怕你只是把切片、降噪、混音写成几个固定命令也能节省大量重复劳动。技术之外我还想强调审美判断。AI 翻唱作品最终是给人听的所以判断标准不只是“像不像原声”而是“好不好听”。有些玩家执着于音色相似度却忽略了混音、气口和情感表达出来的作品反而不耐听。更建议的做法是先保证基础音准和干声质量再追求音色相似度最后把精力放在混音和情感表达上。9.2 声音授权、版权与合规提醒这一点必须强调。AI 翻唱和音色克隆涉及多重法律风险最常见的有三类。第一类是声音权风险。使用某个真实歌手或真实人物的大量声音素材训练音色模型并在公开渠道发布可能侵犯其声音权益。即使是对自己的声音做音色克隆发布前也要确认平台规则和自身授权范围。第二类是著作权风险。翻唱歌曲本身涉及到词曲著作权尤其是需要改编成 RB 版本时涉及改编权。个人学习交流与公开传播、商用是不同性质后者必须获得权利人授权。第三类是平台规则风险。不同内容平台对于 AI 生成内容、AI 翻唱内容的标注要求不同发布时应当如实标注 AI 参与生成避免造成误导。从技术伦理角度我也建议不要把 AI 音色克隆用于制造虚假内容、冒充他人声音也不要使用未授权的他人声音进行任何形式的商业变现。技术能力越强越需要对使用边界保持清醒。10. 结语与下一步建议回到标题里的那个问题“嘴搓 AI女团嗓翻唱 RB 版姐姐真漂亮”到底是怎么做出来的答案并不是“有一个万能 AI 模型”而是一条从数据、训练、录音、转换到混音的完整链路。学会了这条链路你不仅能做出一个女团嗓翻唱还能调整成爵士嗓、低音炮、童声或者完全虚构的声线本质上都是在做同一件事用工程化的方法控制听感。如果你刚接触这个领域我的建议是先用一个小数据集跑通最小闭环录几十段自己的清唱处理好切片训练一个简单模型输入一段清唱转出来听。哪怕效果一般也能让你理解整条流水线中每个环节的作用。然后再针对你听感中最不满意的那一环做优化而不是一上来就追求完美数据集和高级混音。下一步可以继续探索的方向包括如何设计覆盖更广音域的唱歌数据集、如何用扩散模型做更细腻的歌声合成、如何在混音阶段用压缩器和混响器做出更专业的空间感。希望这篇从“嘴搓清唱”到“成品翻唱”的完整流程能帮你少走一些弯路也做出真正愿意反复听的 AI 翻唱作品。