Chat completion
chat_completeRun chat completions on any Hubris model with full OpenAI API parity, including tool calls and structured output. Delegate subtasks to cheaper or stronger models, billed per token.
Instructions
Run a chat completion on any model in the Hubris catalogue and get the answer back. Full parity with POST /v1/chat/completions — same request shape, same response shape, including tool calls, structured output and reasoning. Streaming is not available here: MCP tool calls are synchronous, and stream is ignored if you pass it.
This is how you reach a model you cannot reach otherwise — pick an id with models_search, then call it here. Useful for delegating a subtask to a cheaper or a stronger model than the one you are running on.
The call spends real money from the account balance: it is billed per token at the catalogue price, in rubles. balance_get shows what is left.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Best-effort determinism. Not every model honours it. | |
| stop | No | Up to four strings that cut the answer short. | |
| model | Yes | Model id from the catalogue, vendor included and matched exactly, e.g. "anthropic/claude-sonnet-5". Short names and names with a trailing date are rejected. Use models_search to find one. | |
| tools | No | Function-calling tools, OpenAI shape. Model must have the "tools" capability. | |
| messages | Yes | Conversation so far, oldest first. | |
| reasoning | No | Extended thinking on models with the "reasoning" capability: {effort:"low"|"medium"|"high"}, {max_tokens:N}, or {enabled:false} to turn it off. | |
| max_tokens | No | Cap on the length of the answer, in tokens. | |
| web_search | No | Enables built-in web search on models whose capabilities include "web_search". | |
| temperature | No | Sampling temperature, 0–2. Some newer models reject it; leave it out unless you need it. | |
| tool_choice | No | "auto", "none", "required", or a specific function to force. | |
| response_format | No | {type:"json_object"} or {type:"json_schema", json_schema:{…}} to constrain the answer to JSON. |