Provider Errors

When a request fails, the reply shows what went wrong instead of staying empty. Most errors come from the provider: a key, a bill, a model name, a usage limit or a busy server.

Reading An Error

The error appears in place of the answer, usually as the provider's name followed by its own message. If a provider fails partway through an answer, that error is shown too.

Before changing anything:

  1. Try again. A brief failure at NanoGPT or another OpenAI-compatible provider, before the answer starts, is already retried once on its own. If it still fails, wait a moment.
  2. Try another model. If the same request works elsewhere, the problem is the first provider's setup or account.

When the provider sends no useful message, Fluent explains its status code:

CodeMeaning
400Bad request
401Invalid API key
402Payment required
403Access forbidden
404Model not found
429Rate limit exceeded
500Server error
502Bad gateway
503Service unavailable
504Gateway timeout

401 And 403

Check these first:

  • The API key is saved for the correct provider in Settings → Models. The API key section shows whether Fluent could verify it
  • The key is still valid
  • The provider account has access to the selected model
  • The endpoint is the correct one for that provider

401 usually means the key is wrong or expired. 403 usually means the key exists but does not have access to that model or route.

Most common resolution is to recreate the API key, ensuring it has the correct project and/or organization – if that applies.

402

402 is usually a billing problem.

Check the provider account directly for:

  • Missing credits
  • Failed billing
  • Paused usage
  • Account restrictions

For NanoGPT, the NanoGPT section in Settings → Models shows your balance, with a Top up link.

404

404 usually means the selected model is not available on that provider.

Check:

  • The exact model name
  • Whether the model exists on that provider
  • Whether your account has access to it

429

429 means rate limiting.

Wait a moment and try again. If it happens often:

  • Reduce heavy parallel requests, such as a large Council
  • Use a faster or lighter model
  • Switch to another provider for that workflow

400

400 is a general request error.

This can mean:

  • Malformed input
  • Unsupported parameter
  • Model-specific restriction
  • Partial incompatibility on a custom OpenAI-compatible endpoint

If the same task works on one provider or model, but fails with 400 on another, the difference is usually provider compatibility or configuration.

The most common fix is a model setting. In Settings → Models, click the sliders button on the model's card and try changing:

SettingTry
Use structured JSONOff, if the provider returns errors or empty results
Use streamingOff, if the provider doesn't support streaming
Use toolsOff, if the model can't call tools
ReasoningOff, if the model doesn't support reasoning

What works depends on the model.

5xx

500, 502, 503, and 504 usually indicate temporary provider-side problems.

Typical causes:

  • Provider instability
  • Maintenance
  • Timeouts
  • Temporary overload

At NanoGPT and other OpenAI-compatible providers, Fluent has already sent the request a second time if the first try failed before the answer started. Try again later or switch to another model temporarily.

Subscription Providers

Claude Code, Codex, Antigravity and GitHub Copilot run through their own command-line tools and your plan, so their errors are about installation, sign-in and plan limits. Each message names the provider:

MessageWhat to do
"… isn't installed"Open Settings → Models, choose the provider, click Details… and then Install CLI
"You're not signed in to …"Open Settings → Models, choose the provider, click Details…, then Sign In and approve in your browser
"Your … subscription has hit its usage limit"Wait for the limit to reset, or switch models. Details… on the provider's page in Settings shows each limit and when it resets
"Your account isn't allowed to use …"Your plan or organization doesn't allow it. For GitHub Copilot, check github.com/settings/copilot: an organization admin may need to enable it
"This … model doesn't support reasoning"Set Reasoning to Off for that model, or pick another model
"… stopped after 3 minutes without model output or tool progress"Neither the model nor its tools did anything for 3 minutes, so Fluent stopped waiting. Try again, or split the request into smaller ones
"… click Update CLI"Open Settings → Models, choose the provider, click Details… and then Update CLI

Signing out in Settings signs you out of that tool everywhere on your Mac, including Terminal. Your subscription isn't affected.

NanoGPT

NanoGPT serves models from many providers through one account. If one model keeps failing while others work, that model's provider is probably having trouble: pick another model for now.

If requests fail for lack of credit, check your balance in the NanoGPT section of Settings → Models and click Top up.

Local Models And Apple Intelligence

MessageWhat to do
"No local models are downloaded. Please download a model first."Download a model in Settings → Models → Local (MLX)
"Apple Intelligence is disabled"Turn on Apple Intelligence in macOS System Settings
"Apple Intelligence model is downloading"Wait until macOS finishes downloading it
"Device not eligible for Apple Intelligence"Use a local or cloud model instead
"Apple Intelligence requires macOS 26 or later"Update macOS, or use a local or cloud model

Custom Providers

For custom OpenAI-compatible providers, also check:

  • API Base URL, usually ending in /v1
  • The API key, or Optional API key for local servers that don't need one
  • Model list availability
  • Provider-specific compatibility limits

If the same prompt works on a native provider but fails only on one custom endpoint, check the endpoint setup first. See Common Issues.