Skip to content

AI Providers & Models3 min read

OpenAI-Compatible Endpoints

Point at any OpenAI-shaped API

The OpenAI chat-completions API shape has become the industry’s lingua franca — vLLM servers, corporate AI proxies, Azure OpenAI deployments, self-hosted gateways, and countless hosted services all speak it. The OpenAI Compatible provider entry points Nexgile Code at any such endpoint: you supply the URL, the key, and the model id, and optionally teach the product what the model can do.

Use this entry when your target isn’t one of the named providers. (For OpenAI’s own API, use the dedicated OpenAI entry; for LM Studio’s local server, the LM Studio entry adds niceties like speculative decoding.)

Open Settings → Providers, choose OpenAI Compatible, and fill in:

Field Notes
Base URL The endpoint root, e.g. https://llm-proxy.mycorp.internal/v1 or http://localhost:8000/v1
API Key Whatever the endpoint expects as a bearer key; anything non-empty works for servers that don’t check
Model The model id the server knows, e.g. gpt-oss-120b — the picker offers ids fetched from the endpoint’s /models route, and you can type one manually if discovery fails
  • Enable streaming — on by default; disable only for endpoints that can’t stream responses.
  • Include max output tokens — on by default; sends the max-tokens parameter with requests. Turn off for servers that reject it.
  • Enable Reasoning Effort — for endpoints serving reasoning models: sends a reasoning-effort level (Low / Medium / High / Extra High) with each request.
  • R1 format — labelled Enable R1 model parameters in the UI. Adjusts the request format for R1-style reasoning models; turn it on when such a server returns 400 errors or garbled reasoning with the standard format.
  • Azure — check when targeting an Azure OpenAI deployment, and optionally set the Azure API version (a default version is applied if you leave it unchecked).

Corporate proxies often demand extra headers (tenant ids, routing hints, static auth tokens). The Custom Headers section lets you add any number of header name/value pairs that are sent with every request:

X-Org-Tenant: platform-eng
X-Routing-Region: eu-west

Use the + button to add a row, and the remove control to delete one.

Unknown endpoints can’t tell Nexgile Code what their model supports, so the panel includes a model-configuration section where you declare it: context window size, max output tokens, image support, prompt-cache support, and per-token prices (used for the live cost readout in the task header). Sane defaults are applied, but setting the real context window matters — it drives context management, including when automatic condensing kicks in.

  • Missing /v1. Most OpenAI-shaped servers expect the version prefix in the base URL. If you get 404s, http://host:8000/v1 (not http://host:8000) is usually the fix.
  • Model id must match exactly. The server rejects ids it doesn’t serve; copy the id from the endpoint’s own model list.
  • Wrong context window declared. If you claim 128K but the server serves 8K, prompts get truncated server-side and the agent behaves erratically — set the honest value.
  • Tool calling is required. Nexgile Code drives everything through native tool calls. Endpoints or models without function-calling support will not work as agents, even if plain chat works.
  • Streaming quirks. Some proxies buffer or break server-sent events; if responses only ever arrive all-at-once or hang, disable Enable streaming.
  • Slow self-hosted backends. Raise nexgile-code.apiRequestTimeout (default 600 seconds) if big-prompt requests time out.
  • Costs show as zero. Unless you enter prices in the capability section, the task-header cost stays at $0.00 — fine for internal servers, misleading for paid ones.
Base URL: http://gpu-box.internal:8000/v1
API Key: not-used-but-required
Model: openai/gpt-oss-120b
Streaming: enabled
Context: 32768 (set in the model configuration section)

Save it as its own configuration profile (e.g. vllm-lab) so you can switch between it and a hosted frontier profile per task — see Providers Overview.