One endpoint, five seats, Decision and OCR. OpenAI-compatible, Korean by default, with a reasoning dial from low to xhigh.
The model field picks a seat. Omit it and you get palette-llm. Copy seat ids exactly: an unknown id falls back to palette-llm without an error.
| Seat | Backing | Where | Modalities | Context | CLIcK · n=300 | KMMLU · n=300 | Role |
|---|---|---|---|---|---|---|---|
palette-llm |
Palette LLM · Palette LLM | Palette cloud shared | text | 1M | 0.850 | 0.723 | Default decision-maker |
palette-llm-max |
Palette LLM Max · Palette LLM Max | Palette cloud shared | text, image | 1M | 0.802 | 0.736 | Hardest decisions |
palette-vlm |
Palette Vision · Palette Vision | Palette cloud shared | text, image | 1M | not run | not run | Fast, with vision. Alias palette-llm-fast |
palette-llm-ko |
Palette LLM Korean · Palette LLM Korean | Palette GPU · Palette GPU | text, image (up to 6) | 256K | 0.869 | 0.640 | Our weights, Korean-tuning target |
palette-island |
Palette Island-X · Palette Island-X | Palette CPU | text + tools | 4K | FunctionChat 82.2 · n=500 | Korean tool calling, 3.6 s median | |
| Service | Route | Where | Input | Measured | Role |
|---|---|---|---|---|---|
palette-decision |
POST /v1/decision/systemone |
Palette GPU | state + up to 32 typed questions | K-DECIDE 0.944 · n=800 | Typed decisions with calibrated probabilities |
palette-light-ocr |
POST /v1/ocr |
Palette CPU | one image, up to 20 MB | CER 0.08% · n=600 lines | Korean line OCR, 1.6 s per A4 page |
Korean scores are our 300-item runs, 2026-09-23. Frontier on the same items, for context: GPT-6 Astra CLIcK 0.965 / KMMLU 0.853, Gemini 3.1 Pro 0.957 / 0.819, Claude Fable 5.1 0.930 / 0.803. Latency: palette-llm answered a Korean supplier decision in 3.2 s at low effort; palette-vlm read a Korean invoice image in 4.0 s; palette-llm-ko vision 6.4 s.
Seven things behind one key, whatever model sits behind it.
Base URL https://llm.pltt.dev/v1 with the chat-completions shape. The openai SDK, curl, fetch and LangChain work with a base_url change and a Bearer key.
reasoning_effort takes low, medium, high or xhigh; the default is medium. Reasoning comes back in reasoning_content, separate from content. For high and xhigh set max_tokens to 4000 or more.
stream: true returns Server-Sent Events. Each chunk is one data: {...} line, reasoning in delta.reasoning_content, the answer in delta.content, and the stream ends with data: [DONE].
Send image_url parts as data URIs or https links on palette-vlm, palette-llm-max and palette-llm-ko (up to 6 images per request). palette-vlm read a Korean invoice image and verified its total in 4.0 s.
palette-island returns OpenAI tool_calls for Korean requests: 82.2 on FunctionChat SingleCall (n=500), 3.6 s median on CPU. Send a tools array; without one the gateway answers 400.
POST /v1/decision/systemone scores choice, yes/no and score questions with calibrated probabilities (27B: K-DECIDE 0.944, n=800). POST /v1/ocr reads Korean lines off an image in 1.6 s per A4 page. Same key, same header.
palette-llm-ko runs Palette LLM Korean on Palette's own GPU, our weights and the Korean-tuning target, at CLIcK 0.869 on the 300-item run. palette-llm answered a Korean supplier decision in 3.2 s at low effort.