cafierom commited on
Commit
b56e6d9
·
verified ·
1 Parent(s): 20081df

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -1
app.py CHANGED
@@ -15,6 +15,9 @@ from uuid import uuid4
15
  import re
16
  import matplotlib.pyplot as plt
17
  import spaces
 
 
 
18
 
19
  from rdkit import Chem
20
  from rdkit.Chem import AllChem, QED
@@ -702,6 +705,30 @@ def clear_history():
702
  global chat_history
703
  chat_history = []
704
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
705
  with gr.Blocks() as forest:
706
  gr.Markdown('''
707
  # MoDrAg - the *Mo*dular *Dr*ug Design *Ag*ent!
@@ -743,10 +770,13 @@ with gr.Blocks() as forest:
743
  chat_btn = gr.Button(value = "Send")
744
 
745
  clear = gr.ClearButton([task])
 
746
  pic = gr.Image(label="Molecules (if needed)")
747
-
748
  chat_btn.click(DDAgent, inputs = [task], outputs = [task, chatbot, pic])
749
  task.submit(DDAgent, [task], [task, chatbot, pic])
750
  clear.click(clear_history)
 
 
751
 
752
  forest.launch(debug=False, mcp_server=True)
 
15
  import re
16
  import matplotlib.pyplot as plt
17
  import spaces
18
+ from elevenlabs.client import ElevenLabs
19
+ from elevenlabs import stream
20
+ import base64
21
 
22
  from rdkit import Chem
23
  from rdkit.Chem import AllChem, QED
 
705
  global chat_history
706
  chat_history = []
707
 
708
+ def get_speech():
709
+ elita_text = "Hi, I'm Modrag! Let's design together!"
710
+
711
+ voice_settings = {
712
+ "stability": 0.37,
713
+ "similarity_boost": 0.90,
714
+ "style": 0.0,
715
+ "speed": 1.05
716
+ }
717
+
718
+ audio_stream = elevenlabs.text_to_speech.convert(
719
+ text = elita_text,
720
+ voice_id = 'vxO9F6g9yqYJ4RsWvMbc',
721
+ model_id = 'eleven_multilingual_v2',
722
+ output_format='mp3_44100_128',
723
+ voice_settings=voice_settings
724
+ )
725
+
726
+ audio_converted = b"".join(audio_stream)
727
+ audio = base64.b64encode(audio_converted).decode("utf-8")
728
+ audio_player = f'<audio src="data:audio/mpeg;base64,{audio}" controls autoplay></audio>'
729
+
730
+ return audio_player
731
+
732
  with gr.Blocks() as forest:
733
  gr.Markdown('''
734
  # MoDrAg - the *Mo*dular *Dr*ug Design *Ag*ent!
 
770
  chat_btn = gr.Button(value = "Send")
771
 
772
  clear = gr.ClearButton([task])
773
+ modrags_voice = gr.HTML()
774
  pic = gr.Image(label="Molecules (if needed)")
775
+
776
  chat_btn.click(DDAgent, inputs = [task], outputs = [task, chatbot, pic])
777
  task.submit(DDAgent, [task], [task, chatbot, pic])
778
  clear.click(clear_history)
779
+ modrags_voice.release(get_speech, outputs=[modrags_voice])
780
+
781
 
782
  forest.launch(debug=False, mcp_server=True)