Adapt

Models

Tested models and providers.

Adapt requires models that support tool calling and structured JSON output. The table below lists models we've tested. The list will be updated as we go.

The Compatible column reflects the non-streaming path (brain.ask, neuron.query, brain.evaluateEvolution). Streaming (brain.askStream, neuron.queryStream, brain.evaluateEvolutionStream) has its own caveats — see the Streaming column. Where the two diverge it usually comes down to weaker structured-output enforcement on the provider's streaming endpoint.

ProviderModelCompatibleStreamingNotes
OpenAIgpt-4o-mini
Googlegemini-2.5-flash
Anthropicclaude-haiku-4-5
OpenRoutergoogle/gemini-2.0-flash-001
OpenRoutergoogle/gemma-4-31b-it
OpenRouterx-ai/grok-4.3✓ (slow)Streaming size-scaled output ~1 min on a 3 KB schema; works, but plan for higher latency.
OpenRouter~openai/gpt-mini-latest
OpenRouter~moonshotai/kimi-latest✓ (very slow)Streaming size-scaled output took 8 minutes on a ~6 KB schema — usable but document the latency for users.
OpenRoutermistralai/ministral-3b-2512
OpenRouternvidia/nemotron-3-nano-omni-30b-a3b-reasoning:freeNo endpoint supports tool_choice.
OpenRouter~anthropic/claude-haiku-latestProvider error on structured output.
OpenRouterqwen/qwen3.6-flashProvider error on both calls.
Together.aideepseek-ai/DeepSeek-V3.1Together doesn't enforce structured output — model truncates large JSON. Same failure in streaming.
Together.aiQwen/Qwen3.5-397B-A17BStreaming-only regression: size-scaled structured output fails to parse on the streaming endpoint.
Together.aiLiquidAI/LFM2-24B-A2BStreaming-only regression: size-scaled structured output schema mismatch on the streaming endpoint.
Together.aiQwen/Qwen3.5-9BStreaming-only regression: size-scaled structured output fails to parse on the streaming endpoint.
Together.aigoogle/gemma-4-31B-itStreaming-only regression: stream terminates mid-response on the size-scaled schema.
LM Studioliquid/lfm2.5-1.2b⚠ unstableDisable the "Structured Output" toggle — server forces json-mode otherwise. Streaming risks runaway generation on the stateful tool flow (eval blew Node's heap on this model). Document a wall-clock guard for users running tiny local models.
llama.cppLiquidAI/LFM2.5-1.2B-Instruct-GGUF?Tool calling works; default llama-server doesn't constrain JSON to the schema. Streaming not yet verified.