This guide uses source checks from Sep 19, 2026. Provider and gateway prices can change; preserve the checked date with every forecast.
Why This Topic Matters Now
The keyword report's cost-governance idea is more useful than another model leaderboard. SaaS teams need to explain why a monthly AI bill moved: longer context, more output, cache misses, tool calls, retries, or a route change. A source-dated ledger makes those causes visible across DeepSeek, GLM, Qwen, and Kimi workloads.
This guide uses today's production checks as a measurement pattern. The live route table and the dated public USD snapshot answer different questions. The live response confirms route and group context; the public JSON provides comparable base-rate rows. Keeping those surfaces separate prevents a cost dashboard from mixing internal ratios with customer-facing dollars.
Source Facts Checked Today
AIWave /api/pricing was checked from production on Sep 19, 2026 and returned HTTP 200, success=true, 68 live route rows, pricing_version a42d372ccf0b5dd13ecf71203521f9d2, auto_groups=['default'], and group_ratio default=1 and vip=0.9. The public /api/v1/pricing endpoint also returned HTTP 200 with 56 dated USD rows, pricing_version 83f77abde81ee3a096a672ed959ccc096f5d37a45c177ae8e03229456b5415a5, updated_at=2026-09-18, and row checked dates of 2026-09-10. Use the live endpoint for route and group evidence, and the static endpoint for dated public USD rates.
The current public JSON lists DeepSeek V4 Pro at $1.914 input, $0.0637362 cache-hit input, and $5.742 output; DeepSeek V4 Flash at $0.638, $0.0202884, and $1.914; GLM 5.1 at $2.1, $0.680001, and about $6.6; Qwen3.5 Omni Flash at about $0.490976 input and $2.968176 output; and Kimi K3 at $4.5, $0.9, and $22.5 per 1M tokens. The rows carry their own effective dates and must be rechecked before a finance forecast.
Provider documentation exposes different billing dimensions. QwenCloud describes separate input and output token billing, context caching, thinking tokens, batch behavior, and tool fees. Kimi documents token billing, context caching, and a separate web-search fee. Z.AI documents GLM model selection and OpenAI SDK compatibility. Those dimensions belong in separate ledger fields rather than one blended multiplier.
The live group context is default=1 and vip=0.9. A receipt should therefore show base model row, applied key group, token counts, and timestamp. Do not publish a single effective rate with the group hidden inside it, and do not turn a key-group choice into an unsupported account-status claim.
Planning Matrix
A source-dated planning matrix keeps the page useful for engineers and procurement reviewers. It turns a search query into an auditable route decision instead of a loose model preference.
| Cost driver | Ledger field | Control |
|---|---|---|
| Model route | model and endpoint | approved route list |
| Context | input and cached input | prefix version and cache share |
| Reasoning | output tokens | task-specific max_tokens |
| Tools | tool name and call count | allowlist and per-task cap |
| Reliability | retry count and stop reason | bounded retry policy |
| Billing group | default or vip | base row kept separate |
Implementation Pattern
The implementation pattern keeps credentials as placeholders, pins the AIWave base URL, records the model, and leaves room for route-specific controls. Production applications should move credentials into environment or secret storage.
from dataclasses import dataclass
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY_HERE", base_url="https://aiwave.live/v1")
@dataclass
class Receipt:
model: str
key_group: str
input_tokens: int
cached_input_tokens: int | None
output_tokens: int
tool_calls: int
retries: int
def run_budgeted_call(model: str, prompt: str, key_group: str = "default") -> Receipt:
response = client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": prompt}],
max_tokens=700,
temperature=0.1,
)
usage = response.usage
return Receipt(model, key_group, usage.prompt_tokens, None,
usage.completion_tokens, 0, 0)
Make the Route Decision Explicit
A Chinese AI API cost governance decision should name the workload, route, source date, output cap, retry ceiling, data class, budget owner, and fallback. Put those fields in configuration or a review record so a model change is visible to engineering, finance, and support.
Separate Gateway Evidence From Provider Claims
Provider documentation explains capability and direct-platform billing concepts. AIWave endpoints explain the gateway's current route rows, public USD snapshot, supported endpoint type, and key-group context. Keep those evidence surfaces separate; a gateway row is not a promise that every provider feature is exposed through every route.
Use a Small Acceptance Set
Start with redacted, representative prompts instead of the largest production payload. Include one normal case, one long-context case, one malformed-input case, and one stop-condition case. Record finish reason, token usage, route, retry count, reviewer decision, and the checked source date. Promote only after the team can explain both quality and spend.
Budget Input, Cache, and Output Separately
A blended token number hides the decision. Store input tokens, cache-hit input when exposed, output tokens, and tool calls in different columns. Output caps must follow task class: a short router, a code review, and a long planning pass should not inherit one shared allowance.
Keep Retries and Fallbacks Bounded
Retry only errors that the client can safely retry, add an attempt ceiling, and preserve the request identifier across attempts. A fallback should be selected by policy rather than by an unbounded loop. The receipt should show the original route, fallback route, stop reason, and whether the answer was accepted or revised.
Use the AIWave Evidence Layer
Use the dated Pricing JSON, live route pricing, Models docs, Status, and Trust. Read the live route table before a rollout, the dated pricing JSON before a budget review, the status page before a launch window, and the trust page before a procurement review. Keep a copy of the checked dates in the internal decision record.
Final Promotion Checklist
Promotion is ready when the provider source is dated, the AIWave route is rechecked, the public USD row is labeled with its own checked date, canaries pass, output and retry limits exist, privacy handling is documented, and a reviewer can reconcile the receipt without seeing a prompt or reusable credential.