LLM & Media APIModels & pricing

Models & pricing

370+ models on one balance — how each media kind is billed, how discounts apply, and how to read the live catalog instead of a table that goes stale.

GPUniq serves 370+ models — text, image, video, music, speech and restoration — behind one API key and one USD balance. The catalog changes weekly, so this page documents the rules. For the numbers, ask the API:

curl https://api.gpuniq.com/v1/llm/models/catalog

GET /v1/llm/models/catalog is public and needs no key. It is the only authoritative price list — the model cards in /chat read from it too.

This page no longer prints per-token price tables. They went stale faster than anyone could maintain them: model prices move with the wholesale market, sometimes weekly. Media prices (per image, per clip, per second) are stable enough to publish and live on the image, video and music & speech pages.

What the catalog returns

One entry per model. The fields that matter when you are choosing or budgeting:

FieldWhat it tells you
slugThe string you put in model.
label, descriptionHuman-readable name and one-line summary.
providerVendor family — anthropic, openai, google, xai, deepseek, qwen, zhipu, moonshot, bytedance, minimax, …
categoryflagship / reasoning / balanced / fast — the shelf it sits on.
media_kindtext, image, video, music or audio. Decides which endpoint serves it.
retail_input_usd_per_mtok, retail_output_usd_per_mtokText pricing, USD per million tokens, input and output priced separately.
retail_usd_per_imageFlat price per delivered image.
retail_usd_per_unit + video_billing_unit / audio_billing_unitMedia price and the unit it is charged in — video, second or character.
discounted, discount_percent_labelWhether this model is sold below vendor list, and by how much.
user_discount_percent, user_tier_discountsYour account's own discount, if any, on top of the public one.
tokens_per_sec, tokens_per_sec_approxMeasured throughput, for picking between models of similar quality.
credit_metered, usd_per_creditSet on the Topaz restoration models, which meter in credits.
capabilitiesReference-input caps, resolutions, aspect ratios and duration range for media models.

The response also carries default_model — currently claude-haiku-4-5, used when a chat request omits model.

For video models, treat capabilities as a hint and the video request reference as the contract. A few entries still advertise resolutions and reference caps that the request validator refuses — seedance-2-5 renders 480p/720p only, and Veo 3.1 accepts durations of 4, 6 or 8 seconds, not 5.

Text & reasoning models

The main vendor families. Exact slugs and prices come from the catalog; this is the map of what's on the shelf.

VendorLines availableBest for
AnthropicClaude Opus 5, Sonnet 5, Fable 5; Opus 4.8 / 4.7 / 4.6 / 4.5, Sonnet 4.6 / 4.5, Haiku 4.5General reasoning, coding, agents
OpenAIGPT-6 Astra; GPT-5.6, 5.5, 5.4, 5.2 Pro; the Codex line (5.3 / 5.2 / 5.1); o3, o3-pro, o4-mini; GPT-4.1, GPT-4oReasoning, structured output, vision
GoogleGemini 3.7 Flash, 3.5 Flash, 3.1 Pro, 3 Pro / Flash, 2.5 Pro / Flash; Gemma 4 / 3Long context, fast batch work
xAIGrok 4.5, 4.3, 4.2, 4.1 (incl. Thinking / Fast), Grok 4, grok-code-fast-1Real-time knowledge, low latency
DeepSeekV4 Pro / Flash, V3.2 (+ Thinking), V3.1 / Terminus, R1 family, Chat, OCRCost-efficient reasoning, OCR
Qwen (Alibaba)Qwen3.6 Max / Plus / Flash, Qwen3.5 line, QwQ, Qwen-VLOpen-weight scale, vision, cheap long context
ZhipuGLM-5.2, 5.1, 5, 4.7 (+ Flash / Thinking), GLM-4V, GLM-OCRMultilingual, OCR, low cost
MoonshotKimi K2.7 Code, K2.6, K2.5, K2 (+ Thinking), Moonshot v1Long context, agentic coding
ByteDanceDoubao Seed 1.6 (+ Thinking / Flash / Lite), Doubao 1.5 ProChinese-first workloads
MiniMaxM3, M2.7, M2.5, M2.1, M2Balanced cost, multilingual
XiaomiMiMo v2.5 / v2.5 ProLow-cost reasoning

Filter the catalog by category to narrow it — flagship for the top of each line, fast for the cheap high-throughput tier.

How pricing works

Every surface bills against the same USD balance, but the unit differs:

Media kindUnitCharged when
Textper million tokens, input and output priced separatelyOn completion. completion_tokens includes any hidden reasoning tokens.
Imageflat, per delivered imageWhen the completion poll returns the image.
Videoper clip, or per second of output — depends on the modelWhen the completion poll returns video.url.
Musicper call (some models return two tracks for it)When the completion poll returns the tracks.
Speech & audioper 1000 characters, or per secondOn completion.
Topaz restorationper credit, $0.14 / creditOn completion. See Topaz.

A failed, refused or timed-out media job costs nothing. For media, the kickoff response carries estimated_cost_usd and the completion response carries the authoritative cost_usd and your new balance_usd.

Discounts

Most models are sold below vendor list price, but the discount is per model, not a flat platform rate — it ranges from 7.5% to 30% depending on what the weights cost us wholesale. Read discount_percent_label for the public discount on a given slug and discounted for whether one applies at all.

Account-level discounts stack on top and appear in the same record as user_discount_percent / user_tier_discounts, so the catalog you fetch with your key already reflects your price.

The open-weight tier

Open-weight models — among them deepseek-v4-pro, deepseek-v4-flash, deepseek-v3.2, gpt-oss-120b, GLM-5.x, Kimi K2.x, MiniMax M3 and Gemma — are not priced from a fixed catalog number. They are priced from the cheapest live rate available for those weights, plus our margin, and that moves as the market moves. Proprietary lines such as Qwen Plus / Max / Flash are not in this tier and carry a fixed catalog price.

This is why no number for them is printed here: anything published would be stale within days. Read the live figure from the catalog or the model card in /chat.

Your balance

Requests are billed directly against your GPUniq account balance in USD. There is no separate token pool — prepaid token packages and ruble-to-token conversion were retired, and the balance is shared with every other GPUniq surface, so one deposit covers GPU rentals, volumes and every model here.

balance = client.llm.balance()
print(f"Available: ${balance['balance_usd']:.4f} USD")

Top up from the web dashboard → Balance: card or SBP through T-Bank, or card through Stripe.

Usage history

Per-request detail with prompt / completion / cached / reasoning tokens and the USD charged.

history = client.llm.usage_history(limit=50, offset=0)
for log in history["logs"]:
    print(f"{log['model']}: {log['total_tokens']} tokens — ${log['cost_usd']:.6f}")
EndpointReturns
GET /v1/llm/usage/historyPer-request log lines, newest first.
GET /v1/llm/usage/breakdownDaily / weekly aggregates by model.
GET /v1/llm/usage/requestsRequest-level records, with GET /v1/llm/usage/requests/{log_id} for one in full.

completion_tokens counts hidden reasoning tokens as well as the visible reply. On reasoning models the gap between what you read and what you pay for is real, not a billing error — see Long generations.

Model throughput

GET /v1/llm/models/{slug}/performance returns measured throughput for one model — useful when two models are close on quality and you are choosing on latency. The same figure appears in the catalog as tokens_per_sec, with tokens_per_sec_approx flagging whether it is a measurement or an estimate.

curl https://api.gpuniq.com/v1/llm/models/claude-opus-5/performance \
  -H "X-API-Key: gpuniq_your_key"