Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
|
@@ -6,12 +6,34 @@ from tqdm.auto import tqdm
|
|
| 6 |
import os
|
| 7 |
|
| 8 |
|
| 9 |
-
#
|
| 10 |
-
# If you *still* want it fixed to a specific corner globally, you can uncomment your original fixed CSS.
|
| 11 |
css = """
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 15 |
"""
|
| 16 |
|
| 17 |
|
|
@@ -414,6 +436,10 @@ def calculate_dot_product_and_representations_independent(query_model_choice, do
|
|
| 414 |
return full_output
|
| 415 |
|
| 416 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 417 |
# --- Gradio Interface Setup with Tabs ---
|
| 418 |
with gr.Blocks(title="SPLADE Demos", css=css) as demo:
|
| 419 |
gr.Markdown("# π Sparse Encoder Playground") # Updated title
|
|
@@ -438,11 +464,25 @@ with gr.Blocks(title="SPLADE Demos", css=css) as demo:
|
|
| 438 |
label="Enter your query or document text here:",
|
| 439 |
placeholder="e.g., Why is Padua the nicest city in Italy?"
|
| 440 |
)
|
| 441 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 442 |
info_output_display = gr.Markdown(
|
| 443 |
value="",
|
| 444 |
label="Vector Information",
|
| 445 |
-
elem_id="info_output_display"
|
| 446 |
)
|
| 447 |
with gr.Column(scale=2): # Right column for the main representation output
|
| 448 |
main_representation_output = gr.Markdown()
|
|
@@ -458,10 +498,19 @@ with gr.Blocks(title="SPLADE Demos", css=css) as demo:
|
|
| 458 |
inputs=[model_radio, input_text],
|
| 459 |
outputs=[main_representation_output, info_output_display]
|
| 460 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 461 |
|
| 462 |
# Initial call to populate on load (optional, but good for demo)
|
| 463 |
demo.load(
|
| 464 |
-
fn=lambda: predict_representation_explorer(
|
| 465 |
outputs=[main_representation_output, info_output_display]
|
| 466 |
)
|
| 467 |
|
|
|
|
| 6 |
import os
|
| 7 |
|
| 8 |
|
| 9 |
+
# CSS to style the share button
|
|
|
|
| 10 |
css = """
|
| 11 |
+
.share-button-container {
|
| 12 |
+
display: flex;
|
| 13 |
+
justify-content: center;
|
| 14 |
+
margin-top: 10px;
|
| 15 |
+
margin-bottom: 20px;
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
.custom-share-button {
|
| 19 |
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
| 20 |
+
border: none;
|
| 21 |
+
color: white;
|
| 22 |
+
padding: 8px 16px;
|
| 23 |
+
text-align: center;
|
| 24 |
+
text-decoration: none;
|
| 25 |
+
display: inline-block;
|
| 26 |
+
font-size: 14px;
|
| 27 |
+
margin: 4px 2px;
|
| 28 |
+
cursor: pointer;
|
| 29 |
+
border-radius: 6px;
|
| 30 |
+
transition: all 0.3s ease;
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
.custom-share-button:hover {
|
| 34 |
+
transform: translateY(-2px);
|
| 35 |
+
box-shadow: 0 4px 8px rgba(0,0,0,0.2);
|
| 36 |
+
}
|
| 37 |
"""
|
| 38 |
|
| 39 |
|
|
|
|
| 436 |
return full_output
|
| 437 |
|
| 438 |
|
| 439 |
+
# Function to generate share link (simulated)
|
| 440 |
+
def generate_share_link():
|
| 441 |
+
return "π Share link functionality would be available when running with share=True"
|
| 442 |
+
|
| 443 |
# --- Gradio Interface Setup with Tabs ---
|
| 444 |
with gr.Blocks(title="SPLADE Demos", css=css) as demo:
|
| 445 |
gr.Markdown("# π Sparse Encoder Playground") # Updated title
|
|
|
|
| 464 |
label="Enter your query or document text here:",
|
| 465 |
placeholder="e.g., Why is Padua the nicest city in Italy?"
|
| 466 |
)
|
| 467 |
+
|
| 468 |
+
# Add share button underneath the input field
|
| 469 |
+
with gr.Row(elem_classes="share-button-container"):
|
| 470 |
+
share_button = gr.Button(
|
| 471 |
+
"π€ Generate Share Link",
|
| 472 |
+
elem_classes="custom-share-button",
|
| 473 |
+
size="sm"
|
| 474 |
+
)
|
| 475 |
+
|
| 476 |
+
share_output = gr.Textbox(
|
| 477 |
+
label="Share Link",
|
| 478 |
+
interactive=False,
|
| 479 |
+
visible=False
|
| 480 |
+
)
|
| 481 |
+
|
| 482 |
info_output_display = gr.Markdown(
|
| 483 |
value="",
|
| 484 |
label="Vector Information",
|
| 485 |
+
elem_id="info_output_display"
|
| 486 |
)
|
| 487 |
with gr.Column(scale=2): # Right column for the main representation output
|
| 488 |
main_representation_output = gr.Markdown()
|
|
|
|
| 498 |
inputs=[model_radio, input_text],
|
| 499 |
outputs=[main_representation_output, info_output_display]
|
| 500 |
)
|
| 501 |
+
|
| 502 |
+
# Connect share button
|
| 503 |
+
share_button.click(
|
| 504 |
+
fn=generate_share_link,
|
| 505 |
+
outputs=share_output
|
| 506 |
+
).then(
|
| 507 |
+
fn=lambda: gr.update(visible=True),
|
| 508 |
+
outputs=share_output
|
| 509 |
+
)
|
| 510 |
|
| 511 |
# Initial call to populate on load (optional, but good for demo)
|
| 512 |
demo.load(
|
| 513 |
+
fn=lambda: predict_representation_explorer("MLM encoder (SPLADE-cocondenser-distil)", ""),
|
| 514 |
outputs=[main_representation_output, info_output_display]
|
| 515 |
)
|
| 516 |
|