import torch import soundfile as sf import tempfile from transformers import AutoTokenizer from transformers import AutoModelForSeq2SeqLM model = None tokenizer = None def load_model(): global model, tokenizer if model is None: model_name = "sarvamai/sarvam-tts" tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForSeq2SeqLM.from_pretrained(model_name) def generate_voice(text): load_model() inputs = tokenizer(text, return_tensors="pt") with torch.no_grad(): audio = model.generate(**inputs) audio_file = tempfile.NamedTemporaryFile(delete=False, suffix=".wav") sf.write(audio_file.name, audio.numpy(), 22050) return audio_file.name