Fix logo rendering using Gradio image component
Browse files
app.py
CHANGED
|
@@ -2,6 +2,7 @@ import json
|
|
| 2 |
import os
|
| 3 |
import re
|
| 4 |
from dataclasses import dataclass, field
|
|
|
|
| 5 |
from typing import Any, Dict, List, Optional, Set, Tuple
|
| 6 |
|
| 7 |
import gradio as gr
|
|
@@ -53,6 +54,7 @@ TOOL_RESPONSE_TEMPLATE = """<tool_response>
|
|
| 53 |
|
| 54 |
SEARCH_CACHE: Dict[str, Dict[str, Any]] = {}
|
| 55 |
VISIT_CACHE: Dict[str, Dict[str, Any]] = {}
|
|
|
|
| 56 |
|
| 57 |
CUSTOM_CSS = """
|
| 58 |
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap');
|
|
@@ -82,11 +84,18 @@ CUSTOM_CSS = """
|
|
| 82 |
gap: 18px;
|
| 83 |
}
|
| 84 |
|
| 85 |
-
.banner-logo {
|
| 86 |
-
width:
|
| 87 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 88 |
border-radius: 10px;
|
| 89 |
background: #ffffff;
|
|
|
|
| 90 |
}
|
| 91 |
|
| 92 |
.banner-title {
|
|
@@ -416,17 +425,27 @@ with gr.Blocks(
|
|
| 416 |
"""
|
| 417 |
<div class="banner-card">
|
| 418 |
<div class="banner-inner">
|
| 419 |
-
<
|
| 420 |
-
|
| 421 |
-
|
| 422 |
-
|
| 423 |
-
Multi-turn research agent with search + visit tools. Start with free models now, switch to your own model later.
|
| 424 |
-
</div>
|
| 425 |
-
</div>
|
| 426 |
</div>
|
| 427 |
</div>
|
| 428 |
"""
|
| 429 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 430 |
|
| 431 |
with gr.Row():
|
| 432 |
with gr.Column(scale=5):
|
|
|
|
| 2 |
import os
|
| 3 |
import re
|
| 4 |
from dataclasses import dataclass, field
|
| 5 |
+
from pathlib import Path
|
| 6 |
from typing import Any, Dict, List, Optional, Set, Tuple
|
| 7 |
|
| 8 |
import gradio as gr
|
|
|
|
| 54 |
|
| 55 |
SEARCH_CACHE: Dict[str, Dict[str, Any]] = {}
|
| 56 |
VISIT_CACHE: Dict[str, Dict[str, Any]] = {}
|
| 57 |
+
LOGO_PATH = str(Path(__file__).resolve().parent / "assets" / "quest-logo.png")
|
| 58 |
|
| 59 |
CUSTOM_CSS = """
|
| 60 |
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap');
|
|
|
|
| 84 |
gap: 18px;
|
| 85 |
}
|
| 86 |
|
| 87 |
+
.banner-logo-wrap {
|
| 88 |
+
min-width: 250px;
|
| 89 |
+
}
|
| 90 |
+
|
| 91 |
+
.banner-logo-image img {
|
| 92 |
+
width: 100%;
|
| 93 |
+
max-width: 280px;
|
| 94 |
+
height: auto;
|
| 95 |
+
object-fit: contain;
|
| 96 |
border-radius: 10px;
|
| 97 |
background: #ffffff;
|
| 98 |
+
border: 1px solid #e5e7eb;
|
| 99 |
}
|
| 100 |
|
| 101 |
.banner-title {
|
|
|
|
| 425 |
"""
|
| 426 |
<div class="banner-card">
|
| 427 |
<div class="banner-inner">
|
| 428 |
+
<div class="banner-title">QUEST Deep Research Agent</div>
|
| 429 |
+
</div>
|
| 430 |
+
<div class="banner-subtitle">
|
| 431 |
+
Multi-turn research agent with search + visit tools. Start with free models now, switch to your own model later.
|
|
|
|
|
|
|
|
|
|
| 432 |
</div>
|
| 433 |
</div>
|
| 434 |
"""
|
| 435 |
)
|
| 436 |
+
with gr.Row(elem_classes="banner-inner"):
|
| 437 |
+
with gr.Column(scale=2, elem_classes="banner-logo-wrap"):
|
| 438 |
+
gr.Image(
|
| 439 |
+
value=LOGO_PATH,
|
| 440 |
+
show_label=False,
|
| 441 |
+
container=False,
|
| 442 |
+
interactive=False,
|
| 443 |
+
show_download_button=False,
|
| 444 |
+
show_fullscreen_button=False,
|
| 445 |
+
elem_classes="banner-logo-image",
|
| 446 |
+
)
|
| 447 |
+
with gr.Column(scale=5):
|
| 448 |
+
gr.Markdown("")
|
| 449 |
|
| 450 |
with gr.Row():
|
| 451 |
with gr.Column(scale=5):
|