Poolside: Laguna S 2.1 (free)
Poolside Laguna S 2.1 is a text model for agentic coding and long-horizon work, with 118B total and about 8B active parameters. It combines a 1,048,576-token model context with native tool use and interleaved reasoning; preserving prior thinking helps it continue effectively across tool calls.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionspoolside/laguna-s-2.1:free - Ailoot Ultra · Anthropic Messages
POST /v1/messagespoolside/laguna-s-2.1: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.
Poolside Laguna S 2.1 is a mixture-of-experts language model designed for agentic coding and long-horizon work. It has 118B total parameters and about 8B active per token, placing it between the smaller Laguna XS 2.1 and larger Laguna M.1 in the manufacturer’s series. The model processes text and produces text, code, reasoning and tool-call requests in a tool-connected application.
Its architecture combines global and sliding-window attention across 48 layers: 12 global layers and 36 sliding-window layers. The 512-token sliding window describes local attention within those layers, while the documented model context is 1,048,576 tokens. These are different measurements. The larger context supports tasks that accumulate source files, observations and decisions over many steps. Keep the working objective and meaningful evidence together, and reserve space for subsequent reasoning and the final response within the applicable configuration.
The model’s central purpose is software work that requires persistence, checking and revision. For a repository task, provide the expected behavior, relevant files as text, dependency information and the actual failing output. Ask for a focused result: “Trace the cause of this regression, propose a change that preserves the documented interface, and identify the checks that would distinguish a fix from an unrelated change.” In a tool-connected workflow, give the model the result of each executed check before it chooses the next step.
For optimization work, provide measurements and an explicit objective. An example is: “Use this profile and allocation report to identify a bottleneck. Propose one change, explain the expected effect, and compare it with the baseline after the same measurement is repeated.” This makes a performance claim inspectable. Poolside’s release discusses verification and continued progress as important behaviors, but a persuasive explanation alone does not establish that a revision is faster, correct or complete. Preserve the observations that support keeping or rejecting the change.
Laguna S 2.1 supports interleaved thinking before and between tool calls. The manufacturer recommends preserving reasoning content from earlier assistant messages in subsequent history; dropping those blocks can cause reasoning to stop in follow-up steps. Keep the assistant response, tool-call information and the corresponding tool result together. This helps a longer task continue from its actual state rather than repeatedly reconstructing what was already attempted.
The documented thinking choices are off and max, with max enabled by default in the maker’s described setup. The model determines its thinking budget in that mode; the release does not present separate low, medium and high effort controls. For agentic coding, Poolside recommends enabling thinking and retaining it between steps. State the final artifact and completion criteria explicitly, and distinguish a long reasoning sequence from the completed result. The manufacturer identifies overthinking, especially on competition mathematics, as a substantive limitation.
Tool definitions need particular care. Poolside reports that S 2.1 can initially rely on a familiar tool interface instead of closely following a similar but different schema. It can also produce malformed or incorrectly escaped JSON when a tool argument contains a nested array. Give the actual argument definitions, validate proposed calls, and return a precise error when the call does not match. The maker describes correction through in-context feedback as a way to resolve some of these mismatches. Keep the resulting tool observation available for the next decision.
The manufacturer publishes separate BF16 and quantized variants and an optional DFlash draft model. Those are distinct artifacts and serving recipes, so a quantized checkpoint’s memory use or speculative-decoding performance should not be assumed from the general model name. For ordinary text work, prepare source code, command output and document extracts as readable text. The release notes the model’s lack of vision capability; a screenshot needs a textual observation or an appropriate external inspection step before it can support the analysis.
Request a final deliverable that identifies the changed artifact, the important decisions, the observed checks and any unresolved condition. For a code review, connect findings to the relevant source and show why each issue affects behavior. For a repair, separate the proposed patch from a patch whose behavior was actually checked. Retaining reasoning and tool history helps the model work through the task, while the final artifact and recorded results establish what was accomplished.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions poolside/laguna-s-2.1:free
poolside/laguna-s-2.1:freeOverview
Poolside Laguna S 2.1 is a text model for agentic coding and long-horizon work, with 118B total and about 8B active parameters. It combines a 1,048,576-token model context with native tool use and interleaved reasoning; preserving prior thinking helps it continue effectively across tool calls.
- 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
- 262,144 tokens
- Maximum output
- 32,768 tokens
- Output format
- JSON
| Field | Type | Requirement | Values & limits | Default |
|---|---|---|---|---|
Fieldmodel | Typestring | RequirementRequired | Values & limits poolside/laguna-s-2.1:free | Default— |
Fieldmessages | Typearray | RequirementRequired | Values & limits | Default— |
Fieldstream | Typeboolean | RequirementOptional | Values & limits false | Defaultfalse |
Fieldmax_tokens | Typeinteger | RequirementOptional | Values & limits Minimum: 1 Maximum: 32,768 | Default— |
Fieldmax_completion_tokens | Typeinteger | RequirementOptional | Values & limits Minimum: 1 Maximum: 32,768 | 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 262144 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": "poolside/laguna-s-2.1: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 poolside/laguna-s-2.1:free
Method path aliases
Use the method paths shown above.
Related caller IDs
Ailoot Ultra · Anthropic Messages POST /v1/messages poolside/laguna-s-2.1:free
poolside/laguna-s-2.1:freeOverview
Poolside Laguna S 2.1 is a text model for agentic coding and long-horizon work, with 118B total and about 8B active parameters. It combines a 1,048,576-token model context with native tool use and interleaved reasoning; preserving prior thinking helps it continue effectively across tool calls.
- Accepted inputs
- Text
- Results
- Text
Available in Ailoot · inputs & methods
Ailoot Ultra · Anthropic Messages POST /v1/messages
- Input types
text- Output types
text- Context
- 262,144 tokens
- Maximum output
- 32,768 tokens
- Output format
- JSON
| Field | Type | Requirement | Values & limits | Default |
|---|---|---|---|---|
Fieldmodel | Typestring | RequirementRequired | Values & limits poolside/laguna-s-2.1: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: 32,768 | 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 262144 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": "poolside/laguna-s-2.1: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 poolside/laguna-s-2.1:free
Method path aliases
Use the method paths shown above.
Related caller IDs
FAQ · Poolside: Laguna S 2.1 (free)
- What inputs and results are available?
POST /v1/chat/completions·poolside/laguna-s-2.1:free:text→textPOST /v1/messages·poolside/laguna-s-2.1:free:text→text- Which fields does the request use?
POST /v1/chat/completions·poolside/laguna-s-2.1:free:model,messages,stream,max_tokens,max_completion_tokens,n,temperature,top_p,seed,stop,frequency_penalty,presence_penalty,userPOST /v1/messages·poolside/laguna-s-2.1:free:model,messages,stream,system,max_tokens,temperature,top_p,top_k,stop_sequences,metadata- What limits apply?
POST /v1/chat/completions·poolside/laguna-s-2.1:free:ctx:262144;max_out:32768;max_tokens.minimum:1;max_tokens.maximum:32768;max_completion_tokens.minimum:1;max_completion_tokens.maximum:32768;n.minimum:1;n.maximum:128POST /v1/messages·poolside/laguna-s-2.1:free:ctx:262144;max_out:32768;max_tokens.minimum:1;max_tokens.maximum:32768