USD / 1M tokens
- Input
- $1.95
- Cache Read
- $0.25
- Cache Write
- —
- Output
- $5.7
- Context
- 1M
- Max Output
- 128K
- Tool Calling
- ✓ Supported
- Reasoning
- ✓ Supported
- Vision
- ✓ Supported
- Streaming
- ✓ Supported
- JSON mode
- ✓ Supported
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.iteracompute.com/v1",
api_key=os.environ["ITERACOMPUTE_API_KEY"],
)
response = client.chat.completions.create(
model="qwen/qwen3.8-max",
messages=[{"role": "user", "content": "Hello!"}],
)
print(response.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.iteracompute.com/v1",
apiKey: process.env.ITERACOMPUTE_API_KEY,
});
const response = await client.chat.completions.create({
model: "qwen/qwen3.8-max",
messages: [{ role: "user", content: "Hello!" }],
});
console.log(response.choices[0].message.content);curl https://api.iteracompute.com/v1/chat/completions \
-H "Authorization: Bearer $ITERACOMPUTE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen/qwen3.8-max",
"messages": [{"role": "user", "content": "Hello!"}]
}'Catalog updated: 2026-10-27.
Overview
Qwen3.8-Max is served through the IteraCompute OpenAI-compatible API. See the tested Gateway controls below; the official API and this route do not accept every parameter identically.
Tasks and selection tradeoffs
Coding, professional work, research and long-horizon agentic tasks.
Choose your tool
Pricing
Prices in USD per 1M tokens.
Estimate your monthly cost
Uses current Gateway prices and billing rules. An estimate, not a bill.
Text estimates include configured context tiers and cache durations. Image output and tool calls require their actual usage.
Cache-hit share = cache-hit tokens ÷ total input. Changing total input keeps the current share; dragging the slider updates cache-hit tokens. Output includes billable reasoning. Count agent steps and retries as requests.
Estimated monthly cost
—USD / monthQwen3.8-Max
- Uncached input
- —
- Cache read
- —
- Billable output
- —
- Cache writes
- —
Calculation and billing basis
Monthly cost = requests × the current Gateway quote for the selected token usage.
Cached tokens are part of total input, never added on top. Use actual cache-read hits from usage; repeating a prompt does not guarantee a hit. Missing rates are unconfirmed, not $0. Storage and unreported tool fees are excluded. Settle against actual usage and current Console prices.
Usage limits
- Use the context and output limits shown above when configuring clients. Account limits also apply.
- Start with one representative task. Check correctness, actual usage and response time before increasing traffic.
API parameters
| Parameters | Usage |
|---|---|
messages[].content | text + image → text |
max_tokens | 128K |
temperaturetop_p | Start with the request example. Adjust temperature or top_p one at a time; omit top_k. |
thinkingreasoningreasoning_effort | Use reasoning=false to turn reasoning off, or reasoning_effort=low to reduce it. Use one control style per request. |
toolstool_choicetool_calls | Define functions in tools and use tool_choice=auto. Execute tool_calls in your application, then return role=tool with the matching tool_call_id. |
response_format | Use response_format={"type":"json_object"} and request JSON in the prompt. Validate the returned JSON and required fields in your application. |
streamstream_options.include_usage | stream=true, stream_options={"include_usage":true} |
Input and requested output share the context budget. Reasoning tokens count toward output usage.
{
"model": "qwen/qwen3.8-max",
"messages": [
{
"role": "user",
"content": "Hello!"
}
],
"max_tokens": 512,
"reasoning": false,
"stream": true,
"stream_options": {
"include_usage": true
}
}from openai import OpenAI
client = OpenAI(
api_key="ITERACOMPUTE_API_KEY",
base_url="https://api.iteracompute.com/v1",
)
stream = client.chat.completions.create(
model='qwen/qwen3.8-max',
messages=[{'role': 'user', 'content': 'Hello!'}],
max_tokens=512,
stream=True,
stream_options={'include_usage': True},
extra_body={'reasoning': False},
)
for chunk in stream:
print(chunk.model_dump_json(exclude_none=True))
SDK extra_body merges its entries into the HTTP body. When the raw request itself contains an extra_body object, preserve that object as nested extra_body in the SDK example.
Response fields and tool results
choices[0].message.contentdelta.content- Final text; concatenate streamed fragments.
reasoning_content- Optional reasoning text. Preserve it in assistant history when required; its absence does not prove thinking was disabled.
tool_calls[].function.argumentstool_call_id- Parse arguments as JSON, execute the function, and return role=tool with the original call ID.
usagefinish_reason[DONE]- Check final usage and the stream terminal. length means truncation; HTTP 200 alone is not successful completion.
error.typeerror.codeHTTP status- Read the error code and message. For rate limits, honor Retry-After and avoid parallel retries.
Checked parameter constraints
| Parameters | Usage |
|---|---|
max_tokensmax_completion_tokensmax_output_tokens | Chat uses max_tokens or max_completion_tokens; Responses uses max_output_tokens. Use positive integers within Gateway limits. |
temperaturetop_p | temperature: 0–2; top_p: greater than 0 and at most 1. Start with the model defaults. |
2026-10-26 · Official parameter references
API
- Base URL
https://api.iteracompute.com/v1- Endpoint
POST /v1/chat/completions- Model ID
qwen/qwen3.8-max- Authentication
Authorization: Bearer ITERACOMPUTE_API_KEY
FAQ
How do I use Qwen3.8-Max with the OpenAI SDK?
Set base_url to https://api.iteracompute.com/v1 and model to qwen/qwen3.8-max. Authenticate with your IteraCompute API key.
What does Qwen3.8-Max cost?
See the pricing section for current input, cached-input and output rates in USD per 1M tokens. Check the refresh time before use.
What context length is available?
See the summary above for the context and maximum output available through this API. Input and requested output share the context budget.
Ready for your first request?
Create your key, choose a tool and get a non-empty first reply.