mirror of
https://github.com/FunAudioLLM/CosyVoice.git
synced 2026-02-05 18:09:24 +08:00
fix bug
This commit is contained in:
@@ -16,6 +16,7 @@ import time
|
|||||||
from tqdm import tqdm
|
from tqdm import tqdm
|
||||||
from hyperpyyaml import load_hyperpyyaml
|
from hyperpyyaml import load_hyperpyyaml
|
||||||
from modelscope import snapshot_download
|
from modelscope import snapshot_download
|
||||||
|
import torch
|
||||||
from cosyvoice.cli.frontend import CosyVoiceFrontEnd
|
from cosyvoice.cli.frontend import CosyVoiceFrontEnd
|
||||||
from cosyvoice.cli.model import CosyVoiceModel
|
from cosyvoice.cli.model import CosyVoiceModel
|
||||||
from cosyvoice.utils.file_utils import logging
|
from cosyvoice.utils.file_utils import logging
|
||||||
@@ -37,6 +38,10 @@ class CosyVoice:
|
|||||||
'{}/spk2info.pt'.format(model_dir),
|
'{}/spk2info.pt'.format(model_dir),
|
||||||
instruct,
|
instruct,
|
||||||
configs['allowed_special'])
|
configs['allowed_special'])
|
||||||
|
if torch.cuda.is_available() is False and (fp16 is True or load_jit is True):
|
||||||
|
load_jit = False
|
||||||
|
fp16 = False
|
||||||
|
logging.warning('cpu do not support fp16 and jit, force set to False')
|
||||||
self.model = CosyVoiceModel(configs['llm'], configs['flow'], configs['hift'], fp16)
|
self.model = CosyVoiceModel(configs['llm'], configs['flow'], configs['hift'], fp16)
|
||||||
self.model.load('{}/llm.pt'.format(model_dir),
|
self.model.load('{}/llm.pt'.format(model_dir),
|
||||||
'{}/flow.pt'.format(model_dir),
|
'{}/flow.pt'.format(model_dir),
|
||||||
|
|||||||
@@ -141,6 +141,8 @@ def fade_in_out(fade_in_mel, fade_out_mel, window):
|
|||||||
device = fade_in_mel.device
|
device = fade_in_mel.device
|
||||||
fade_in_mel, fade_out_mel = fade_in_mel.cpu(), fade_out_mel.cpu()
|
fade_in_mel, fade_out_mel = fade_in_mel.cpu(), fade_out_mel.cpu()
|
||||||
mel_overlap_len = int(window.shape[0] / 2)
|
mel_overlap_len = int(window.shape[0] / 2)
|
||||||
|
if fade_in_mel.device == torch.device('cpu'):
|
||||||
|
fade_in_mel = fade_in_mel.clone()
|
||||||
fade_in_mel[..., :mel_overlap_len] = fade_in_mel[..., :mel_overlap_len] * window[:mel_overlap_len] + \
|
fade_in_mel[..., :mel_overlap_len] = fade_in_mel[..., :mel_overlap_len] * window[:mel_overlap_len] + \
|
||||||
fade_out_mel[..., -mel_overlap_len:] * window[mel_overlap_len:]
|
fade_out_mel[..., -mel_overlap_len:] * window[mel_overlap_len:]
|
||||||
return fade_in_mel.to(device)
|
return fade_in_mel.to(device)
|
||||||
|
|||||||
Reference in New Issue
Block a user