Handle slow AI backend timeouts
This commit is contained in:
@@ -34,6 +34,13 @@ def _ask_ollama(prompt: str, config: AppConfig) -> str:
|
||||
response = requests.post(url, json=payload, timeout=config.request_timeout_seconds)
|
||||
response.raise_for_status()
|
||||
data = response.json()
|
||||
except requests.Timeout as exc:
|
||||
timeout_label = "désactivé" if config.request_timeout_seconds is None else f"{config.request_timeout_seconds:.0f} s"
|
||||
raise AIClientError(
|
||||
"Ollama n'a pas répondu avant le délai configuré "
|
||||
f"({timeout_label}). Le modèle est peut-être en chargement ou trop lent; "
|
||||
"augmentez request_timeout_seconds dans config.json, ou mettez 0 pour désactiver le timeout."
|
||||
) from exc
|
||||
except requests.RequestException as exc:
|
||||
raise AIClientError(f"Erreur Ollama: {exc}") from exc
|
||||
except ValueError as exc:
|
||||
@@ -65,6 +72,13 @@ def _ask_gemini(prompt: str, config: AppConfig) -> str:
|
||||
)
|
||||
response.raise_for_status()
|
||||
data = response.json()
|
||||
except requests.Timeout as exc:
|
||||
timeout_label = "désactivé" if config.request_timeout_seconds is None else f"{config.request_timeout_seconds:.0f} s"
|
||||
raise AIClientError(
|
||||
"Gemini n'a pas répondu avant le délai configuré "
|
||||
f"({timeout_label}). Augmentez request_timeout_seconds dans config.json, "
|
||||
"ou mettez 0 pour désactiver le timeout."
|
||||
) from exc
|
||||
except requests.RequestException as exc:
|
||||
raise AIClientError(f"Erreur Gemini: {exc}") from exc
|
||||
except ValueError as exc:
|
||||
|
||||
Reference in New Issue
Block a user