GLM-5.2 vs Claude Fable 5: la diferencia estuvo en el presupuesto de salida
Este no es un ranking genérico de modelos. En esta prueba real de API, GLM-5.2 resolvió las tareas de razonamiento cuando se aumentó el presupuesto de salida, pero con límites bajos podía devolver HTTP 200 sin contenido visible. Claude Fable 5 fue más estable con presupuestos bajos y más fiable en la tarea de HTML largo.
Por qué importa esta prueba
The test used the Crazyrouter OpenAI-compatible API rather than a chat UI. That matters because the result was not judged only by prose quality. Each response was checked with operational metadata:
Base URL: https://cn.crazyrouter.com/v1
Endpoint: POST /v1/chat/completions
Models: glm-5.2, claude-fable-5
temperature: 0.2
Test date: 2026-07-06
The important fields were max_tokens, completion_tokens, reasoning_tokens, finish_reason, visible content length, whether the generated HTML was closed, and whether the animation actually moved in a browser.
Diseño de la prueba
The benchmark deliberately mixed three task types:
| Task | Purpose | Reference result |
|---|---|---|
MATH-003 |
State-based expectation reasoning | Expected flips until HH = 6
|
PHYS-003 |
Momentum plus energy accounting |
V = 3.0 m/s, x ≈ 0.148 m
|
CODE-003-ANIM |
Long runnable artifact generation | Complete 800x500 Canvas animation HTML |
The first two tasks measured reasoning. The third task measured whether a model can produce a complete artifact, not merely a convincing partial code block.
Resultados observados
| Task | glm-5.2 |
claude-fable-5 |
|---|---|---|
| Math, original budget |
finish_reason=length, completion_tokens=1601, reasoning_tokens=1600, visible body empty |
finish_reason=stop, complete and correct |
| Math, retest | Correct after max_tokens=3200
|
Retest not needed |
| Physics, original budget |
finish_reason=length, visible body empty |
Complete and correct |
| Physics, retest | Correct after max_tokens=8000
|
Retest not needed |
| Animation, original budget | Empty visible HTML at max_tokens=3200
|
Partial HTML, truncated |
| Animation, retest | Still truncated at max_tokens=8000
|
Complete HTML; browser validation passed |
The most important observation is that GLM-5.2 was not failing the reasoning itself. In the math and physics tasks, it produced correct answers after a larger output budget. The problem was visibility and completion: a request could return HTTP 200 while the user-facing content was empty or incomplete.
For the long Canvas animation, the difference was sharper. GLM-5.2 produced a visible HTML fragment at max_tokens=8000, but it stopped inside JavaScript and did not close the file. Claude Fable 5 completed the HTML at max_tokens=8000; browser validation showed no console errors, an 800x500 canvas, controls, a speed slider, and changedPixels=55090 after 700 ms.
Lectura de coste-beneficio
En el momento de escribir, la pricing API de Crazyrouter lista glm-5.2 con discount: 0.8. Eso la vuelve muy interesante en coste si tu aplicación puede asignar más presupuesto de salida y registrar reasoning_tokens correctamente.
This is the practical tradeoff:
| Workload | Better fit from this test |
|---|---|
| Short reasoning with enough output budget | GLM-5.2 can be a cost-effective option |
| Low-budget reasoning responses | Claude Fable 5 was steadier |
| Long single-file code generation | Claude Fable 5 was stronger in this run |
| Batch evaluations where metadata is logged | GLM-5.2 becomes easier to operate safely |
Do not treat the 0.8 multiplier as a permanent universal price. It is a pricing-data snapshot from Crazyrouter at publication time and should be checked again before a large deployment.
Notas de integración
Minimal request:
curl https://cn.crazyrouter.com/v1/chat/completions \
-H "Authorization: Bearer $CRAZYROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "glm-5.2",
"messages": [
{
"role": "user",
"content": "Solve the HH expected-flips problem with state equations."
}
],
"temperature": 0.2,
"max_tokens": 3200
}'
To compare Claude Fable 5, keep the same payload and change only the model:
{
"model": "claude-fable-5"
}
For production-style evaluations, log this shape for every request:
{
"model": "glm-5.2",
"max_tokens": 3200,
"finish_reason": "length",
"completion_tokens": 3200,
"reasoning_tokens": 3178,
"visible_content_chars": 0,
"html_closed": false,
"browser_validation": "not_run_incomplete_html"
}
API endpoints should stay clean. Do not add UTM parameters to https://cn.crazyrouter.com/v1. Use tracking only on human-facing article or registration links.
Puedes ejecutar la misma solicitud compatible con OpenAI en Crazyrouter y comparar los modelos con tus propios prompts.
FAQ
Did GLM-5.2 fail the reasoning tasks?
No. In this run, GLM-5.2 solved the math task after max_tokens=3200 and the physics task after max_tokens=8000. The issue was that lower budgets were consumed mostly by reasoning tokens before visible content appeared.
Why not score HTTP 200 as success?
Because HTTP 200 only means the API call returned. A benchmark answer can still be unusable if finish_reason=length, visible content is empty, or generated code is incomplete.
Why was the animation task included?
Long code generation exposes a different failure mode. A model can write a convincing first half of a file and still fail if the HTML or JavaScript is cut off.
Is GLM-5.2 still worth testing?
Yes. The current 0.8 discount multiplier makes it attractive for workloads where you can allocate enough output budget and monitor response metadata.
What should be recorded in future comparisons?
At minimum: max_tokens, completion_tokens, reasoning_tokens, finish_reason, visible output length, artifact completeness, and runtime validation.
Final verdict
La conclusión práctica: GLM-5.2 puede ser muy rentable y razonar bien, pero necesita control estricto de salida. Claude Fable 5 fue más seguro para respuestas compactas y para entregar un HTML completo.

Top comments (0)