Spaces:
Sleeping
Sleeping
Commit
·
c25dca8
1
Parent(s):
cd359a0
Fix small bug
Browse files
app.py
CHANGED
|
@@ -33,7 +33,7 @@ recorder = AudioRecorder(stream=camera)
|
|
| 33 |
from IPython.display import display
|
| 34 |
|
| 35 |
messages: solara.Reactive[List[MessageDict]] = solara.reactive([])
|
| 36 |
-
|
| 37 |
resultado = solara.reactive("")
|
| 38 |
|
| 39 |
@solara.component
|
|
@@ -53,8 +53,7 @@ def Page():
|
|
| 53 |
with solara.Column(style={"padding": "30px"}):
|
| 54 |
solara.Title("Talk to Llama2")
|
| 55 |
solara.Markdown("#Talk to Llama2")
|
| 56 |
-
user_message_count = len([m for m in messages.value if m["role"] == "user"])
|
| 57 |
-
total_message_count.value = len([m for m in messages.value])
|
| 58 |
|
| 59 |
def send(message):
|
| 60 |
messages.value = [
|
|
@@ -71,7 +70,7 @@ def Page():
|
|
| 71 |
def result():
|
| 72 |
if messages.value !=[]: response(messages.value[-1]["content"])
|
| 73 |
|
| 74 |
-
generated_response = solara.use_thread(result, [user_message_count])
|
| 75 |
solara.ProgressLinear(generated_response.state == solara.ResultState.RUNNING)
|
| 76 |
|
| 77 |
with solara.Column(style={"width": "70%"}):
|
|
@@ -84,7 +83,7 @@ def Page():
|
|
| 84 |
solara.Markdown("## Transcribed message:")
|
| 85 |
solara.Text(f"{resultado.value}", style={"color":"blue"})
|
| 86 |
with solara.lab.ChatBox():
|
| 87 |
-
for item in messages.value:
|
| 88 |
with solara.lab.ChatMessage(
|
| 89 |
user=item["role"] == "user",
|
| 90 |
name="Assistant" if item["role"] == "assistant" else "User",
|
|
@@ -92,12 +91,12 @@ def Page():
|
|
| 92 |
border_radius="20px",
|
| 93 |
):
|
| 94 |
solara.Markdown(item["content"])
|
| 95 |
-
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
| 102 |
-
|
| 103 |
-
|
|
|
|
| 33 |
from IPython.display import display
|
| 34 |
|
| 35 |
messages: solara.Reactive[List[MessageDict]] = solara.reactive([])
|
| 36 |
+
user_message_count = solara.reactive(0)
|
| 37 |
resultado = solara.reactive("")
|
| 38 |
|
| 39 |
@solara.component
|
|
|
|
| 53 |
with solara.Column(style={"padding": "30px"}):
|
| 54 |
solara.Title("Talk to Llama2")
|
| 55 |
solara.Markdown("#Talk to Llama2")
|
| 56 |
+
user_message_count.value = len([m for m in messages.value if m["role"] == "user"])
|
|
|
|
| 57 |
|
| 58 |
def send(message):
|
| 59 |
messages.value = [
|
|
|
|
| 70 |
def result():
|
| 71 |
if messages.value !=[]: response(messages.value[-1]["content"])
|
| 72 |
|
| 73 |
+
generated_response = solara.use_thread(result, [user_message_count.value])
|
| 74 |
solara.ProgressLinear(generated_response.state == solara.ResultState.RUNNING)
|
| 75 |
|
| 76 |
with solara.Column(style={"width": "70%"}):
|
|
|
|
| 83 |
solara.Markdown("## Transcribed message:")
|
| 84 |
solara.Text(f"{resultado.value}", style={"color":"blue"})
|
| 85 |
with solara.lab.ChatBox():
|
| 86 |
+
for counter, item in enumerate(messages.value):
|
| 87 |
with solara.lab.ChatMessage(
|
| 88 |
user=item["role"] == "user",
|
| 89 |
name="Assistant" if item["role"] == "assistant" else "User",
|
|
|
|
| 91 |
border_radius="20px",
|
| 92 |
):
|
| 93 |
solara.Markdown(item["content"])
|
| 94 |
+
if counter == 2*user_message_count.value-1:
|
| 95 |
+
voice_name = "Adam"
|
| 96 |
+
model_name = "eleven_monolingual_v1"
|
| 97 |
+
audio = generate(text=f"{messages.value[-1]['content']}", voice=voice_name, model=model_name)
|
| 98 |
+
with NamedTemporaryFile(suffix=".mp3") as temp:
|
| 99 |
+
save(audio, f"{temp.name}")
|
| 100 |
+
audio = ipywidgets.Audio.from_file(filename=f"{temp.name}", autoplay=False, loop=False)
|
| 101 |
+
display(audio)
|
| 102 |
+
solara.lab.ChatInput(send_callback=send)
|