利用vllm加速了LLM模型,但生成的噪声毫无意义
def init(self, model_dir, load_jit=False, load_trt=False, fp16=False): self.instruct = True if '-Instruct' in model_dir else False self.model_dir = model_dir self.fp16 = fp16 if not os.path.exists(model_dir): model_dir = snapshot_download(model_dir) hyper_yaml_path = '{}/cosyvoice.yaml'.format(model_dir) if not os.path.exists(hyper_yaml_path): raise ValueError('{} not found!'.format(hyper_yaml_path)) with open(hyper_yaml_path, 'r') as f: configs = load_hyperpyyaml(f) assert get_model_type(configs) != CosyVoice2Model, 'do not use {} for CosyVoice initialization!'.format(model_dir) self.frontend = CosyVoiceFrontEnd(configs['get_tokenizer'], configs['feat_extractor'], '{}/campplus.onnx'.format(model_dir), '{}/speech_tokenizer_v1.onnx'.format(model_dir), '{}/spk2info.pt'.format(model_dir), configs['allowed_special']) self.sample_rate = configs['sample_rate'] if torch.cuda.is_available() is False and (load_jit is True or load_trt is True or fp16 is True): load_jit, load_trt, fp16 = False, False, False logging.warning('no cuda device, set load_jit/load_trt/fp16 to False') self.model = CosyVoiceModel(configs['LLM'], configs['flow'], configs['hift'], fp16) self.model.load('{}/LLM.pt'.format(model_dir), '{}/flow.pt'.format(model_dir), '{}/hift.pt'.format(model_dir)) if load_jit: self.model.load_jit('{}/LLM.text_encoder.{}.zip'.format(model_dir, 'fp16' if self.fp16 is True else 'fp32'), '{}/LLM.LLM.{}.zip'.format(model_dir, 'fp16' if self.fp16 is True else 'fp32'), '{}/flow.encoder.{}.zip'.format(model_dir, 'fp16' if self.fp16 is True else 'fp32')) if load_trt: self.model.load_trt('{}/flow.decoder.estimator.{}.mygpu.plan'.format(model_dir, 'fp16' if self.fp16 is True else …
内容来源: QwenAudio/CosyVoice