2506minecraft commited on
Commit
8e1af04
·
verified ·
1 Parent(s): be67a1e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +5 -5
app.py CHANGED
@@ -8,7 +8,7 @@ import soundfile as sf
8
  from pydub import AudioSegment
9
  from telegram import Update
10
  from telegram.ext import ApplicationBuilder, MessageHandler, filters, CommandHandler
11
- from transformers import pipeline, AutoTokenizer, AutoModelForCausalLM
12
  from huggingface_hub import login
13
  import asyncio
14
  from collections import defaultdict
@@ -33,7 +33,7 @@ try:
33
  )
34
 
35
  # 2. نموذج توليف الصوت (نموذج بديل)
36
- tts_model = pipeline("text-to-speech", model="coqui/tts-arabic", token=os.getenv("HF_TOKEN"))
37
 
38
  except Exception as e:
39
  logger.error(f"فشل تحميل النماذج: {str(e)}")
@@ -91,8 +91,8 @@ async def generate_response(text: str, user_id: str) -> str:
91
 
92
  async def text_to_speech(text: str) -> None:
93
  try:
94
- audio = tts_model(text)
95
- sf.write("bot_response.wav", audio, 22050) # تأكد من استخدام معدل العينة الصحيح
96
  except Exception as e:
97
  logger.error(f"فشل تحويل النص إلى صوت: {str(e)}")
98
 
@@ -115,7 +115,7 @@ async def process_voice(update: Update, context):
115
  await text_to_speech(bot_response)
116
 
117
  if enhance_audio("bot_response.wav", "bot_response_enhanced.wav"):
118
- await update .message.reply_voice("bot_response_enhanced.wav")
119
  else:
120
  await update.message.reply_voice("bot_response.wav")
121
 
 
8
  from pydub import AudioSegment
9
  from telegram import Update
10
  from telegram.ext import ApplicationBuilder, MessageHandler, filters, CommandHandler
11
+ from transformers import pipeline
12
  from huggingface_hub import login
13
  import asyncio
14
  from collections import defaultdict
 
33
  )
34
 
35
  # 2. نموذج توليف الصوت (نموذج بديل)
36
+ tts_pipeline = pipeline("text-to-speech", model="coqui/tts-arabic", token=os.getenv("HF_TOKEN"))
37
 
38
  except Exception as e:
39
  logger.error(f"فشل تحميل النماذج: {str(e)}")
 
91
 
92
  async def text_to_speech(text: str) -> None:
93
  try:
94
+ audio = tts_pipeline(text)
95
+ sf.write("bot_response.wav", audio["audio"], 22050) # تأكد من استخدام معدل العينة الصحيح
96
  except Exception as e:
97
  logger.error(f"فشل تحويل النص إلى صوت: {str(e)}")
98
 
 
115
  await text_to_speech(bot_response)
116
 
117
  if enhance_audio("bot_response.wav", "bot_response_enhanced.wav"):
118
+ await update.message.reply_voice("bot_response_enh hanced.wav")
119
  else:
120
  await update.message.reply_voice("bot_response.wav")
121