jc2shile
68dba89a99
feat(llm): honor *_BASE_URL for kimi/gemini/deepseek backends ( #1458 )
...
The kimi, gemini, and deepseek backends hardcoded their base_url, so users
behind an OpenAI-compatible proxy/gateway or running a self-hosted relay had no
way to redirect them (unlike ollama/openai, which already read *_BASE_URL). Each
backend now reads KIMI_BASE_URL / GEMINI_BASE_URL / DEEPSEEK_BASE_URL and falls
back to its official default when unset, so behavior is unchanged for anyone who
doesn't set the variable.
Ported from PR #1458 by @jc2shile onto current v8. The PR branch carried 624
unrelated files from a stale base; this lands just the clean 16-line llm.py
change. Added subprocess-based tests covering both the override and the default
for all three backends (BACKENDS reads the env at import time, so each case runs
in a fresh interpreter).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-25 12:31:19 +01:00
..
2026-06-22 22:57:06 +01:00
2026-06-23 13:21:38 +01:00
2026-05-02 12:54:08 +05:30
2026-05-22 13:22:51 +01:00
2026-06-17 10:29:43 +01:00
2026-06-23 17:26:49 +01:00
2026-05-30 21:37:47 +01:00
2026-06-16 01:41:15 +01:00
2026-06-02 23:48:54 +01:00
2026-05-13 10:07:50 -07:00
2026-06-03 00:08:03 +01:00
2026-05-22 13:22:51 +01:00
2026-06-24 08:54:11 +01:00
2026-06-11 23:22:20 +01:00
2026-05-22 13:22:51 +01:00
2026-06-11 15:08:36 -06:00
2026-05-17 11:32:38 +01:00
2026-04-30 22:08:28 +10:00
2026-06-11 09:58:39 -04:00
2026-04-28 00:56:54 +01:00
2026-06-22 21:15:51 +01:00
2026-05-12 02:23:51 +03:00
2026-06-07 14:34:13 +01:00
2026-04-06 16:06:31 +01:00
2026-06-02 22:23:15 +01:00
2026-06-11 19:52:56 +03:00
2026-06-17 14:21:19 +01:00
2026-06-18 01:15:24 +01:00
2026-05-26 09:17:18 +01:00
2026-06-08 10:35:32 +01:00
2026-05-13 23:19:15 +01:00
2026-06-25 12:26:10 +01:00
2026-06-11 14:02:32 +08:00
2026-06-24 09:09:48 +01:00
2026-06-18 22:55:44 +01:00
2026-06-07 15:03:49 +03:00
2026-05-31 17:09:30 +01:00
2026-06-18 01:55:56 +01:00
2026-06-11 09:36:38 +02:00
2026-05-07 20:07:57 +01:00
2026-06-22 17:02:29 +01:00
2026-06-22 17:02:29 +01:00
2026-06-18 22:55:44 +01:00
2026-06-07 01:20:38 +01:00
2026-05-05 00:07:50 +02:00
2026-06-17 10:46:08 +01:00
2026-06-24 11:43:13 +01:00
2026-06-13 15:13:23 +01:00
2026-06-02 20:48:13 +01:00
2026-06-03 00:00:33 +01:00
2026-06-05 22:15:09 +01:00
2026-06-23 00:18:47 +01:00
2026-06-18 01:18:48 +01:00
2026-06-17 10:29:47 +01:00
2026-06-18 22:50:52 +01:00
2026-06-24 13:53:33 +01:00
2026-06-22 22:57:06 +01:00
2026-06-25 12:31:19 +01:00
2026-05-28 17:44:35 +02:00
2026-06-19 10:25:09 +01:00
2026-05-26 20:16:41 +01:00
2026-06-10 15:50:38 +01:00
2026-05-22 13:22:51 +01:00
2026-05-22 13:22:51 +01:00
2026-05-28 14:46:03 +01:00
2026-06-10 19:31:47 +01:00
2026-05-31 16:41:18 +01:00
2026-06-02 22:50:33 +01:00
2026-06-02 22:50:33 +01:00
2026-06-16 01:41:15 +01:00
2026-05-09 15:52:17 +01:00
2026-05-13 23:19:15 +01:00
2026-06-10 12:45:20 +01:00
2026-04-15 23:08:43 +01:00
2026-06-02 22:16:58 +01:00
2026-05-16 22:36:58 +01:00
2026-05-24 20:38:10 +01:00
2026-05-22 13:22:51 +01:00
2026-06-03 21:04:01 +01:00
2026-05-27 22:30:08 +01:00
2026-06-03 00:00:33 +01:00
2026-06-24 12:48:57 +01:00
2026-05-02 18:09:32 +01:00
2026-05-22 13:22:51 +01:00
2026-06-22 17:02:29 +01:00
2026-05-22 13:22:51 +01:00
2026-04-06 16:06:31 +01:00
2026-06-07 00:43:40 +01:00
2026-06-24 21:19:40 +01:00
2026-06-23 17:26:49 +01:00
2026-06-17 12:08:59 +01:00
2026-06-16 03:06:43 +01:00
2026-05-22 13:22:51 +01:00
2026-06-05 21:46:25 +01:00
2026-04-10 15:55:22 +01:00
2026-05-31 16:47:52 +01:00
2026-06-24 08:54:11 +01:00
2026-06-24 11:29:08 +01:00
2026-06-23 17:26:49 +01:00
2026-06-25 10:41:46 +01:00