Skip to main content
OpenAI reasoning model for complex coding, computer use, and professional work, with text and image input. Use the exact model ID gpt-6.1-sol. This is a separate model from gpt-6-sol; changing the ID also requires checking reasoning and tool-call settings.

Model Information

Context and output sizes are model specifications. Effective limits, model availability, and pricing depend on your MixRoute account and route. Hosted tools are not automatically available on every route.

Endpoints and Reasoning

The model defaults to medium reasoning effort. low is the lowest supported level; none and minimal are invalid. For max, use Responses rather than the Chat Completions route.
Do not use reasoning_effort=“none” as a workaround for Chat Completions tool errors. GPT 6.1 Sol does not accept none. Move tool requests to /v1/responses and use reasoning.effort=“low” or a higher supported level.
Omit temperature, top_p, and top_logprobs. Also omit logprobs in Chat Completions and message.output_text.logprobs from Responses include. These sampling/log-probability controls are incompatible with this model’s reasoning modes.

Responses Request

Set MIXROUTE_API_KEY before calling.

Python

Chat Completions Without Tools

Use messages rather than input, reasoning_effort rather than the nested reasoning object, and max_completion_tokens rather than max_output_tokens. Read the text from choices[0].message.content. Do not attach tools to this model on this endpoint.

Function Calling

A function call appears as a function_call item in output, with name, JSON-encoded arguments, and call_id. The application validates the arguments and runs its own function; declaring a tool does not execute it on the server. For a stateless follow-up, append the complete returned output array to the conversation input, followed by a function_call_output item with the matching call_id and a string output. Preserve any reasoning items and encrypted content unchanged. Set tool_choice back to "auto" on the follow-up so the model can answer instead of being forced to call the function again. Do not assume output[0] is a text message; the Python SDK provides response.output_text for text responses.

Migrating from GPT 6 Sol

  1. Change model to gpt-6.1-sol; keep the old ID only when you intend to use GPT 6 Sol.
  2. Replace none or minimal with low, or choose a higher supported reasoning level.
  3. Move function-tool workflows from Chat Completions to Responses and use the Responses input/tool formats.
  4. Remove unsupported sampling parameters. For maximum reasoning effort, use Responses.