GLM-5.2-Fast

Copy success!
Add to Compare

Overview

GLM-5.2-Fast-Preview is the high-speed variant of Zhipu AI's GLM-5.2, with 1M context and capabilities on par with the standard version. Inference-optimized to deliver 1.5–2× the output TPS, it fits latency-sensitive use cases such as real-time chat, multi-turn agents, 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 docs

Function Calling

Use function calling to connect large language models with external tools and systems.View docs

Cache

Context Cache stores shared prefixes for long-context requests to reduce repeated computation, improve latency, and lower cost.View docs

Structured Outputs

Structured Outputs help ensure the model returns a JSON string in the expected format.View docs

Batches

Asynchronously process requests in batches to reduce costs.View docs

Web Search

Enable web search so the model can answer with real-time retrieved data.View docs

Fine-tuning

Train models on sample data to better adapt them to specific tasks.View docs

Pricing

  • Input
    $2.8Per 1M tokens
  • Output
    $8.8Per 1M tokens
  • Input(Implicit Cache)
    $0.56Per 1M tokens

Rate Limits & Context

  • Max Input
    1M
  • Max Output
    131K
  • Max Input (Thinking)
    1M
  • Max Output (Thinking)
    131K
  • Context
    1M
  • TPMTokens Per Minute
    1M
  • RPMRequests Per Minute
    500

API Reference

Call API
Copy 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://dashscope-intl.aliyuncs.com/compatible-mode/v1",
)
messages = [{"role": "user", "content": "Who are you"}]
completion = client.chat.completions.create(
    model="glm-5.2-fast-preview",
    messages=messages,
    stream=True
)
is_answering = False  # Indicates whether the response phase has started
print("\n" + "=" * 20 + "Thinking process" + "=" * 20)
for chunk in completion:
	if chunk.choices:
		delta = chunk.choices[0].delta
		# Collect only the thinking content
		if hasattr(delta, "reasoning_content") and delta.reasoning_content is not None:
			if not is_answering:
				print(delta.reasoning_content, end="", flush=True)
		# When content is received, start generating the response
		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)