Spaces:
Runtime error
Runtime error
Claude commited on
fix: Monkey-patch get_api_info to avoid Gradio schema TypeError
Browse filesThe Gradio schema parser crashes on additionalProperties: True (boolean)
when parsing SessionState class. This monkey-patch catches the TypeError
and returns minimal API info instead of crashing.
app.py
CHANGED
|
@@ -856,5 +856,16 @@ def create_demo():
|
|
| 856 |
# Create demo at module level for HuggingFace Spaces
|
| 857 |
demo = create_demo()
|
| 858 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 859 |
if __name__ == "__main__":
|
| 860 |
-
demo.launch()
|
|
|
|
| 856 |
# Create demo at module level for HuggingFace Spaces
|
| 857 |
demo = create_demo()
|
| 858 |
|
| 859 |
+
# Monkey-patch to avoid Gradio schema bug with complex types
|
| 860 |
+
# The bug occurs when get_api_info() tries to parse additionalProperties: True
|
| 861 |
+
_original_get_api_info = demo.get_api_info
|
| 862 |
+
def _safe_get_api_info():
|
| 863 |
+
try:
|
| 864 |
+
return _original_get_api_info()
|
| 865 |
+
except TypeError:
|
| 866 |
+
# Return minimal API info to avoid the schema parsing bug
|
| 867 |
+
return {"named_endpoints": {}, "unnamed_endpoints": {}}
|
| 868 |
+
demo.get_api_info = _safe_get_api_info
|
| 869 |
+
|
| 870 |
if __name__ == "__main__":
|
| 871 |
+
demo.launch(ssr=False)
|