Thinking Machines: Inkling (free)
Inkling is an open-weight multimodal model for general reasoning, coding and agentic tool use. It combines text, images and audio in a large context, with controllable thinking effort and written outputs for source analysis, code work and conversational applications.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsthinkingmachines/inkling:free - Ailoot Ultra · Anthropic Messages
POST /v1/messagesthinkingmachines/inkling:free
About the model
This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.
Inkling is Thinking Machines Lab’s open-weight multimodal model for reasoning, coding, conversation and agentic applications. It accepts text, images and audio and returns text. Its Mixture-of-Experts design has 975 billion total parameters and 41 billion active, making it the larger model in the family. Inkling-Small is a separate 276-billion-parameter model with 12 billion active, rather than a setting that changes Inkling’s response length.
For a substantial code task, provide the relevant repository material, observed behavior and desired result. Ask the model to trace the responsible path, propose a change and report the evidence from checks that actually ran in the connected environment. For a document comparison, label the source sections and request the relevant differences, their supporting evidence and any unanswered question. The intended applications include coding assistants, chatbots, retrieval-augmented generation and tool-using agents, with the final result shaped for the application that consumes it.
Inkling supports up to one million context tokens. Use that space to keep substantial source material and important conversation facts together, while organising it around a specific question. Distinguish the source facts from assumptions and leave room for the complete written artifact. The larger context supports working across an extensive collection; it does not turn the answer into a live view of a system whose current information has not been supplied.
Thinking effort is a continuous control from 0.0 inclusive to below 1.0. The producer’s starting presets are none 0.0, minimal 0.1, low 0.2, medium 0.7, high 0.9 and xhigh 0.99, with high as the renderer default. Effort and the generation-token budget are independent. Higher effort can encourage more reasoning and require more space before the final answer, while none conditions toward no reasoning without enforcing a hard restriction. Choose a value that fits the assignment, and make the expected artifact and completion condition explicit.
Vision input supports image description, questions about visible content, charts, diagrams and mathematical visual reasoning. For good performance, use image dimensions between 40 and 4,096 pixels. Keep the relevant labels and diagram context legible. Inkling can use a configured Python tool to zoom, crop or inspect an image programmatically, connecting visual observations with code-based reasoning. A useful chart answer preserves the observed values and shows how they support the conclusion, rather than assuming a crop or calculation happened merely because it was proposed.
Audio input uses WAV sampled at 16 kHz, and the maker recommends recordings within 20 minutes for optimal performance. This is a preparation recommendation. Inkling can transcribe speech, follow spoken instructions, answer questions about recordings and reason over longer-form audio. Provide the relevant recording together with the written question and any reference material needed to interpret it. A meeting-related artifact can separate spoken facts from a later summary or interpretation. The model produces text, so its audio understanding is distinct from synthesising a spoken reply.
For a tool-based assignment, describe the available operations and their arguments and preserve the actual observations returned by the application. A search result can supply current evidence; a calculation can supply numerical work; a file operation can establish the contents being reviewed. The model’s proposed action and the executed result are separate parts of the conversation. Keep a final response connected to those observations, especially when it suggests a code change or a next application step.
Inkling was trained for calibration and instruction following, including expressing uncertainty when an answer is not established. For an evidence-based forecast or analysis, ask for the assumptions, evidence and unresolved conditions in the written result. For extraction, define how an absent value should be represented rather than requiring every field to contain an invented fact. These instructions make a result useful for review without treating confidence or a long reasoning process as proof of correctness.
Open weights support fine-tuning and downstream integration. A specialised model is developed from representative examples and a target behavior, while an ordinary inference request supplies context for the present task. The producer demonstrates customisation as a separate workflow; a normal answer does not silently switch to new weights. Preserve the original evidence and requested constraints with the final artifact so a follow-up can revise one fact, refine the wording or inspect a different code path while keeping the same assignment coherent.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions thinkingmachines/inkling:free
thinkingmachines/inkling:freeOverview
Inkling is an open-weight multimodal model for general reasoning, coding and agentic tool use. It combines text, images and audio in a large context, with controllable thinking effort and written outputs for source analysis, code work and conversational applications.
- Accepted inputs
- Text
- Results
- Text
Available in Ailoot · inputs & methods
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Input types
text- Output types
text- Context
- 1,048,576 tokens
- Maximum output
- 262,144 tokens
- Output format
- JSON
| Field | Type | Requirement | Values & limits | Default |
|---|---|---|---|---|
Fieldmodel | Typestring | RequirementRequired | Values & limits thinkingmachines/inkling:free | Default— |
Fieldmessages | Typearray | RequirementRequired | Values & limits | Default— |
Fieldstream | Typeboolean | RequirementOptional | Values & limits false | Defaultfalse |
Fieldmax_tokens | Typeinteger | RequirementOptional | Values & limits Minimum: 1 Maximum: 262,144 | Default— |
Fieldmax_completion_tokens | Typeinteger | RequirementOptional | Values & limits Minimum: 1 Maximum: 262,144 | Default— |
Fieldn | Typeinteger | RequirementOptional | Values & limits Minimum: 1 Maximum: 128 | Default— |
Fieldtemperature | Typenumber | RequirementOptional | Values & limits | Default— |
Fieldtop_p | Typenumber | RequirementOptional | Values & limits | Default— |
Fieldseed | Typeinteger | RequirementOptional | Values & limits | Default— |
Fieldstop | Type | RequirementOptional | Values & limits | Default— |
Fieldfrequency_penalty | Typenumber | RequirementOptional | Values & limits | Default— |
Fieldpresence_penalty | Typenumber | RequirementOptional | Values & limits | Default— |
Fielduser | Typestring | RequirementOptional | Values & limits | Default— |
Method parameters and lifecycle
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, messages |
Parameteroptional | Contractstream, max_tokens, max_completion_tokens, n, temperature, top_p, seed, stop, frequency_penalty, presence_penalty, user |
Parametermaterial_types | Contracttext |
Parameterconditions | ContractUse literal text messages only. Cache controls, tools, image/audio/video content and streamed responses are unavailable for this method., The complete encoded JSON request must not exceed 1048576 bytes. |
Lifecycle: synchronous_json
Pricing
Tariff references do not add request options. Supported parameters are listed for the selected method.
- Fast mode
- Standard rate When fast mode is selected
- Flex mode
- Standard rate When flex mode is selected
- Maximum reasoning effort
- Standard rate When maximum reasoning effort uses the default adjustment
- Explicit cache pricing
- Not enabled When explicit cache is requested
- Text-only zero rates
- Text input and output only. Cache, tools, media and streaming are unavailable. For text-only input and output
Ailoot rates
Prices by configuration
| Configuration | Rate schedule | Charge |
|---|---|---|
| ConfigurationBase token rates | Rate scheduleBase rate | Charge Input · Input tokens $0 / 1K tokens Output · Output tokens $0 / 1K tokens Input · Cache read — / 1K tokens Input · Cache write — / 1K tokens Input · Cache write, 1 hour — / 1K tokens |
Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. How reservation and settlement work →
Example requests
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "thinkingmachines/inkling:free", "messages": [{"role": "user", "content": "Summarize the supplied text in three concise points."}], "stream": false}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
# Submit once. Retain the complete result, original identifiers and every response header.
Receive and save results
Ailoot Ultra · OpenAI Chat
JSON
Keep all completed results
Keep every complete returned response, file and content part.
Retain the complete response, all actual results, original identifiers, usage and response headers.
If the original response needs checking
Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.
Aliases
Model aliases
Ailoot Ultra thinkingmachines/inkling:free
Method path aliases
Use the method paths shown above.
Related caller IDs
Ailoot Ultra · Anthropic Messages POST /v1/messages thinkingmachines/inkling:free
thinkingmachines/inkling:freeOverview
Inkling is an open-weight multimodal model for general reasoning, coding and agentic tool use. It combines text, images and audio in a large context, with controllable thinking effort and written outputs for source analysis, code work and conversational applications.
- Accepted inputs
- Text
- Results
- Text
Available in Ailoot · inputs & methods
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Input types
text- Output types
text- Context
- 1,048,576 tokens
- Maximum output
- 262,144 tokens
- Output format
- JSON
| Field | Type | Requirement | Values & limits | Default |
|---|---|---|---|---|
Fieldmodel | Typestring | RequirementRequired | Values & limits thinkingmachines/inkling:free | Default— |
Fieldmessages | Typearray | RequirementRequired | Values & limits | Default— |
Fieldstream | Typeboolean | RequirementOptional | Values & limits false | Defaultfalse |
Fieldsystem | Typestring | RequirementOptional | Values & limits | Default— |
Fieldmax_tokens | Typeinteger | RequirementRequired | Values & limits Minimum: 1 Maximum: 262,144 | Default— |
Fieldtemperature | Typenumber | RequirementOptional | Values & limits | Default— |
Fieldtop_p | Typenumber | RequirementOptional | Values & limits | Default— |
Fieldtop_k | Typeinteger | RequirementOptional | Values & limits | Default— |
Fieldstop_sequences | Typearray | RequirementOptional | Values & limits | Default— |
Fieldmetadata | Typeobject | RequirementOptional | Values & limits | Default— |
Method parameters and lifecycle
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, messages, max_tokens |
Parameteroptional | Contractstream, system, temperature, top_p, top_k, stop_sequences, metadata |
Parametermaterial_types | Contracttext |
Parameterconditions | ContractUse literal text messages only. Cache controls, tools, image/audio/video content and streamed responses are unavailable for this method., The complete encoded JSON request must not exceed 1048576 bytes. |
Lifecycle: synchronous_json
Pricing
Tariff references do not add request options. Supported parameters are listed for the selected method.
- Fast mode
- Standard rate When fast mode is selected
- Flex mode
- Standard rate When flex mode is selected
- Maximum reasoning effort
- Standard rate When maximum reasoning effort uses the default adjustment
- Text-only zero rates
- Text input and output only. Cache, tools, media and streaming are unavailable. For text-only input and output
Ailoot rates
Prices by configuration
| Configuration | Rate schedule | Charge |
|---|---|---|
| ConfigurationBase token rates | Rate scheduleBase rate | Charge Input · Input tokens $0 / 1K tokens Output · Output tokens $0 / 1K tokens Input · Cache read — / 1K tokens Input · Cache write — / 1K tokens Input · Cache write, 1 hour — / 1K tokens |
Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. How reservation and settlement work →
Example requests
Ailoot Ultra · Anthropic Messages
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "thinkingmachines/inkling:free", "messages": [{"role": "user", "content": "Summarize the supplied text in three concise points."}], "stream": false, "max_tokens": 256}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
# Submit once. Retain the complete result, original identifiers and every response header.
Receive and save results
Ailoot Ultra · Anthropic Messages
JSON
Keep all completed results
Keep every complete returned response, file and content part.
Retain the complete response, all actual results, original identifiers, usage and response headers.
If the original response needs checking
Preserve the original response, headers and X-Client-Request-ID. An uncertain outcome does not authorize another creation.
Aliases
Model aliases
Ailoot Ultra thinkingmachines/inkling:free
Method path aliases
Use the method paths shown above.
Related caller IDs
FAQ · Thinking Machines: Inkling (free)
- What inputs and results are available?
POST /v1/chat/completions·thinkingmachines/inkling:free:text→textPOST /v1/messages·thinkingmachines/inkling:free:text→text- Which fields does the request use?
POST /v1/chat/completions·thinkingmachines/inkling:free:model,messages,stream,max_tokens,max_completion_tokens,n,temperature,top_p,seed,stop,frequency_penalty,presence_penalty,userPOST /v1/messages·thinkingmachines/inkling:free:model,messages,stream,system,max_tokens,temperature,top_p,top_k,stop_sequences,metadata- What limits apply?
POST /v1/chat/completions·thinkingmachines/inkling:free:ctx:1048576;max_out:262144;max_tokens.minimum:1;max_tokens.maximum:262144;max_completion_tokens.minimum:1;max_completion_tokens.maximum:262144;n.minimum:1;n.maximum:128POST /v1/messages·thinkingmachines/inkling:free:ctx:1048576;max_out:262144;max_tokens.minimum:1;max_tokens.maximum:262144