$5 free for your first month. No card, start in seconds
use case · GLM

Put GLM on the desk

Support repeats itself. The same refund question, the same "where is my order," the same policy that already exists in a doc nobody opens.

Ticket through local tools into a reply

A first run

three commands

Export TIYUVTA_KEY from the console. The runnable pack is avifenesh/tiyuvta-use-cases.

shell · first runtiyuvta-use-cases
export TIYUVTA_KEY="YOUR_KEY"
pip install -r requirements.txt
python examples/support_desk.py "Hi, order A1842 still is not here. Can I get a refund?"

The example makes OpenAI-compatible calls to https://api.tiyuvta.ai/v1. When the model returns tool_calls, you run them against your store and send the results back. Same shape as any tools loop. No product-specific SDK.

pythontools · low effort
client.chat.completions.create(
    model="zai/glm-5.3-flash",
    messages=[{"role": "user", "content": ticket}],
    tools=[
        {"type": "function", "function": {"name": "lookup_order", "...": "..."}},
        {"type": "function", "function": {"name": "lookup_policy", "...": "..."}},
        {"type": "function", "function": {"name": "escalate", "...": "..."}},
    ],
    # reasoning is always on; it bills as output
    extra_body={"reasoning_effort": "low"},
    max_tokens=32768,
)

Use reasoning_effort: low so a first run does not spend the default (max) thinking budget. Raise it when the ticket is the work. Leave tool choice on auto; the endpoint does not accept tool_choice: required for this model.

You do not need a second vendor for that. You need a model cheap enough to leave on, and strong enough to close the ticket. On this roster that is GLM-5.3-Flash. It is the cheapest model we serve, and the strongest.

This page is a working shape: an incoming ticket, a few tools intoyour store, a reply or a handoff. The store stays on your side. The endpoint only sees the text and the tool results you send.

Get a key and run the example. Or read the story first.

Why GLM

cheapest · strongest we serve

GLM-5.3-Flash is not the "good enough" model here. It is the cheapest on the roster, and the strongest we serve.

It has tools. It has vision if the ticket is a screenshot. It has a 262K window if the thread is long. It also does structured JSON when you want a triage object before the reply. Reasoning stays on. You see it, and you pay for it as output, so send a real max_tokens and keep the effort low for everyday tickets.

That is the product pitch. The desk is yours. The model is a prepaid call.

What you do

store · tools · hand off

Keep the store local. Orders, policy, who already refunded whom. A dict is enough to start.

Give the model three tools. Look up an order. Look up a policy. Escalate when the store has no answer.

Do not let it invent. If the order is missing, it should hand off. A confident wrong refund is worse than a slow human.

What this is not

honest limits

This is inference. It is not a hosted helpdesk. We do not store your tickets, your orders, or your policy. You bring the thin workflow. You decide where the store lives.

It is also not a handle-time bake-off. We have run the shape against the live endpoint. We have not published a "percent of tickets closed" for your queue.

A clean reply can still carry a wrong status, refund, or policy line. Read high-stakes answers before they leave the business.

What it costs

one balance

You pay GLM for input and output, including reasoning tokens. Tool results you send back are input on the next turn. Repeated policy text may get the cached-input rate when the response reports cached tokens. Prices are on Pricing.

Next