| | |
| | | from torch import nn |
| | | import whisper |
| | | from funasr.utils.load_utils import load_audio_text_image_video, extract_fbank |
| | | from transformers import AutoModelForCausalLM, AutoTokenizer |
| | | from transformers.generation import GenerationConfig |
| | | |
| | | |
| | | from funasr.register import tables |
| | | |
| | |
| | | """ |
| | | def __init__(self, *args, **kwargs): |
| | | super().__init__() |
| | | from transformers import AutoModelForCausalLM, AutoTokenizer |
| | | from transformers.generation import GenerationConfig |
| | | |
| | | model_or_path = kwargs.get("model_path", "QwenAudio") |
| | | model = AutoModelForCausalLM.from_pretrained(model_or_path, device_map="cpu", |
| | |
| | | |
| | | meta_data = {} |
| | | # meta_data["batch_data_time"] = -1 |
| | | |
| | | sp_prompt = "<|startoftranscription|><|en|><|transcribe|><|en|><|notimestamps|><|wo_itn|>" |
| | | query = f"<audio>{data_in[0]}</audio>{sp_prompt}" |
| | | prompt = kwargs.get("prompt", "<|startoftranscription|><|en|><|transcribe|><|en|><|notimestamps|><|wo_itn|>") |
| | | query = f"<audio>{data_in[0]}</audio>{prompt}" |
| | | audio_info = self.tokenizer.process_audio(query) |
| | | inputs = self.tokenizer(query, return_tensors='pt', audio_info=audio_info) |
| | | inputs = inputs.to(self.model.device) |
| | | pred = self.model.generate(**inputs, audio_info=audio_info) |
| | | response = tokenizer.decode(pred.cpu()[0], skip_special_tokens=False, audio_info=audio_info) |
| | | response = self.tokenizer.decode(pred.cpu()[0], skip_special_tokens=False, audio_info=audio_info) |
| | | |
| | | results = [] |
| | | result_i = {"key": key[0], "text": response} |
| | |
| | | Modified from https://github.com/QwenLM/Qwen-Audio |
| | | """ |
| | | super().__init__() |
| | | |
| | | from transformers import AutoModelForCausalLM, AutoTokenizer |
| | | from transformers.generation import GenerationConfig |
| | | model_or_path = kwargs.get("model_path", "QwenAudio") |
| | | bf16 = kwargs.get("bf16", False) |
| | | fp16 = kwargs.get("fp16", False) |