GLM
Copy success!
Try AIAdd to Compare
Overview
GLM-5.3-Prime is the high-speed variant of GLM-5.3, inheriting its full capabilities while achieving 1.5–2× the output TPS through inference acceleration. It delivers state-of-the-art coding and agentic performance among open-source models, supports 1M context and 128K output tokens, and can produce production-grade results end-to-end — along with emergent cybersecurity capabilities such as vulnerability discovery. Designed for latency-sensitive scenarios including real-time conversation, multi-turn agent orchestration, and streaming code generation.
Input
Text
Output
Text
Features
Prefix Completion
Enable Partial Mode when calling the Qwen API to make the model continue strictly from your provided prefix text.View docsFunction Calling
Use function calling to connect large language models with external tools and systems.View docsCache
Context Cache stores shared prefixes for long-context requests to reduce repeated computation, improve latency, and lower cost.View docsStructured Outputs
Structured Outputs help ensure the model returns a JSON string in the expected format.View docsPricing
- Input$2.8Per 1M tokens
- Output$8.8Per 1M tokens
- Input(Implicit Cache)$0.56Per 1M tokens
Rate Limits & Context
- Max Input1M
- Max Output131K
- Max Input (Thinking)1M
- Max Output (Thinking)131K
- Context1M
- Max Reasoning131K
- TPMTokens Per Minute2M
- RPMRequests Per Minute10K
Built-in Tools
code_interpreterResponses API
web_extractorResponses API
API Reference
Call APICopy success!
12345678910111213141516171819202122232425262728
from openai import OpenAI
import os
client = OpenAI(
# If the environment variable is not set, replace it with your Model Studio API key: api_key="sk-xxx"
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://maas.qwencloudapi.com/compatible-mode/v1",
)
messages = [{"role": "user", "content": "Who are you"}]
completion = client.chat.completions.create(
model="glm-5.3-prime", # You can replace this with another deep thinking models
messages=messages,
extra_body={"enable_thinking": True},
stream=True
)
is_answering = False # Indicates whether the response phase has started
print("\n" + "=" * 20 + "Thinking process" + "=" * 20)
for chunk in completion:
delta = chunk.choices[0].delta
if hasattr(delta, "reasoning_content") and delta.reasoning_content is not None:
if not is_answering:
print(delta.reasoning_content, end="", flush=True)
if hasattr(delta, "content") and delta.content:
if not is_answering:
print("\n" + "=" * 20 + "Full response" + "=" * 20)
is_answering = True
print(delta.content, end="", flush=True)