mason369 commited on
Commit
76f3fc9
·
verified ·
1 Parent(s): 3df33c0

Fix Space startup entrypoint

Browse files
Files changed (3) hide show
  1. README.md +18 -18
  2. app.py +2 -3
  3. tests/test_hf_entrypoint.py +28 -0
README.md CHANGED
@@ -10,23 +10,23 @@ pinned: false
10
  license: mit
11
  ---
12
 
13
- # 🎤 AI-RVC 一键 AI 翻唱
14
-
15
- AI-RVC 是一个基于 **RVC v2** 的一键 AI 翻唱与声音转换 WebUI。上传歌曲后,它会自动分离人声与伴奏,使用角色 RVC 模型转换主唱音色,再把转换后的人声和伴奏混成完整作品。
16
-
17
- 如果你想搜索或分享本项目,可以用这些关键词:AI 翻唱、RVC 翻唱、AI cover generator、RVC voice conversion、角色声线转换、人声分离、伴奏分离、HuBERT、RMVPE、FAISS、Gradio WebUI、Colab AI 翻唱。
18
-
19
- ## 功能特点
20
-
21
- - **AI 歌曲翻唱**:上传 MP3/WAV/FLAC,自动分离人声、转换音色、混合伴奏,一键生成 AI cover。
22
- - **人声分离**:默认 `audio-separator` 0.44.1 ensemble 预设(`ensemble:vocal_rvc`),可处理常见歌曲里的主唱与伴奏分离。
23
- - **音色转换**:RVC v2 架构 + FAISS 检索增强流程,搭配角色模型完成声线转换。
24
- - **RMVPE 音高提取**:用于提取 F0 基频曲线,让旋律和音高更稳。
25
- - **角色模型**:内置 117 个可下载角色模型,支持系列筛选和关键词搜索。
26
- - **混音效果**:支持人声混响、音量调节和 4 种混音预设。
27
- - **卡拉OK模式**:分离主唱和伴唱轨道,方便对和声较多的歌曲做进一步处理。
28
- - **VC预处理**:4 种模式(自动、直通、学习型 DeEcho、旧版手工链),根据素材干净程度灵活选择。
29
- - **双VC管道**:支持当前实现和官方实现,可对比不同歌曲、不同模型下的效果。
30
 
31
  ## 使用方法
32
 
@@ -150,4 +150,4 @@ A: 建议选择与原唱性别、音色相近的角色,效果更自然。
150
 
151
  **License**: MIT
152
  **Version**: 2.0
153
- **Last Updated**: 2026-06-18
 
10
  license: mit
11
  ---
12
 
13
+ # 🎤 AI-RVC 一键 AI 翻唱
14
+
15
+ AI-RVC 是一个基于 **RVC v2** 的一键 AI 翻唱与声音转换 WebUI。上传歌曲后,它会自动分离人声与伴奏,使用角色 RVC 模型转换主唱音色,再把转换后的人声和伴奏混成完整作品。
16
+
17
+ 如果你想搜索或分享本项目,可以用这些关键词:AI 翻唱、RVC 翻唱、AI cover generator、RVC voice conversion、角色声线转换、人声分离、伴奏分离、HuBERT、RMVPE、FAISS、Gradio WebUI、Colab AI 翻唱。
18
+
19
+ ## 功能特点
20
+
21
+ - **AI 歌曲翻唱**:上传 MP3/WAV/FLAC,自动分离人声、转换音色、混合伴奏,一键生成 AI cover。
22
+ - **人声分离**:默认 `audio-separator` 0.44.1 ensemble 预设(`ensemble:vocal_rvc`),可处理常见歌曲里的主唱与伴奏分离。
23
+ - **音色转换**:RVC v2 架构 + FAISS 检索增强流程,搭配角色模型完成声线转换。
24
+ - **RMVPE 音高提取**:用于提取 F0 基频曲线,让旋律和音高更稳。
25
+ - **角色模型**:内置 117 个可下载角色模型,支持系列筛选和关键词搜索。
26
+ - **混音效果**:支持人声混响、音量调节和 4 种混音预设。
27
+ - **卡拉OK模式**:分离主唱和伴唱轨道,方便对和声较多的歌曲做进一步处理。
28
+ - **VC预处理**:4 种模式(自动、直通、学习型 DeEcho、旧版手工链),根据素材干净程度灵活选择。
29
+ - **双VC管道**:支持当前实现和官方实现,可对比不同歌曲、不同模型下的效果。
30
 
31
  ## 使用方法
32
 
 
150
 
151
  **License**: MIT
152
  **Version**: 2.0
153
+ **Last Updated**: 2026-06-18
app.py CHANGED
@@ -25,8 +25,7 @@ if __name__ == "__main__":
25
 
26
  # 启动 Gradio 界面
27
  launch(
28
- server_name="0.0.0.0",
29
- server_port=7860,
30
  share=False,
31
- inbrowser=False
32
  )
 
25
 
26
  # 启动 Gradio 界面
27
  launch(
28
+ host="0.0.0.0",
29
+ port=7860,
30
  share=False,
 
31
  )
tests/test_hf_entrypoint.py ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import ast
2
+ import unittest
3
+ from pathlib import Path
4
+
5
+
6
+ REPO_ROOT = Path(__file__).resolve().parents[1]
7
+
8
+
9
+ class HuggingFaceEntrypointTests(unittest.TestCase):
10
+ def test_entrypoint_calls_ui_launch_with_supported_keywords(self):
11
+ tree = ast.parse((REPO_ROOT / "app.py").read_text(encoding="utf-8"))
12
+ launch_calls = [
13
+ node
14
+ for node in ast.walk(tree)
15
+ if isinstance(node, ast.Call)
16
+ and isinstance(node.func, ast.Name)
17
+ and node.func.id == "launch"
18
+ ]
19
+
20
+ self.assertEqual(len(launch_calls), 1)
21
+ self.assertEqual(
22
+ {keyword.arg for keyword in launch_calls[0].keywords},
23
+ {"host", "port", "share"},
24
+ )
25
+
26
+
27
+ if __name__ == "__main__":
28
+ unittest.main()