Fosowl/agenticSeek · error · Exception

MiniMax is not available for local use. Change config.ini

Error message

MiniMax is not available for local use. Change config.ini

What it means

minimax_fn refuses to run when self.is_local is True. MiniMax is a hosted cloud API accessed via its OpenAI-compatible endpoint, so a local configuration is rejected immediately with 'MiniMax is not available for local use. Change config.ini'.

Source

Thrown at sources/llm_provider.py:457

            raise Exception(f"OpenRouter API error: {str(e)}") from e

    def minimax_fn(self, history, verbose=False):
        """
        Use MiniMax API to generate text via OpenAI-compatible interface.

        Supported models:
        - MiniMax-M3: Latest flagship model with enhanced reasoning and coding (default)
        - MiniMax-M2.7: Previous flagship, kept for compatibility
        - MiniMax-M2.7-highspeed: High-speed version of M2.7 for low-latency scenarios

        Note: temperature must be in range (0.0, 1.0], default is 1.0
        """
        load_dotenv()
        base_url = os.getenv("MINIMAX_BASE_URL", "https://api.minimax.io/v1")

        client = OpenAI(api_key=self.api_key, base_url=base_url)
        if self.is_local:
            raise Exception("MiniMax is not available for local use. Change config.ini")
        try:
            response = client.chat.completions.create(
                model=self.model,
                messages=history,
                temperature=1.0,
            )
            if response is None:
                raise Exception("MiniMax response is empty.")
            thought = response.choices[0].message.content
            if verbose:
                print(thought)
            return thought
        except Exception as e:
            raise Exception(f"MiniMax API error: {str(e)}") from e

    def dsk_deepseek(self, history, verbose=False):
        """
        Use: xtekky/deepseek4free

View on GitHub (pinned to ae57a23577)

Solutions

  1. Set is_local=False for the minimax provider in config.ini
  2. Confirm the provider block name matches the provider being used so the right flags apply
  3. If offline inference is needed, switch to a genuinely local provider (LM Studio, Ollama)

Example fix

// before (config.ini)
[minimax]
is_local = True
// after
[minimax]
is_local = False
Defensive patterns

Strategy: validation

Validate before calling

cfg = config['minimax']
if cfg.get('is_local', False):
    raise SystemExit("minimax is cloud-only; set is_local = False in config.ini")
if not os.getenv('MINIMAX_API_KEY'):
    raise SystemExit("MINIMAX_API_KEY not set")

Try / catch

try:
    out = provider.minimax_fn(history)
except Exception as e:
    if 'not available for local use' in str(e):
        log.error("Set is_local = False for minimax in config.ini")
    raise

Prevention

When it happens

Trigger: Calling minimax_fn while the minimax provider in config.ini has is_local set to True (or the provider is incorrectly resolved as local).

Common situations: User set a global local-mode flag applying to all providers; user copied a local provider block (e.g. lmstudio) and changed only the provider name; misunderstanding that MiniMax's OpenAI-compatible base URL means it can run locally.

Related errors


AI-assisted analysis of Fosowl/agenticSeek@ae57a23577 (2026-08-30). Data as JSON: /api/errors/1e0456c056ad976c. Report an issue: GitHub.