Spaces:
No application file
No application file
sam133
commited on
Commit
·
510f9b3
1
Parent(s):
f0febc6
� CRITICAL FIX: Remove gr.Accordion from function outputs
Browse files❌ Fixed: TypeError: argument of type 'bool' is not iterable
✅ Solution: Removed gr.Accordion from ui_function_wrapper outputs
✅ Layout components cannot be used as function outputs in Gradio
✅ Results accordion now opens by default instead of programmatic control
This resolves the JSON schema validation error preventing app launch.
app.py
CHANGED
|
@@ -46,7 +46,7 @@ def ui_function_wrapper(vehicle_type, user_description):
|
|
| 46 |
"""
|
| 47 |
Main UI wrapper function that yields real-time updates to multiple Gradio components
|
| 48 |
Returns tuples in the order: process_log, current_design_specs, progress_bar,
|
| 49 |
-
|
| 50 |
performance_summary, llm_rationale
|
| 51 |
"""
|
| 52 |
global designer
|
|
@@ -61,7 +61,6 @@ def ui_function_wrapper(vehicle_type, user_description):
|
|
| 61 |
"🚀 Initializing Agent2Robot system...\n", # process_log_output
|
| 62 |
{}, # current_design_specs_output
|
| 63 |
0, # progress_bar_output
|
| 64 |
-
gr.Accordion(open=False), # results_accordion - keep closed initially
|
| 65 |
"", # final_status_output
|
| 66 |
None, # simulation_video_output
|
| 67 |
{}, # best_design_specs_output
|
|
@@ -84,7 +83,6 @@ def ui_function_wrapper(vehicle_type, user_description):
|
|
| 84 |
current_log, # process_log_output
|
| 85 |
{"interpreted_criteria": criteria}, # current_design_specs_output
|
| 86 |
0, # progress_bar_output
|
| 87 |
-
gr.Accordion(open=False), # results_accordion
|
| 88 |
"", # final_status_output
|
| 89 |
None, # simulation_video_output
|
| 90 |
{}, # best_design_specs_output
|
|
@@ -102,7 +100,6 @@ def ui_function_wrapper(vehicle_type, user_description):
|
|
| 102 |
current_log, # process_log_output
|
| 103 |
{"status": "Design process starting..."}, # current_design_specs_output
|
| 104 |
0, # progress_bar_output
|
| 105 |
-
gr.Accordion(open=False), # results_accordion
|
| 106 |
"", # final_status_output
|
| 107 |
None, # simulation_video_output
|
| 108 |
{}, # best_design_specs_output
|
|
@@ -122,7 +119,6 @@ def ui_function_wrapper(vehicle_type, user_description):
|
|
| 122 |
current_log, # process_log_output
|
| 123 |
{"current_iteration": iteration, "max_iterations": MAX_ITERATIONS, "status": "Running..."}, # current_design_specs_output
|
| 124 |
progress_value, # progress_bar_output
|
| 125 |
-
gr.Accordion(open=False), # results_accordion
|
| 126 |
"", # final_status_output
|
| 127 |
None, # simulation_video_output
|
| 128 |
{}, # best_design_specs_output
|
|
@@ -156,7 +152,6 @@ def ui_function_wrapper(vehicle_type, user_description):
|
|
| 156 |
current_log, # process_log_output
|
| 157 |
current_specs_display, # current_design_specs_output
|
| 158 |
progress_value, # progress_bar_output
|
| 159 |
-
gr.Accordion(open=False), # results_accordion
|
| 160 |
"", # final_status_output
|
| 161 |
None, # simulation_video_output
|
| 162 |
{}, # best_design_specs_output
|
|
@@ -177,7 +172,6 @@ def ui_function_wrapper(vehicle_type, user_description):
|
|
| 177 |
current_log, # process_log_output
|
| 178 |
{"error": f"Iteration {iteration} failed", "details": str(e)}, # current_design_specs_output
|
| 179 |
progress_value, # progress_bar_output
|
| 180 |
-
gr.Accordion(open=False), # results_accordion
|
| 181 |
"", # final_status_output
|
| 182 |
None, # simulation_video_output
|
| 183 |
{}, # best_design_specs_output
|
|
@@ -193,7 +187,6 @@ def ui_function_wrapper(vehicle_type, user_description):
|
|
| 193 |
current_log, # process_log_output
|
| 194 |
{"status": "Generating final results..."}, # current_design_specs_output
|
| 195 |
100, # progress_bar_output - complete
|
| 196 |
-
gr.Accordion(open=False), # results_accordion
|
| 197 |
"", # final_status_output
|
| 198 |
None, # simulation_video_output
|
| 199 |
{}, # best_design_specs_output
|
|
@@ -265,7 +258,6 @@ def ui_function_wrapper(vehicle_type, user_description):
|
|
| 265 |
final_log, # process_log_output
|
| 266 |
{"final_summary": f"Process completed. {len(designer.all_attempts)} iterations run."}, # current_design_specs_output
|
| 267 |
100, # progress_bar_output
|
| 268 |
-
gr.Accordion(open=True), # results_accordion - open results section
|
| 269 |
final_status, # final_status_output
|
| 270 |
simulation_gif_path, # simulation_video_output
|
| 271 |
best_specs, # best_design_specs_output
|
|
@@ -385,7 +377,7 @@ def create_agent2robot_interface():
|
|
| 385 |
)
|
| 386 |
|
| 387 |
# Results Section
|
| 388 |
-
with gr.Accordion("🏆 Final Results & Design Specifications", open=
|
| 389 |
final_status_output = gr.Markdown(
|
| 390 |
label="🏁 Final Run Status",
|
| 391 |
value="Waiting for process to complete..."
|
|
@@ -431,7 +423,6 @@ def create_agent2robot_interface():
|
|
| 431 |
process_log_output,
|
| 432 |
current_design_specs_output,
|
| 433 |
progress_bar_output,
|
| 434 |
-
results_accordion,
|
| 435 |
final_status_output,
|
| 436 |
simulation_video_output,
|
| 437 |
best_design_specs_output,
|
|
|
|
| 46 |
"""
|
| 47 |
Main UI wrapper function that yields real-time updates to multiple Gradio components
|
| 48 |
Returns tuples in the order: process_log, current_design_specs, progress_bar,
|
| 49 |
+
final_status, simulation_video, best_design_specs, download_json,
|
| 50 |
performance_summary, llm_rationale
|
| 51 |
"""
|
| 52 |
global designer
|
|
|
|
| 61 |
"🚀 Initializing Agent2Robot system...\n", # process_log_output
|
| 62 |
{}, # current_design_specs_output
|
| 63 |
0, # progress_bar_output
|
|
|
|
| 64 |
"", # final_status_output
|
| 65 |
None, # simulation_video_output
|
| 66 |
{}, # best_design_specs_output
|
|
|
|
| 83 |
current_log, # process_log_output
|
| 84 |
{"interpreted_criteria": criteria}, # current_design_specs_output
|
| 85 |
0, # progress_bar_output
|
|
|
|
| 86 |
"", # final_status_output
|
| 87 |
None, # simulation_video_output
|
| 88 |
{}, # best_design_specs_output
|
|
|
|
| 100 |
current_log, # process_log_output
|
| 101 |
{"status": "Design process starting..."}, # current_design_specs_output
|
| 102 |
0, # progress_bar_output
|
|
|
|
| 103 |
"", # final_status_output
|
| 104 |
None, # simulation_video_output
|
| 105 |
{}, # best_design_specs_output
|
|
|
|
| 119 |
current_log, # process_log_output
|
| 120 |
{"current_iteration": iteration, "max_iterations": MAX_ITERATIONS, "status": "Running..."}, # current_design_specs_output
|
| 121 |
progress_value, # progress_bar_output
|
|
|
|
| 122 |
"", # final_status_output
|
| 123 |
None, # simulation_video_output
|
| 124 |
{}, # best_design_specs_output
|
|
|
|
| 152 |
current_log, # process_log_output
|
| 153 |
current_specs_display, # current_design_specs_output
|
| 154 |
progress_value, # progress_bar_output
|
|
|
|
| 155 |
"", # final_status_output
|
| 156 |
None, # simulation_video_output
|
| 157 |
{}, # best_design_specs_output
|
|
|
|
| 172 |
current_log, # process_log_output
|
| 173 |
{"error": f"Iteration {iteration} failed", "details": str(e)}, # current_design_specs_output
|
| 174 |
progress_value, # progress_bar_output
|
|
|
|
| 175 |
"", # final_status_output
|
| 176 |
None, # simulation_video_output
|
| 177 |
{}, # best_design_specs_output
|
|
|
|
| 187 |
current_log, # process_log_output
|
| 188 |
{"status": "Generating final results..."}, # current_design_specs_output
|
| 189 |
100, # progress_bar_output - complete
|
|
|
|
| 190 |
"", # final_status_output
|
| 191 |
None, # simulation_video_output
|
| 192 |
{}, # best_design_specs_output
|
|
|
|
| 258 |
final_log, # process_log_output
|
| 259 |
{"final_summary": f"Process completed. {len(designer.all_attempts)} iterations run."}, # current_design_specs_output
|
| 260 |
100, # progress_bar_output
|
|
|
|
| 261 |
final_status, # final_status_output
|
| 262 |
simulation_gif_path, # simulation_video_output
|
| 263 |
best_specs, # best_design_specs_output
|
|
|
|
| 377 |
)
|
| 378 |
|
| 379 |
# Results Section
|
| 380 |
+
with gr.Accordion("🏆 Final Results & Design Specifications", open=True) as results_accordion:
|
| 381 |
final_status_output = gr.Markdown(
|
| 382 |
label="🏁 Final Run Status",
|
| 383 |
value="Waiting for process to complete..."
|
|
|
|
| 423 |
process_log_output,
|
| 424 |
current_design_specs_output,
|
| 425 |
progress_bar_output,
|
|
|
|
| 426 |
final_status_output,
|
| 427 |
simulation_video_output,
|
| 428 |
best_design_specs_output,
|