Models

The model catalogue, credit multipliers, context windows and how availability is managed.

Reading the catalogue

The Models page and GET /api/v1/models list every enabled model with:

  • id — pass it as model.
  • provider — bedrock or deepseek.
  • input_credit_multiplier / output_credit_multiplier — credits per 1,000 tokens.
  • context_window and max_output_tokens — limits. A larger max_tokens is clamped to the model's cap before the call.

Availability

Administrators enable models as providers make them available. Calling a disabled model returns 422 MODEL_DISABLED. The list is always the source of truth: do not hardcode it.

Parameters that a model does not support

Some models reject a parameter (for example temperature on the newest Claude generation). Swarm retries once without it and reports what was dropped in swarm.dropped_params and never silently.

Reasoning effort

Send reasoning_effort (Chat Completions) or reasoning.effort (Responses). It is forwarded where the provider has an equivalent; for Claude on Bedrock it maps to a thinking budget (low 1024, medium 4096, high 16384 tokens); if a model has no equivalent it is reported as dropped.

Tools

Function schemas, tool_choice and prior tool messages are forwarded, and tool calls are parsed from both streaming and non-streaming responses. Free-form text is never interpreted as a tool call.

Source of truth: the Swarm repository