diff --git a/capcut_agent/recommend.py b/capcut_agent/recommend.py index 798d8c2..162155f 100644 --- a/capcut_agent/recommend.py +++ b/capcut_agent/recommend.py @@ -133,7 +133,7 @@ def ai_pick_cuts(cuts, comments, quotas, *, model: str = AI_MODEL, try: prompt = prompts.load_recommend().format( cuts=_cut_lines(cuts), comments=_candidate_lines(comments), k=k) - except (KeyError, IndexError, OSError): # 사용자가 프롬프트를 깨뜨린 경우 + except (KeyError, IndexError, ValueError, OSError): # 사용자가 프롬프트를 깨뜨린 경우 return {} body = { "contents": [{"parts": [{"text": prompt}]}], @@ -149,7 +149,7 @@ def ai_pick_cuts(cuts, comments, quotas, *, model: str = AI_MODEL, with urllib.request.urlopen(req, timeout=timeout) as resp: data = json.loads(resp.read().decode("utf-8")) raw = data["candidates"][0]["content"]["parts"][0]["text"] - except (urllib.error.URLError, KeyError, IndexError, TimeoutError, - json.JSONDecodeError, OSError): + except (KeyError, IndexError, json.JSONDecodeError, ValueError, + OSError): # URLError, TimeoutError are OSError subclasses; ValueError covers UnicodeDecodeError return {} # 429 포함 — 폴백은 호출부 몫 return _parse_ai(raw)