Thinking Machines: Inkling Small (free)
Inkling-Small is an open-weight multimodal model for coding, tool use and reasoning over text, images and audio. Its controllable thinking effort and large context support focused application tasks with written results, using a smaller active model than Inkling.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsthinkingmachines/inkling-small:free - Ailoot Ultra · Anthropic Messages
POST /v1/messagesthinkingmachines/inkling-small: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-Small is Thinking Machines Lab’s smaller open-weight multimodal model for reasoning, coding, conversation and tool-using applications. It accepts text, images and audio and produces text. Its Mixture-of-Experts design has 276 billion total parameters with 12 billion active, compared with Inkling’s 975 billion total and 41 billion active. Small is a separate released model with a different efficiency and capability balance, not a shorter-output mode of Inkling.
For a code investigation, supply the affected files, observed behavior and the change you need, then ask for the responsible path and a focused correction. A useful final artifact includes the proposed edit and the evidence from any checks the connected application actually ran. For a support assistant, provide the relevant policy and conversation facts and request the next response or missing question. The model’s intended uses include coding assistants, chatbots, retrieval-augmented responses and agentic systems with application tools.
The context window is up to one million tokens. Organise a long repository or document collection with filenames, section labels and a clear question, preserving the facts that a later stage must use. A large window is useful for comparing distant pieces of information, but the requested result should remain specific: a code change, a source-based explanation or extracted fields. New or private information belongs in the supplied evidence or in returned retrieval results rather than being assumed to be part of learned knowledge.
Thinking effort is controllable. The producer family’s guide uses continuous values from 0.0 inclusive to below 1.0, with starting presets none, minimal, low, medium, high and xhigh corresponding to 0.0, 0.1, 0.2, 0.7, 0.9 and 0.99. The producer renderer defaults to high. Higher effort can encourage more reasoning and may need a larger generation budget, but does not guarantee a longer or more accurate answer. A zero setting conditions the model toward no reasoning rather than enforcing a hard absence of reasoning. Choose effort for the task and keep the final output requirement clear.
Images can support visual questions, chart or diagram interpretation and mathematical reasoning from visible information. For good performance, use images whose dimensions are between 40 and 4,096 pixels. Preserve readable labels and explain the detail that matters. With a configured Python tool, the model can combine visual reasoning with cropping, zooming and programmatic inspection of a document or chart. Those operations need execution by the connected tool environment; the written answer should use the observations returned from it.
Audio input is WAV sampled at 16 kHz, with recordings ideally under two minutes for optimal performance. This is a preparation recommendation, not a hard duration guarantee. Use a relevant spoken question or short clip and state whether the written result should transcribe speech, answer a question about the recording or relate its content to other supplied material. The native response is text rather than generated speech. Inkling’s separate recommendation for longer audio should not be transferred to the Small edition.
Tool-using workflows need meaningful tool descriptions, argument definitions and results from the operations the application executes. Keep a lookup result, calculation or file observation distinct from the model’s proposed action. For a chart discrepancy, identify the relevant labels, inspect the supplied values through a calculation tool and request an explanation that cites those values. The model is trained for varied coding and agent harnesses, so the surrounding task and tools should be described rather than left implicit.
The open weights support model research, fine-tuning and integration into downstream products. Inkling-Small’s release follows an earlier preview checkpoint and includes further training for agentic coding; the final model and that preview should retain separate identities. For a specialised extraction or response style, customisation uses representative examples and an explicit target behavior. An ordinary prompt instead supplies context for the current request; it does not create or switch to a newly trained model.
A useful result-review step checks that the proposed code change, transcription, extracted facts or written response matches the supplied evidence. Specify how uncertainty and missing information should appear, particularly for a forecast or factual answer whose source is incomplete. The maker trained Inkling-Small for forecast calibration using reinforcement learning against proper scoring rules on real-world questions, aiming to express confidence that fits the available evidence. Preserve the material and tool observations with the artifact so a follow-up can revise one issue without losing the original task. Inkling-Small’s general multilingual and multimodal capabilities remain distinct from a dedicated speech generator or a guaranteed external-action service.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions thinkingmachines/inkling-small:free
thinkingmachines/inkling-small:free
thinkingmachines/inkling-small:freeOverview
Inkling-Small is an open-weight multimodal model for coding, tool use and reasoning over text, images and audio. Its controllable thinking effort and large context support focused application tasks with written results, using a smaller active model than Inkling.
- 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-small: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-small: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-small:free
Method path aliases
Use the method paths shown above.
Related caller IDs
Ailoot Ultra · Anthropic Messages POST /v1/messages thinkingmachines/inkling-small:free
thinkingmachines/inkling-small:free
thinkingmachines/inkling-small:freeOverview
Inkling-Small is an open-weight multimodal model for coding, tool use and reasoning over text, images and audio. Its controllable thinking effort and large context support focused application tasks with written results, using a smaller active model than Inkling.
- 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-small: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-small: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-small:free
Method path aliases
Use the method paths shown above.
Related caller IDs
FAQ · Thinking Machines: Inkling Small (free)
- What inputs and results are available?
POST /v1/chat/completions·thinkingmachines/inkling-small:free:text→textPOST /v1/messages·thinkingmachines/inkling-small:free:text→text- Which fields does the request use?
POST /v1/chat/completions·thinkingmachines/inkling-small:free:model,messages,stream,max_tokens,max_completion_tokens,n,temperature,top_p,seed,stop,frequency_penalty,presence_penalty,userPOST /v1/messages·thinkingmachines/inkling-small:free:model,messages,stream,system,max_tokens,temperature,top_p,top_k,stop_sequences,metadata- What limits apply?
POST /v1/chat/completions·thinkingmachines/inkling-small: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-small:free:ctx:1048576;max_out:262144;max_tokens.minimum:1;max_tokens.maximum:262144