Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
|
@@ -198,7 +198,7 @@ SYSTEM_PROMPT = """
|
|
| 198 |
"2. **Code**: Write Python code to implement your solution.\n"
|
| 199 |
"3. **Observation**: Analyze the output of the code and summarize the results.\n"
|
| 200 |
"4. **Final Answer**: Provide a concise conclusion or final result.\n\n"
|
| 201 |
-
f"Task: {
|
| 202 |
|
| 203 |
"""
|
| 204 |
|
|
@@ -231,15 +231,7 @@ def ragent_reasoning(prompt: str, history: list[dict], max_tokens: int = 1024, t
|
|
| 231 |
# Gradio UI configuration
|
| 232 |
|
| 233 |
DESCRIPTION = """
|
| 234 |
-
# Agent Dino 🌠
|
| 235 |
-
|
| 236 |
-
This chat interface supports multiple commands:
|
| 237 |
-
- `@tts1` or `@tts2`: Triggers text-to-speech.
|
| 238 |
-
- `@image`: Generates an image using Stable Diffusion XL.
|
| 239 |
-
- `@3d`: Generates a 3D model using the ShapE pipeline.
|
| 240 |
-
- `@web`: Performs a web search or visits a webpage.
|
| 241 |
-
- `@rAgent`: Initiates a reasoning chain using Llama mode OpenAI.
|
| 242 |
-
"""
|
| 243 |
|
| 244 |
css = '''
|
| 245 |
h1 {
|
|
@@ -247,7 +239,6 @@ h1 {
|
|
| 247 |
display: block;
|
| 248 |
}
|
| 249 |
|
| 250 |
-
/* Additional styling can go here */
|
| 251 |
#duplicate-button {
|
| 252 |
margin: auto;
|
| 253 |
color: #fff;
|
|
@@ -577,99 +568,42 @@ def generate(
|
|
| 577 |
output_file = asyncio.run(text_to_speech(final_response, voice))
|
| 578 |
yield gr.Audio(output_file, autoplay=True)
|
| 579 |
|
| 580 |
-
#
|
| 581 |
-
|
| 582 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 583 |
|
| 584 |
# Ensure the static folder exists
|
| 585 |
if not os.path.exists("static"):
|
| 586 |
os.makedirs("static")
|
| 587 |
|
| 588 |
from fastapi.staticfiles import StaticFiles
|
| 589 |
-
|
| 590 |
-
# Wrap the app in a Blocks layout to include an extra slider bar (via HTML/CSS)
|
| 591 |
-
with gr.Blocks(css=css) as demo:
|
| 592 |
-
gr.Markdown("### About Space\nThis chat interface supports multiple commands:\n- `@tts1` or `@tts2`: Triggers text-to-speech.\n- `@image`: Generates an image using Stable Diffusion XL.\n- `@3d`: Generates a 3D model using the ShapE pipeline.\n- `@web`: Performs a web search or visits a webpage.\n- `@rAgent`: Initiates a reasoning chain using Llama mode OpenAI.\n")
|
| 593 |
-
|
| 594 |
-
# Add a custom slider bar via HTML/CSS/JS
|
| 595 |
-
gr.HTML("""
|
| 596 |
-
<div class="slider-container">
|
| 597 |
-
<input type="range" min="1" max="100" value="50" class="slider" id="myRange">
|
| 598 |
-
<p>Slider Value: <span id="sliderValue">50</span></p>
|
| 599 |
-
</div>
|
| 600 |
-
<style>
|
| 601 |
-
.slider-container {
|
| 602 |
-
width: 80%;
|
| 603 |
-
margin: auto;
|
| 604 |
-
text-align: center;
|
| 605 |
-
padding: 10px 0;
|
| 606 |
-
}
|
| 607 |
-
.slider {
|
| 608 |
-
-webkit-appearance: none;
|
| 609 |
-
width: 100%;
|
| 610 |
-
height: 15px;
|
| 611 |
-
background: #d3d3d3;
|
| 612 |
-
outline: none;
|
| 613 |
-
opacity: 0.7;
|
| 614 |
-
transition: opacity .2s;
|
| 615 |
-
}
|
| 616 |
-
.slider:hover {
|
| 617 |
-
opacity: 1;
|
| 618 |
-
}
|
| 619 |
-
.slider::-webkit-slider-thumb {
|
| 620 |
-
-webkit-appearance: none;
|
| 621 |
-
appearance: none;
|
| 622 |
-
width: 25px;
|
| 623 |
-
height: 25px;
|
| 624 |
-
background: #4CAF50;
|
| 625 |
-
cursor: pointer;
|
| 626 |
-
}
|
| 627 |
-
.slider::-moz-range-thumb {
|
| 628 |
-
width: 25px;
|
| 629 |
-
height: 25px;
|
| 630 |
-
background: #4CAF50;
|
| 631 |
-
cursor: pointer;
|
| 632 |
-
}
|
| 633 |
-
</style>
|
| 634 |
-
<script>
|
| 635 |
-
const slider = document.getElementById("myRange");
|
| 636 |
-
const sliderValue = document.getElementById("sliderValue");
|
| 637 |
-
slider.oninput = function() {
|
| 638 |
-
sliderValue.textContent = this.value;
|
| 639 |
-
}
|
| 640 |
-
</script>
|
| 641 |
-
""")
|
| 642 |
-
|
| 643 |
-
# Add the ChatInterface (with additional slider controls for generation parameters)
|
| 644 |
-
gr.ChatInterface(
|
| 645 |
-
fn=generate,
|
| 646 |
-
additional_inputs=[
|
| 647 |
-
gr.Slider(label="Max new tokens", minimum=1, maximum=MAX_MAX_NEW_TOKENS, step=1, value=DEFAULT_MAX_NEW_TOKENS),
|
| 648 |
-
gr.Slider(label="Temperature", minimum=0.1, maximum=4.0, step=0.1, value=0.6),
|
| 649 |
-
gr.Slider(label="Top-p (nucleus sampling)", minimum=0.05, maximum=1.0, step=0.05, value=0.9),
|
| 650 |
-
gr.Slider(label="Top-k", minimum=1, maximum=1000, step=1, value=50),
|
| 651 |
-
gr.Slider(label="Repetition penalty", minimum=1.0, maximum=2.0, step=0.05, value=1.2),
|
| 652 |
-
],
|
| 653 |
-
examples=[
|
| 654 |
-
["@tts2 What causes rainbows to form?"],
|
| 655 |
-
["@3d A birthday cupcake with cherry"],
|
| 656 |
-
[{"text": "summarize the letter", "files": ["examples/1.png"]}],
|
| 657 |
-
["@image Chocolate dripping from a donut against a yellow background, in the style of brocore, hyper-realistic"],
|
| 658 |
-
["@rAgent Explain how a binary search algorithm works."],
|
| 659 |
-
["@web latest breakthroughs in renewable energy"],
|
| 660 |
-
],
|
| 661 |
-
cache_examples=False,
|
| 662 |
-
type="messages",
|
| 663 |
-
description=DESCRIPTION,
|
| 664 |
-
css=css,
|
| 665 |
-
fill_height=True,
|
| 666 |
-
textbox=gr.MultimodalTextbox(label="Query Input", file_types=["image"], file_count="multiple"),
|
| 667 |
-
stop_btn="Stop Generation",
|
| 668 |
-
multimodal=True,
|
| 669 |
-
)
|
| 670 |
-
|
| 671 |
-
# Mount the static folder so generated files can be served
|
| 672 |
-
demo.app.mount("/static", StaticFiles(directory="static"), name="static")
|
| 673 |
|
| 674 |
if __name__ == "__main__":
|
| 675 |
demo.queue(max_size=20).launch(share=True)
|
|
|
|
| 198 |
"2. **Code**: Write Python code to implement your solution.\n"
|
| 199 |
"3. **Observation**: Analyze the output of the code and summarize the results.\n"
|
| 200 |
"4. **Final Answer**: Provide a concise conclusion or final result.\n\n"
|
| 201 |
+
f"Task: {task}"
|
| 202 |
|
| 203 |
"""
|
| 204 |
|
|
|
|
| 231 |
# Gradio UI configuration
|
| 232 |
|
| 233 |
DESCRIPTION = """
|
| 234 |
+
# Agent Dino 🌠 """
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 235 |
|
| 236 |
css = '''
|
| 237 |
h1 {
|
|
|
|
| 239 |
display: block;
|
| 240 |
}
|
| 241 |
|
|
|
|
| 242 |
#duplicate-button {
|
| 243 |
margin: auto;
|
| 244 |
color: #fff;
|
|
|
|
| 568 |
output_file = asyncio.run(text_to_speech(final_response, voice))
|
| 569 |
yield gr.Audio(output_file, autoplay=True)
|
| 570 |
|
| 571 |
+
# Gradio Chat Interface Setup and Launch
|
| 572 |
+
|
| 573 |
+
demo = gr.ChatInterface(
|
| 574 |
+
fn=generate,
|
| 575 |
+
additional_inputs=[
|
| 576 |
+
gr.Slider(label="Max new tokens", minimum=1, maximum=MAX_MAX_NEW_TOKENS, step=1, value=DEFAULT_MAX_NEW_TOKENS),
|
| 577 |
+
gr.Slider(label="Temperature", minimum=0.1, maximum=4.0, step=0.1, value=0.6),
|
| 578 |
+
gr.Slider(label="Top-p (nucleus sampling)", minimum=0.05, maximum=1.0, step=0.05, value=0.9),
|
| 579 |
+
gr.Slider(label="Top-k", minimum=1, maximum=1000, step=1, value=50),
|
| 580 |
+
gr.Slider(label="Repetition penalty", minimum=1.0, maximum=2.0, step=0.05, value=1.2),
|
| 581 |
+
],
|
| 582 |
+
examples=[
|
| 583 |
+
["@tts2 What causes rainbows to form?"],
|
| 584 |
+
["@3d A birthday cupcake with cherry"],
|
| 585 |
+
[{"text": "summarize the letter", "files": ["examples/1.png"]}],
|
| 586 |
+
["@image Chocolate dripping from a donut against a yellow background, in the style of brocore, hyper-realistic"],
|
| 587 |
+
["@rAgent Explain how a binary search algorithm works."],
|
| 588 |
+
["@web latest breakthroughs in renewable energy"],
|
| 589 |
+
|
| 590 |
+
],
|
| 591 |
+
cache_examples=False,
|
| 592 |
+
type="messages",
|
| 593 |
+
description=DESCRIPTION,
|
| 594 |
+
css=css,
|
| 595 |
+
fill_height=True,
|
| 596 |
+
textbox=gr.MultimodalTextbox(label="Query Input", file_types=["image"], file_count="multiple"),
|
| 597 |
+
stop_btn="Stop Generation",
|
| 598 |
+
multimodal=True,
|
| 599 |
+
)
|
| 600 |
|
| 601 |
# Ensure the static folder exists
|
| 602 |
if not os.path.exists("static"):
|
| 603 |
os.makedirs("static")
|
| 604 |
|
| 605 |
from fastapi.staticfiles import StaticFiles
|
| 606 |
+
demo.app.mount("/static", StaticFiles(directory="static"), name="static")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 607 |
|
| 608 |
if __name__ == "__main__":
|
| 609 |
demo.queue(max_size=20).launch(share=True)
|