Core23 commited on
Commit
d585923
1 Parent(s): 8a5702d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +21 -32
app.py CHANGED
@@ -119,42 +119,31 @@ def generate_response(transcribed_text):
119
  return response.choices[0].message.content
120
 
121
  def inference(text):
122
- response = client.audio.create(
123
- model="tts-1-hd",
124
- voice="alloy",
125
- text=text
126
- )
127
- if hasattr(response, 'url'):
128
- audio_url = response.url
129
- return audio_url
130
- else:
131
- raise Exception("An error occurred: OpenAI did not return a valid response for the audio file.")
132
 
133
  def process_audio_and_respond(audio):
134
- text = transcribe(audio)
135
- response_text = generate_response(text)
136
- audio_url = inference(response_text)
137
- response = requests.get(audio_url)
138
-
139
- # Create temporary audio file
140
- with tempfile.NamedTemporaryFile(suffix=".mp3", delete=False) as temp_file:
141
- temp_file.write(response.content)
142
- temp_filepath = temp_file.name
143
-
144
- return response_text, temp_filepath
145
 
146
  demo = gr.Interface(
147
- process_audio_and_respond,
148
- gr.inputs.Audio(source="microphone", type="filepath", label="Bonyeza kitufe cha kurekodi na uliza swali lako"),
149
- [
150
- gr.outputs.Textbox(label="Jibu (kwa njia ya maandishi)"),
151
- gr.outputs.Audio(type="filepath", label="Jibu kwa njia ya sauti (Bofya kusikiliza Jibu)")
152
- ],
153
- description="Uliza Swali kuhusu haki and sheria za udongo",
154
- theme="compact",
155
- layout="vertical",
156
- allow_flagging=False,
157
- live=True,
158
  )
159
 
160
  demo.launch()
 
119
  return response.choices[0].message.content
120
 
121
  def inference(text):
122
+ client = openai.OpenAI(api_key='your_api_key')
123
+ response = client.audio.speech.create(
124
+ model="tts-1",
125
+ voice="alloy",
126
+ input=text
127
+ )
128
+ output_file = "tts_output.mp3"
129
+ response.stream_to_file(output_file)
130
+ return output_file
 
131
 
132
  def process_audio_and_respond(audio):
133
+ text = transcribe(audio)
134
+ response_text = generate_response(text)
135
+ output_file = inference(response_text)
136
+ return response_text, output_file
 
 
 
 
 
 
 
137
 
138
  demo = gr.Interface(
139
+ process_audio_and_respond,
140
+ gr.inputs.Audio(source="microphone", type="filepath", label="Bonyeza kitufe cha kurekodi na uliza swali lako"),
141
+ [gr.outputs.Textbox(label="Jibu (kwa njia ya maandishi)"), gr.outputs.Audio(type="filepath", label="Jibu kwa njia ya sauti (Bofya kusikiliza Jibu)")],
142
+ description="Uliza Swali kuhusu haki and sheria za udongo",
143
+ theme="compact",
144
+ layout="vertical",
145
+ allow_flagging=False,
146
+ live=True,
 
 
 
147
  )
148
 
149
  demo.launch()