Spaces:
Running
Running
debug LM caption: log result keys, check nested result, increase fetch timeout to 120s
Browse files
app.py
CHANGED
|
@@ -152,14 +152,21 @@ def _caption_via_understand(audio_path, timeout=600, cancel_check=None):
|
|
| 152 |
return None
|
| 153 |
|
| 154 |
try:
|
| 155 |
-
r = _fetch_result(job_id, timeout=
|
| 156 |
if r.status_code != 200:
|
|
|
|
| 157 |
return None
|
| 158 |
data = r.json()
|
| 159 |
-
if isinstance(data, dict)
|
| 160 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 161 |
return None
|
| 162 |
-
except Exception:
|
|
|
|
| 163 |
return None
|
| 164 |
|
| 165 |
|
|
|
|
| 152 |
return None
|
| 153 |
|
| 154 |
try:
|
| 155 |
+
r = _fetch_result(job_id, timeout=120)
|
| 156 |
if r.status_code != 200:
|
| 157 |
+
logger.warning("[Caption] %s: result fetch HTTP %d", fname, r.status_code)
|
| 158 |
return None
|
| 159 |
data = r.json()
|
| 160 |
+
logger.info("[Caption] %s: result keys=%s", fname, list(data.keys()) if isinstance(data, dict) else type(data).__name__)
|
| 161 |
+
if isinstance(data, dict):
|
| 162 |
+
if data.get("caption"):
|
| 163 |
+
return data
|
| 164 |
+
if data.get("result") and isinstance(data["result"], dict):
|
| 165 |
+
return data["result"]
|
| 166 |
+
logger.warning("[Caption] %s: no caption in result: %s", fname, str(data)[:200])
|
| 167 |
return None
|
| 168 |
+
except Exception as exc:
|
| 169 |
+
logger.warning("[Caption] %s: result parse failed: %s", fname, exc)
|
| 170 |
return None
|
| 171 |
|
| 172 |
|