Tchavi
Why TchaviModelsPricingDocumentationBlog
TchaviTchavi

Frontier AI, paid with mobile money. No card, no KYC.

Product

  • Why Tchavi
  • Pricing
  • Models

Resources

  • Documentation
  • API Reference
  • Blog
  • Support

Legal

  • Privacy
  • Terms of Service

© 2026 Tchavi. All rights reserved.

We use cookies to enhance your experience, provide personalised content, and analyse our traffic; see our Cookie Policy.

Back to models
Z

GLM-5.3

z.ai/glm-5.3

The best tool-caller we carry, at a STANDARD price

GLM-5.3 is Z.ai's reasoning model for software engineering and long-horizon agent work. It scores higher on tool use than any other model in the catalogue, including rows costing ten times more, over a 1M context. Text only — if your request carries an image, use GLM-5.3 Flash or Gemini.

Modalities
Input / Output
2.352 / 7.391cr / 1K
Context window
1M
Max output
131.1K
Capabilities
  • Tools
  • JSON mode
  • Streaming

What this model does well

  • 🛠️

    Best-in-catalogue tool calling

    The highest tool-use score in the catalogue on published evaluations

  • 📚

    1M token context

    A whole repository or a long investigation in one call

  • 🤖

    Long-horizon agents

    Built for multi-step agent runs that have to recover from their own errors

  • 🧩

    Tools + structured output

    Function calling and JSON output, supported on every endpoint we route to

  • 💾

    Context caching

    Repeated context is cached upstream, so long conversations stay cheap

Example prompts

  • Here is a failing integration test and the six files it touches. Work out the cause, then give me the patch and the test that proves it.

  • You have a shell, a repo and a broken build. Diagnose it step by step and fix it.

Good to know

  • Text only. No image or document input — unlike GLM-5.3 Flash, which is multimodal.
  • Reasoning cannot be switched off. Z.ai documents `thinking.type: enabled` as the only supported value; `reasoning_effort` accepts low, high or max and defaults to max.
  • Max output is 128K. Some upstream hosts advertise 943K, but Z.ai's own specification says 128K and Tchavi routes to hosts that honour the documented figure.

Technical specifications

Author
Z.ai
API identifier
glm-5.3
Category
Chat & Text
Context window
1,048,576 tokens
Max output
131,072 tokens
Rate limit
120 RPM
Billing unit
token
Streaming
Yes

Ideal for

  • Agents that call many tools over many steps
  • Debugging across a whole repository
  • Code review with the full project in context
  • Structured extraction that must not drift
  • Long technical investigations

Ready to try it?

Test this model in the playground, no setup needed.

Frequently asked questions

Can I pay with mobile money, without a bank card?

Yes. Top up your Tchavi account with Orange Money, MTN MoMo, M-Pesa or another mobile money operator. No bank card is needed. Credits land as soon as the payment is confirmed and are deducted as you use them.

Is the API compatible with OpenAI's?

Yes. Keep your current OpenAI SDK, just change the base URL to Tchavi's (shown in the API tab) and use your Tchavi key. The rest of your code stays the same.

API

import Tchavi from '@tchavi/sdk';

const client = new Tchavi({ apiKey: 'API_KEY' });

const response = await client.chat.completions.create({
  model: 'glm-5.3',
  messages: [
  {
    "role": "user",
    "content": "Hello!"
  }
],
});

console.log(response.choices[0].message.content);
console.log('Credits used:', response.tchavi.credits_used);

API parameters

Every parameter this model accepts on the API. Check the SDK for full typings.

modelRequired
string

ID of the chat model (e.g. `glm-5.3`).

messagesRequired
Array<{ role, content }>

Conversation messages. Each item has a `role` (system/user/assistant) and a `content` that's either a plain string or an array of content blocks (`text`, `image_url`, `document_url`).

temperature
number
Default: 1

Sampling temperature between 0 and 2. Higher values = more random.

max_tokens
integer

Maximum number of tokens to generate in the response.

max_completion_tokens
integer

OpenAI alias for `max_tokens`. Either field works; if both are sent, `max_completion_tokens` wins.

stream
boolean
Default: false

If true, partial message deltas are streamed as Server-Sent Events.

tools
Array<{ type, function }>

Function-calling toolbox. Pass an array of `{ type: "function", function: { name, description, parameters } }`. Returned tool calls land in `choices[].message.tool_calls`. Only models with `supportsTools: true` accept this.

tool_choice
"auto" | "none" | { type, function }

How the model picks among tools: `"auto"` (default), `"none"` to force a plain text reply, or `{ type: "function", function: { name } }` to force a specific tool. Only with `supportsTools: true`.

response_format
{ type: "json_object" | "text" }

Constrain the output. Pass `{ type: "json_object" }` to force valid JSON (the model still needs a JSON instruction in your prompt). Only models with `supportsJsonMode: true` honour this.

Show all parameters (18)
top_p
number
Default: 1

Nucleus sampling: only tokens in the top `top_p` probability mass are considered.

seed
integer

Integer seed for deterministic output. The same seed + identical request yields the same completion when supported by the provider. OpenAI honours it; Anthropic ignores.

n
integer
Default: 1

Number of completions to generate in one call. Defaults to 1; each extra completion is billed.

stream_options
{ include_usage?: boolean }

Streaming options, e.g. `{ "include_usage": true }` to receive a final SSE chunk with usage counts. Effective only when `stream: true`.

stop
string | string[]

Up to 4 sequences where the API will stop generating further tokens.

frequency_penalty
number
Default: 0

Between -2.0 and 2.0. Positive values penalize tokens that have appeared frequently.

presence_penalty
number
Default: 0

Between -2.0 and 2.0. Positive values encourage the model to talk about new topics.

user
string

End-user identifier passed to the upstream provider for abuse / moderation tracking. Should be stable per end-user.

logit_bias
Record<string, number>

Per-token logit bias `{ "<tokenId>": <-100..100>, ... }`. OpenAI-specific; Anthropic ignores silently.

Pricing

per 1,000 tokens
2.352 credits
Input 2.352 · Output 7.391 cr/1K

How billing works

  • Billed per token used, down to a thousandth of a credit.
  • A typical message (500 in, 150 out) costs about —, or 2.285 credits.
Real-world scenarios
Per day
Per week
Per month

Estimated over 30 days, for a typical message: ~500 input + ~150 output tokens, billed to the thousandth of a credit.

A 10 000 F CFA top-up gives you about ~13 130 questions. Pay with Orange Money, MTN MoMo or M-Pesa — no Visa card needed.

Ready to use GLM-5.3?

Create your accountAPI Documentation

Bonus credits on your first top-up · No card to sign up