Skip to the content

SLK 11M-token contextReasoning

Reasoning AI behind one OpenAI-compatible API.

An OpenAI-compatible API for SLK 1, a long-context reasoning model with tool calling, structured outputs and image input. Pay as you go with prepaid credits.

base_urlhttps://api.milkxi.com/v1
Plate 1SLK 1, surveyed. Heights are token limits; the dashed route is reasoning effort.

01The model

The model, in figures.

Our flagship reasoning model: long context, tool calling, structured outputs and image input.

Model

SLK 1

id
slk-1
alias
slk-latest
Tokens of context
1,048,576
Output tokens, at most32,768 by default
131,072
Reasoning effortmax by default
low · high · max
Per 1M tokensinput / output
$3.45 / $17.25

What it does

  • Reasoning

    Always on. Effort: low, high, max.

  • Tool calling

    Function tools, with parallel calls.

  • Structured outputs

    JSON Schema, strict, or plain JSON.

  • Image input

    Text and images in, text out.

  • Prompt caching

    Automatic, at the cache-read price.

  • Service tiers

    default, flex, priority.

Price per 1M tokens

Input
$3.45
Output
$17.25
Cache read
$0.345
Cache write
$4.3125

In US dollars, excluding VAT.

02Drop-in

Keep your code. Change the base URL.

The API speaks the OpenAI Chat Completions format, so the official OpenAI SDKs work with SLK 1 as they are.

  1. Create a key

    Sign up, add credits and create an API key in the dashboard. It starts with sk-slk-.

  2. Point your client at the API

    Set the base URL of the OpenAI SDK you already use, and pass your key. The rest of your client stays as it is.

  3. Ask for slk-1

    Send the Chat Completions request you already send. Streaming, tool calls and JSON Schema outputs come back in the format your code expects. See what is supported.

curl https://api.milkxi.com/v1/chat/completions \
  -H "Authorization: Bearer $MILKXI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "slk-1",
    "messages": [{"role": "user", "content": "Why is the sky blue?"}]
  }'
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.milkxi.com/v1",
    api_key=os.environ["MILKXI_API_KEY"],
)

response = client.chat.completions.create(
    model="slk-1",
    messages=[{"role": "user", "content": "Why is the sky blue?"}],
)
print(response.choices[0].message.content)
import OpenAI from 'openai';

const client = new OpenAI({
  baseURL: 'https://api.milkxi.com/v1',
  apiKey: process.env.MILKXI_API_KEY,
});

const response = await client.chat.completions.create({
  model: 'slk-1',
  messages: [{ role: 'user', content: 'Why is the sky blue?' }],
});
console.log(response.choices[0].message.content);

03Interaction tone

Choose how it answers. Leave your prompts alone.

Interaction tone shapes the answer without a word of prompt engineering: thorough, brief, or with a summary or key points at the end. Set it once on an API key, or per request.

POST /v1/chat/completions"interaction_tone": "default"

Unchanged: the model's normal answer. Nothing is added to the request.

You

How do I undo my last Git commit?

Reply

Use git reset to move your branch back one commit. The flag decides what happens to the changes that were in it:

git reset --soft HEAD~1   # keep the changes, staged
git reset --hard HEAD~1   # throw the changes away

If the commit is already pushed, use git revert HEAD instead. It adds a new commit that undoes the last one, so nobody else has their history rewritten.

POST /v1/chat/completions"interaction_tone": "detailed"

Thorough. Explains the reasoning, covers edge cases and includes examples where they help.

You

How do I undo my last Git commit?

Reply

A commit moves your branch forward by one step, so undoing it means moving the branch back. git reset does that, and its flag decides what happens to the work that was in the commit:

git reset --soft HEAD~1    # commit undone, changes stay staged
git reset --mixed HEAD~1   # commit undone, changes stay in your files (the default)
git reset --hard HEAD~1    # commit undone, changes deleted

Reach for --soft when you want to fix the message or add a forgotten file and commit again. Use --hard only when you are sure, because it also deletes uncommitted work in tracked files.

Two cases call for a different command. If the commit is already pushed, a reset rewrites history that other people have, so use git revert HEAD: it adds a new commit that reverses the last one. And if all you want is a better message or one more file, git commit --amend does it in a single step.

If you reset by mistake, git reflog lists where the branch has been, and git reset --hard HEAD@{1} takes it back to where it was before.

POST /v1/chat/completions"interaction_tone": "concise"

The shortest complete answer. No preamble, no repetition.

You

How do I undo my last Git commit?

Reply

git reset --soft HEAD~1 keeps the changes, --hard discards them. Already pushed? Use git revert HEAD.

POST /v1/chat/completions"interaction_tone": "summary"

The normal answer, then a short Summary section at the end.

You

How do I undo my last Git commit?

Reply

Use git reset to move your branch back one commit. The flag decides what happens to the changes that were in it:

git reset --soft HEAD~1   # keep the changes, staged
git reset --hard HEAD~1   # throw the changes away

If the commit is already pushed, use git revert HEAD instead. It adds a new commit that undoes the last one, so nobody else has their history rewritten.

Summary

git reset --soft HEAD~1 undoes the last commit and keeps its changes staged, while --hard discards them. For a commit that is already pushed, git revert HEAD undoes it with a new commit instead.

POST /v1/chat/completions"interaction_tone": "bullets"

The normal answer, then a Key points section at the end with 1–3 bullets: what was done, plus any action points.

You

How do I undo my last Git commit?

Reply

Use git reset to move your branch back one commit. The flag decides what happens to the changes that were in it:

git reset --soft HEAD~1   # keep the changes, staged
git reset --hard HEAD~1   # throw the changes away

If the commit is already pushed, use git revert HEAD instead. It adds a new commit that undoes the last one, so nobody else has their history rewritten.

Key points

  • Covered both ways to undo the last commit: git reset for a local one, git revert for one that is pushed.
  • Before a --hard reset, check that nothing in the commit is worth keeping.

Example answers, written for this page to show each format. Real answers vary.

How interaction tone works

04The platform

Everything around the model, taken care of.

Milkxi is the API, the keys, the billing and the dashboard, so the only thing you build is your product.

  • OpenAI-compatible, drop-in

    Chat Completions in the format your code already speaks. Change the base URL and the key, and keep your SDK.

  • Streaming

    Server-sent events, with the reasoning and the answer as they are written. Ask for usage and it arrives in the last chunk.

  • Prepaid, with no subscription

    Buy credits from $20 and pay per token. There is no plan to pick and no monthly fee.

  • Team roles and key permissions

    Owner, Admin, Developer, Billing and Viewer roles for your team. Each key can be held to endpoints and models, with its own rate limit, monthly spend limit and expiry date.

  • Usage analytics

    Requests, tokens and cost for every day, every key and every model, in the dashboard.

  • A model that stays put

    slk-1 always means the same model. Nothing changes silently behind a model id.

We don't store your prompts or completions.

Read the privacy policy

05Pricing

Pay per token, from prepaid credits.

One price list and no plans. Top up, spend it as you go, and follow the cost in the dashboard.

SLK 1

US dollars per 1M tokens

Input
$3.45
Output
$17.25
Cache read
$0.345
Cache write
$4.3125
  • Prepaid. Top up from $20. There is no subscription and nothing is charged afterwards.
  • Service tiers. flex requests cost 0.5× the price, priority requests cost 1.75× the price.
  • Before tax. Prices exclude VAT.
Full pricing and rate limits

06Questions

Asked before signing up.

What is SLK 1?

SLK 1 is our flagship model: a reasoning model with a 1M-token context, tool calling, structured outputs and image input. You reach it through an API in the OpenAI Chat Completions format, under the model id slk-1.

Will my OpenAI code work?

Yes, if it uses Chat Completions. Point the OpenAI SDK at our base URL, use a Milkxi key and set the model to slk-1. A few parameters have limits: n must be 1, logprobs is ignored, and the presence and frequency penalties must be 0. The docs list every parameter.

How does billing work?

You buy credits in advance, from $20, and each request is paid from them at the per-token price. While a request runs we place a temporary hold for the most it could cost, and release it when the request finishes, so you pay for the tokens that were used. Prices exclude VAT. See the pricing page.

Is there a free tier?

No. There is no free tier and no subscription. The smallest top-up is $20.

Do you store my prompts or completions?

We don't store your prompts or completions. The privacy policy lists what we do keep.

What are the rate limits?

Every account starts at Tier 1: 60 requests and 500,000 tokens per minute. The limits rise on their own with your lifetime top-ups: Tier 2 from $50, Tier 3 from $500. See every tier.

What is interaction tone?

A setting that shapes how the model answers without changing your prompt: detailed, concise, summary or bullets, or default to leave the answer as it is. Set it on an API key in the dashboard, or per request with interaction_tone. Read how it works.

Get a key. Make the first call.

Sign up, top up, and send your first request to slk-1.