Isaac Huang
c53fcb0173
feat(providers): add GMI Cloud as a first-class API-key provider (#11955)
Add GMI Cloud (api.gmi-serving.com) as a full first-class API-key provider
with built-in auth, aliases, model catalog, CLI entry points, auxiliary client
routing, context length resolution, doctor checks, env var tracking, and docs.
- auth.py: ProviderConfig for 'gmi' (api_key, GMI_API_KEY / GMI_BASE_URL)
- providers.py: HermesOverlay with extra_env_vars for models.dev detection
- models.py: curated slash-form model catalog; live /v1/models fetch
- main.py: 'gmi' in _named_custom_provider_map and --provider choices
- model_metadata.py: _URL_TO_PROVIDER, _PROVIDER_PREFIXES, dedicated
context-length probe block (GMI's /models has authoritative data)
- auxiliary_client.py: alias entries; _compat_model fix for slash-form
models on cached aggregator-style clients; gmi aux default model
- doctor.py: GMI in provider connectivity checks
- config.py: GMI_API_KEY / GMI_BASE_URL in OPTIONAL_ENV_VARS
- conftest.py: explicit GMI_BASE_URL clearing (not caught by _API_KEY suffix)
- docs: providers.md, environment-variables.md, fallback-providers.md,
configuration.md, quickstart.md (expands provider table)
Co-authored-by: Isaac Huang <isaachuang@Isaacs-MacBook-Pro.local>
2026-04-27 11:17:59 -07:00
..
2026-04-24 03:04:42 -07:00
2026-04-27 11:17:59 -07:00
2026-04-27 06:41:16 -07:00
2026-04-27 07:41:42 -07:00
2026-04-25 18:25:56 -07:00
2026-04-07 17:28:37 -07:00
2026-03-14 14:27:20 +03:00
2026-04-27 07:41:42 -07:00
2026-04-27 11:17:59 -07:00
2026-04-24 03:04:42 -07:00
2026-04-18 22:50:55 -07:00
2026-04-16 16:50:15 -07:00
2026-04-27 06:22:25 -07:00
2026-04-27 08:35:50 -07:00
2026-04-26 21:08:19 -07:00
2026-04-27 11:49:02 -05:00
2026-04-26 06:31:37 -07:00
2026-04-27 03:38:39 -07:00
2025-10-01 23:29:25 +00:00
2026-04-27 11:17:59 -07:00
2026-03-17 02:53:33 -07:00
2026-04-21 01:56:35 -07:00
2026-04-21 06:06:16 -07:00
2026-04-24 14:32:21 -07:00
2026-04-21 08:00:00 -07:00
2026-04-22 13:20:02 -07:00
2026-04-13 10:50:24 -07:00
2026-04-12 03:53:30 -07:00
2026-03-15 21:59:53 -07:00
2026-04-12 16:36:11 -07:00
2026-04-26 19:01:26 -07:00
2026-04-26 21:07:15 -05:00
2026-04-02 15:33:51 -07:00
2026-04-11 23:12:11 -07:00
2026-03-29 15:47:19 -07:00
2026-04-20 12:23:05 -07:00
2026-04-19 22:44:47 -07:00
2026-03-24 08:19:23 -07:00
2026-04-07 17:59:42 -07:00
2026-04-22 14:42:32 -07:00
2026-04-25 22:13:12 -07:00
2026-04-07 22:23:28 -07:00
2026-03-30 17:34:43 -07:00
2026-04-17 00:20:40 -07:00
2026-04-17 13:31:53 -07:00
2026-04-08 00:41:36 -07:00
2026-03-19 15:16:35 +01:00
2026-04-10 13:37:45 -07:00
2026-04-17 14:21:22 -07:00
2026-02-26 13:54:20 +03:00
2026-04-25 04:50:14 -07:00
2026-04-20 12:23:05 -07:00
2026-04-20 12:23:05 -07:00
2026-04-20 23:20:33 -07:00
2026-04-27 11:49:02 -05:00
2026-03-30 13:28:10 +09:00
2026-04-26 18:50:49 -07:00
2026-04-26 18:50:49 -07:00
2026-04-26 18:50:49 -07:00
2026-04-26 18:50:49 -07:00