gz412 commited on
Commit
a305f81
·
1 Parent(s): d8566f0

fix requirments

Browse files
Files changed (1) hide show
  1. app.py +27 -12
app.py CHANGED
@@ -2,7 +2,7 @@ import spaces
2
  import sys
3
  import gradio as gr
4
  import opencc
5
- import torch
6
 
7
  # 添加第三方库路径
8
  sys.path.append('third_party/Matcha-TTS')
@@ -10,21 +10,36 @@ sys.path.append('third_party/Matcha-TTS')
10
  # 繁简转换
11
  converter = opencc.OpenCC('s2t.json')
12
 
13
- # ---- 预加载模型(只在启动时运行一次) ----
14
- from cosyvoice.cli.cosyvoice import CosyVoice2
15
- from cosyvoice.utils.file_utils import load_wav
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
 
17
- cosyvoice_base = CosyVoice2(
18
- 'ASLP-lab/WSYue-TTS-Cosyvoice2',
19
- load_jit=False, load_trt=False, load_vllm=False, fp16=False
20
- )
21
- cosyvoice_zjg = CosyVoice2(
22
- 'ASLP-lab/WSYue-TTS-Cosyvoice2-zjg',
23
- load_jit=False, load_trt=False, load_vllm=False, fp16=False
24
- )
25
 
26
  @spaces.GPU
27
  def tts_inference(model_choice, text, prompt_audio):
 
 
 
28
  # 选择模型和默认音频
29
  if model_choice == "CosyVoice2-张悦楷粤语评书":
30
  model = cosyvoice_zjg
 
2
  import sys
3
  import gradio as gr
4
  import opencc
5
+ from huggingface_hub import hf_hub_download
6
 
7
  # 添加第三方库路径
8
  sys.path.append('third_party/Matcha-TTS')
 
10
  # 繁简转换
11
  converter = opencc.OpenCC('s2t.json')
12
 
13
+ # ---- Lazy Import + 模型缓存 ----
14
+ cosyvoice_base = None
15
+ cosyvoice_zjg = None
16
+ load_wav = None
17
+
18
+
19
+ def load_models():
20
+ global cosyvoice_base, cosyvoice_zjg, load_wav
21
+ if cosyvoice_base is None or cosyvoice_zjg is None:
22
+ import torch
23
+ from cosyvoice.cli.cosyvoice import CosyVoice2
24
+ from cosyvoice.utils.file_utils import load_wav as _load_wav
25
+ load_wav = _load_wav
26
+
27
+ cosyvoice_base = CosyVoice2(
28
+ 'ASLP-lab/WSYue-TTS-Cosyvoice2',
29
+ load_jit=False, load_trt=False, load_vllm=False, fp16=False
30
+ )
31
+ cosyvoice_zjg = CosyVoice2(
32
+ 'ASLP-lab/WSYue-TTS-Cosyvoice2-zjg',
33
+ load_jit=False, load_trt=False, load_vllm=False, fp16=False
34
+ )
35
+ return cosyvoice_base, cosyvoice_zjg, load_wav
36
 
 
 
 
 
 
 
 
 
37
 
38
  @spaces.GPU
39
  def tts_inference(model_choice, text, prompt_audio):
40
+ import torch
41
+ cosyvoice_base, cosyvoice_zjg, load_wav = load_models()
42
+
43
  # 选择模型和默认音频
44
  if model_choice == "CosyVoice2-张悦楷粤语评书":
45
  model = cosyvoice_zjg