Spaces:
Running
Running
Not bad
Browse files
app.py
CHANGED
@@ -107,7 +107,7 @@ def plot_model_stats(model_name: str) -> tuple[plt.Figure, str, str]:
|
|
107 |
filtered_stats.values(),
|
108 |
labels=[label.lower() for label in filtered_stats.keys()], # Lowercase for minimal look
|
109 |
colors=chart_colors,
|
110 |
-
autopct='
|
111 |
startangle=90,
|
112 |
explode=None, # No separation
|
113 |
shadow=False,
|
@@ -138,16 +138,14 @@ def plot_model_stats(model_name: str) -> tuple[plt.Figure, str, str]:
|
|
138 |
create_pie_chart(ax1, "amd", amd_filtered)
|
139 |
create_pie_chart(ax2, "nvidia", nvidia_filtered)
|
140 |
|
141 |
-
# Add subtle separation line between charts -
|
142 |
line_x = 0.5
|
143 |
-
fig.add_artist(plt.Line2D([line_x, line_x], [0.
|
144 |
color='#333333', linewidth=1, alpha=0.5,
|
145 |
transform=fig.transFigure))
|
146 |
|
147 |
-
# Add central shared title for model name
|
148 |
-
|
149 |
-
total_nvidia = sum(nvidia_stats.values())
|
150 |
-
fig.suptitle(f'{model_name.lower()} β’ amd: {total_amd} tests, nvidia: {total_nvidia} tests',
|
151 |
fontsize=18, weight='normal', color='#CCCCCC',
|
152 |
fontfamily='monospace', y=0.95)
|
153 |
|
@@ -159,8 +157,8 @@ def plot_model_stats(model_name: str) -> tuple[plt.Figure, str, str]:
|
|
159 |
amd_failed = model_stats['amd']['failed']
|
160 |
nvidia_failed = model_stats['nvidia']['failed']
|
161 |
|
162 |
-
amd_failed_info = "\n".join(amd_failed) if amd_failed else "None"
|
163 |
-
nvidia_failed_info = "\n".join(nvidia_failed) if nvidia_failed else "None"
|
164 |
|
165 |
return fig, amd_failed_info, nvidia_failed_info
|
166 |
|
@@ -349,20 +347,27 @@ h1, h2, h3, p, .markdown {
|
|
349 |
margin-left: 300px !important;
|
350 |
}
|
351 |
|
352 |
-
/* Failed tests display */
|
353 |
-
.failed-tests {
|
354 |
-
background-color: #
|
355 |
-
color: #
|
356 |
font-family: monospace !important;
|
357 |
-
font-size:
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
max-height: 200px !important;
|
363 |
-
overflow-y: auto !important;
|
364 |
-
white-space: pre-line !important;
|
365 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
366 |
"""
|
367 |
|
368 |
# Create the Gradio interface with sidebar and dark theme
|
@@ -400,20 +405,18 @@ with gr.Blocks(title="Model Test Results Dashboard", css=dark_theme_css) as demo
|
|
400 |
with gr.Row():
|
401 |
with gr.Column(scale=1):
|
402 |
amd_failed_tests_output = gr.Textbox(
|
403 |
-
|
404 |
-
|
405 |
-
lines=8,
|
406 |
-
max_lines=8,
|
407 |
interactive=False,
|
|
|
408 |
elem_classes=["failed-tests"]
|
409 |
)
|
410 |
with gr.Column(scale=1):
|
411 |
nvidia_failed_tests_output = gr.Textbox(
|
412 |
-
|
413 |
-
|
414 |
-
lines=8,
|
415 |
-
max_lines=8,
|
416 |
interactive=False,
|
|
|
417 |
elem_classes=["failed-tests"]
|
418 |
)
|
419 |
|
|
|
107 |
filtered_stats.values(),
|
108 |
labels=[label.lower() for label in filtered_stats.keys()], # Lowercase for minimal look
|
109 |
colors=chart_colors,
|
110 |
+
autopct=lambda pct: f'{int(pct/100*sum(filtered_stats.values()))}',
|
111 |
startangle=90,
|
112 |
explode=None, # No separation
|
113 |
shadow=False,
|
|
|
138 |
create_pie_chart(ax1, "amd", amd_filtered)
|
139 |
create_pie_chart(ax2, "nvidia", nvidia_filtered)
|
140 |
|
141 |
+
# Add subtle separation line between charts - stops at device labels level
|
142 |
line_x = 0.5
|
143 |
+
fig.add_artist(plt.Line2D([line_x, line_x], [0.0, 0.85],
|
144 |
color='#333333', linewidth=1, alpha=0.5,
|
145 |
transform=fig.transFigure))
|
146 |
|
147 |
+
# Add central shared title for model name
|
148 |
+
fig.suptitle(f'{model_name.lower()}',
|
|
|
|
|
149 |
fontsize=18, weight='normal', color='#CCCCCC',
|
150 |
fontfamily='monospace', y=0.95)
|
151 |
|
|
|
157 |
amd_failed = model_stats['amd']['failed']
|
158 |
nvidia_failed = model_stats['nvidia']['failed']
|
159 |
|
160 |
+
amd_failed_info = "Fails on AMD:\nββββββββββββ\n" + ("\n".join(amd_failed) if amd_failed else "None")
|
161 |
+
nvidia_failed_info = "Fails on NVIDIA:\nββββββββββββββββ\n" + ("\n".join(nvidia_failed) if nvidia_failed else "None")
|
162 |
|
163 |
return fig, amd_failed_info, nvidia_failed_info
|
164 |
|
|
|
347 |
margin-left: 300px !important;
|
348 |
}
|
349 |
|
350 |
+
/* Failed tests display - seamless appearance */
|
351 |
+
.failed-tests textarea {
|
352 |
+
background-color: #000000 !important;
|
353 |
+
color: #FFFFFF !important;
|
354 |
font-family: monospace !important;
|
355 |
+
font-size: 14px !important;
|
356 |
+
border: none !important;
|
357 |
+
padding: 10px !important;
|
358 |
+
outline: none !important;
|
359 |
+
line-height: 1.4 !important;
|
|
|
|
|
|
|
360 |
}
|
361 |
+
|
362 |
+
.failed-tests {
|
363 |
+
background-color: #000000 !important;
|
364 |
+
}
|
365 |
+
|
366 |
+
.failed-tests .gr-textbox {
|
367 |
+
background-color: #000000 !important;
|
368 |
+
border: none !important;
|
369 |
+
}
|
370 |
+
|
371 |
"""
|
372 |
|
373 |
# Create the Gradio interface with sidebar and dark theme
|
|
|
405 |
with gr.Row():
|
406 |
with gr.Column(scale=1):
|
407 |
amd_failed_tests_output = gr.Textbox(
|
408 |
+
value="Fails on AMD:\nββββββββββββ\nnetwork_timeout\ngpu_initialization\nmemory_overflow",
|
409 |
+
lines=6,
|
|
|
|
|
410 |
interactive=False,
|
411 |
+
container=False,
|
412 |
elem_classes=["failed-tests"]
|
413 |
)
|
414 |
with gr.Column(scale=1):
|
415 |
nvidia_failed_tests_output = gr.Textbox(
|
416 |
+
value="Fails on NVIDIA:\nββββββββββββββββ\ndistributed\nmulti_gpu\ndriver_conflict",
|
417 |
+
lines=6,
|
|
|
|
|
418 |
interactive=False,
|
419 |
+
container=False,
|
420 |
elem_classes=["failed-tests"]
|
421 |
)
|
422 |
|