Skip to main content
Cogito supports OpenAI-compatible function calling on every model in the catalog. Define your tools once, and the model picks which to call, in what order, with which arguments.

Defining tools

Calling

Parallel calls

Models in the catalog can issue multiple calls in one turn. The response’s tool_calls array can contain more than one entry — execute them concurrently and return all results in your next turn.

Reliability

Cogito uses grammar-constrained decoding at the inference engine level. The model can only produce token sequences that match the JSON schema of one of your declared tools — there’s no parsing fallback. Argument JSON is guaranteed valid, even on small models. If the model decides no tool is appropriate, it returns a normal text response with tool_calls: null.

Force a specific tool

Useful when you want to skip the tool selection step.