bluenevus commited on
Commit
4b742c4
·
verified ·
1 Parent(s): 69bc32b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -20
app.py CHANGED
@@ -31,39 +31,26 @@ snac_model = None
31
  def load_model():
32
  global model, tokenizer, snac_model
33
  try:
34
- logger.info("Loading SNAC model...")
35
  snac_model = SNAC.from_pretrained("hubertsiuzdak/snac_24khz")
36
  snac_model = snac_model.to(device)
37
-
38
- if snac_model is None:
39
- raise ValueError("Failed to load SNAC model")
40
-
41
- logger.info("Loading Orpheus model...")
42
- model_name = "canopylabs/orpheus-3b-0.1-ft"
43
 
44
- hf_token = os.environ.get("HUGGINGFACE_TOKEN")
45
- if not hf_token:
46
- raise ValueError("HUGGINGFACE_TOKEN environment variable is not set")
47
-
48
- login(token=hf_token)
49
 
50
  snapshot_download(
51
  repo_id=model_name,
52
- use_auth_token=hf_token,
53
  allow_patterns=["config.json", "*.safetensors", "model.safetensors.index.json", "vocab.json", "merges.txt", "tokenizer.json"],
54
  ignore_patterns=["optimizer.pt", "pytorch_model.bin", "training_args.bin", "scheduler.pt"]
55
  )
56
 
57
  model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=torch.bfloat16)
58
  model.to(device)
59
-
60
  tokenizer = AutoTokenizer.from_pretrained(model_name)
61
- if tokenizer is None:
62
- raise ValueError("Failed to load tokenizer")
63
-
64
- logger.info(f"Orpheus model and tokenizer loaded to {device}")
65
  except Exception as e:
66
- logger.error(f"Error loading model: {str(e)}")
67
  raise
68
 
69
  @spaces.GPU()
@@ -167,6 +154,11 @@ def redistribute_codes(code_list, snac_model):
167
 
168
  @spaces.GPU()
169
  def generate_speech(text, voice, temperature, top_p, repetition_penalty, max_new_tokens):
 
 
 
 
 
170
  if not text.strip():
171
  return None
172
 
@@ -191,7 +183,7 @@ def generate_speech(text, voice, temperature, top_p, repetition_penalty, max_new
191
 
192
  return (24000, audio_samples) # Return sample rate and audio
193
  except Exception as e:
194
- logger.error(f"Error generating speech: {e}", exc_info=True)
195
  return None
196
 
197
  @spaces.GPU()
 
31
  def load_model():
32
  global model, tokenizer, snac_model
33
  try:
34
+ print("Loading SNAC model...")
35
  snac_model = SNAC.from_pretrained("hubertsiuzdak/snac_24khz")
36
  snac_model = snac_model.to(device)
 
 
 
 
 
 
37
 
38
+ print("Loading Orpheus model...")
39
+ model_name = "canopylabs/orpheus-3b-0.1-ft"
 
 
 
40
 
41
  snapshot_download(
42
  repo_id=model_name,
43
+ use_auth_token=os.environ.get("HUGGINGFACE_TOKEN"),
44
  allow_patterns=["config.json", "*.safetensors", "model.safetensors.index.json", "vocab.json", "merges.txt", "tokenizer.json"],
45
  ignore_patterns=["optimizer.pt", "pytorch_model.bin", "training_args.bin", "scheduler.pt"]
46
  )
47
 
48
  model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=torch.bfloat16)
49
  model.to(device)
 
50
  tokenizer = AutoTokenizer.from_pretrained(model_name)
51
+ print(f"Orpheus model and tokenizer loaded to {device}")
 
 
 
52
  except Exception as e:
53
+ print(f"Error loading model: {str(e)}")
54
  raise
55
 
56
  @spaces.GPU()
 
154
 
155
  @spaces.GPU()
156
  def generate_speech(text, voice, temperature, top_p, repetition_penalty, max_new_tokens):
157
+ global tokenizer
158
+ if tokenizer is None:
159
+ print("Tokenizer is not initialized. Please ensure the model is properly loaded.")
160
+ return None
161
+
162
  if not text.strip():
163
  return None
164
 
 
183
 
184
  return (24000, audio_samples) # Return sample rate and audio
185
  except Exception as e:
186
+ print(f"Error generating speech: {e}")
187
  return None
188
 
189
  @spaces.GPU()