AiHummer docs
v1.0.x
RU EN

BYOK & LLM providers

v1.0.x · updated 2026-06-26

AiHummer never requires a paid model. Out of the box it runs on free and local models and a Codex/ChatGPT-subscription transport, and if no model is wired at all the runtime falls back to a deterministic mock so the platform still starts and is testable. When you do want a specific model, you bring it yourself — either as a process-wide configuration or, per tenant, with BYOK (“bring your own key”).

Supported LLM providers

AiHummer speaks to any provider that exposes an OpenAI-style chat API, plus Anthropic and the ChatGPT-subscription transport. In practice that covers:

ProviderHow it connectsNotes
AnthropicNative Anthropic APIClaude models
OpenAIOpenAI chat API
Any OpenAI-API-standard endpointOpenAI-compatible gateway URLLocal models, OpenRouter, Gemini’s OpenAI-compatible API, etc.
Codex / ChatGPT-subscription transportSubscription-based transportUses a ChatGPT subscription rather than a metered API key

[!WARNING] No paid model API is ever mandatory. AiHummer works on free/local models and the Codex/ChatGPT-subscription transport, and if no model is configured the runtime uses a deterministic mock — the gateway still starts and responds. BYOK and paid keys are entirely optional.

Wiring a model with environment variables

A model is selected with four environment variables. Set the provider and model, point at a gateway URL for OpenAI-compatible endpoints, and supply a key only if the endpoint needs one:

AIHUMMER_LLM_PROVIDER=openai
AIHUMMER_LLM_MODEL=gpt-4o-mini
AIHUMMER_LLM_GATEWAY_URL=https://api.openai.com/v1
AIHUMMER_OPENAI_API_KEY=sk-...

For a local OpenAI-compatible server, point the gateway URL at it and the key is usually unnecessary:

AIHUMMER_LLM_PROVIDER=openai
AIHUMMER_LLM_MODEL=qwen2.5-instruct
AIHUMMER_LLM_GATEWAY_URL=http://127.0.0.1:8080/v1

If AIHUMMER_LLM_PROVIDER / AIHUMMER_LLM_MODEL are absent, the deterministic mock is used.

BYOK: per-tenant keys

Where the environment variables configure a single process-wide model, BYOK lets each tenant supply its own LLM credentials. BYOK keys are managed from the admin API:

GET  /v1/admin/byok
POST /v1/admin/byok

BYOK keys are stored in the encrypted vault, just like every other credential — they are never written to logs or surfaced in the model context. This is what lets a multitenant deployment keep each customer’s model billing and key material fully separate.

Choosing between env and BYOK

  • Use the AIHUMMER_LLM_* environment variables for a single-tenant or default model that the whole gateway should use.
  • Use BYOK when different tenants must use different keys, different providers, or be billed separately — the per-tenant key overrides the default for that tenant.

[!TIP] Because any OpenAI-API-standard endpoint is accepted, you can put a local model server, OpenRouter, or a Gemini OpenAI-compatible endpoint behind AIHUMMER_LLM_GATEWAY_URL without changing anything else in AiHummer.

How this relates to the rest of the access model

BYOK keys are model credentials and live in the same encrypted vault as Connections and shared/personal secrets. The difference is scope: BYOK answers which model and key this tenant uses, while the personal vs shared scope answers whose credentials a given tool call runs with.

Where to next