> ## Documentation Index
> Fetch the complete documentation index at: https://friendli.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Control GLM-5.3-Flash Reasoning

> Control GLM-5.3-Flash reasoning on FriendliAI. Set the reasoning effort and budget, parse reasoning from responses, and clear reasoning between requests.

GLM-5.3-Flash is an [always-on reasoning model](/docs/guides/capabilities/reasoning#reasoning-model-types). You can control its reasoning with the following parameters:

| Parameter           | Data Type                   | Default |
| ------------------- | --------------------------- | ------- |
| `parse_reasoning`   | boolean                     | `true`  |
| `include_reasoning` | boolean                     | `true`  |
| `reasoning_effort`  | enum (`low`, `high`, `max`) | `max`   |
| `reasoning_budget`  | integer                     | `null`  |
| `clear_thinking`    | boolean                     | `false` |

If you don't set a parameter, the model uses its default. You can edit a parameter to control how the model reasons.

## Control Reasoning

To learn how to control the model's reasoning, see the following sections:

<Steps>
  <Step title="Parse Reasoning" icon="dot">
    By default, reasoning's parsed. To turn parsing off, use the following code:

    <CodeGroup>
      ```python OpenAI Python SDK wrap highlight={15-17} theme={null}
      import os
      from openai import OpenAI

      client = OpenAI(
        base_url="https://api.friendli.ai/serverless/v1",
        api_key=os.environ["FRIENDLIAI_API_KEY"],
      )

      completion = client.chat.completions.create(
        model="zai-org/GLM-5.3-Flash",
        messages=[
          {"role": "system", "content": "You are a friendly assistant."},
          {"role": "user", "content": "Describe FriendliAI in one sentence."},
        ],
        extra_body={
          "parse_reasoning": False,
        },
      )

      print(completion.choices[0].message)
      ```

      ```javascript OpenAI JavaScript SDK wrap highlight={14} theme={null}
      import OpenAI from "openai"

      const client = new OpenAI({
        baseURL: "https://api.friendli.ai/serverless/v1",
        apiKey: process.env.FRIENDLIAI_API_KEY,
      })

      const completion = await client.chat.completions.create({
        model: "zai-org/GLM-5.3-Flash",
        messages: [
          { role: "system", content: "You are a friendly assistant." },
          { role: "user", content: "Describe FriendliAI in one sentence." },
        ],
        "parse_reasoning": false,
      })

      console.log(completion.choices[0].message)
      ```

      ```bash cURL wrap highlight={10} theme={null}
      curl -X POST https://api.friendli.ai/serverless/v1/chat/completions \
        -H 'Content-Type: application/json' \
        -H "Authorization: Bearer $FRIENDLIAI_API_KEY" \
        -d '{
          "model": "zai-org/GLM-5.3-Flash",
          "messages": [
            {"role": "system", "content": "You are a friendly assistant."},
            {"role": "user", "content": "Describe FriendliAI in one sentence."}
          ],
          "parse_reasoning": false
      }'
      ```
    </CodeGroup>

    To learn more, see [`parse_reasoning`](/docs/guides/capabilities/reasoning#parse_reasoning).
  </Step>

  <Step title="Include Reasoning" icon="dot">
    By default, reasoning's included. To exclude it, use the following code:

    <CodeGroup>
      ```python OpenAI Python SDK wrap highlight={15-17} theme={null}
      import os
      from openai import OpenAI

      client = OpenAI(
        base_url="https://api.friendli.ai/serverless/v1",
        api_key=os.environ["FRIENDLIAI_API_KEY"],
      )

      completion = client.chat.completions.create(
        model="zai-org/GLM-5.3-Flash",
        messages=[
          {"role": "system", "content": "You are a friendly assistant."},
          {"role": "user", "content": "Describe FriendliAI in one sentence."},
        ],
        extra_body={
          "include_reasoning": False,
        },
      )

      print(completion.choices[0].message)
      ```

      ```javascript OpenAI JavaScript SDK wrap highlight={14} theme={null}
      import OpenAI from "openai"

      const client = new OpenAI({
        baseURL: "https://api.friendli.ai/serverless/v1",
        apiKey: process.env.FRIENDLIAI_API_KEY,
      })

      const completion = await client.chat.completions.create({
        model: "zai-org/GLM-5.3-Flash",
        messages: [
          { role: "system", content: "You are a friendly assistant." },
          { role: "user", content: "Describe FriendliAI in one sentence." },
        ],
        "include_reasoning": false,
      })

      console.log(completion.choices[0].message)
      ```

      ```bash cURL wrap highlight={10} theme={null}
      curl -X POST https://api.friendli.ai/serverless/v1/chat/completions \
        -H 'Content-Type: application/json' \
        -H "Authorization: Bearer $FRIENDLIAI_API_KEY" \
        -d '{
          "model": "zai-org/GLM-5.3-Flash",
          "messages": [
            {"role": "system", "content": "You are a friendly assistant."},
            {"role": "user", "content": "Describe FriendliAI in one sentence."}
          ],
          "include_reasoning": false
      }'
      ```
    </CodeGroup>

    To learn more, see [`include_reasoning`](/docs/guides/capabilities/reasoning#include_reasoning).
  </Step>

  <Step title="Set the Reasoning Effort" icon="dot">
    By default, reasoning effort's set to `max`. To set it to `low`, use the following code:

    <CodeGroup>
      ```python OpenAI Python SDK wrap highlight={15-17} theme={null}
      import os
      from openai import OpenAI

      client = OpenAI(
        base_url="https://api.friendli.ai/serverless/v1",
        api_key=os.environ["FRIENDLIAI_API_KEY"],
      )

      completion = client.chat.completions.create(
        model="zai-org/GLM-5.3-Flash",
        messages=[
          {"role": "system", "content": "You are a friendly assistant."},
          {"role": "user", "content": "Describe FriendliAI in one sentence."},
        ],
        extra_body={
          "reasoning_effort": "low",
        },
      )

      print(completion.choices[0].message)
      ```

      ```javascript OpenAI JavaScript SDK wrap highlight={14} theme={null}
      import OpenAI from "openai"

      const client = new OpenAI({
        baseURL: "https://api.friendli.ai/serverless/v1",
        apiKey: process.env.FRIENDLIAI_API_KEY,
      })

      const completion = await client.chat.completions.create({
        model: "zai-org/GLM-5.3-Flash",
        messages: [
          { role: "system", content: "You are a friendly assistant." },
          { role: "user", content: "Describe FriendliAI in one sentence." },
        ],
        "reasoning_effort": "low",
      })

      console.log(completion.choices[0].message)
      ```

      ```bash cURL wrap highlight={10} theme={null}
      curl -X POST https://api.friendli.ai/serverless/v1/chat/completions \
        -H 'Content-Type: application/json' \
        -H "Authorization: Bearer $FRIENDLIAI_API_KEY" \
        -d '{
          "model": "zai-org/GLM-5.3-Flash",
          "messages": [
            {"role": "system", "content": "You are a friendly assistant."},
            {"role": "user", "content": "Describe FriendliAI in one sentence."}
          ],
          "reasoning_effort": "low"
      }'
      ```
    </CodeGroup>

    To learn more, see [`reasoning_effort`](/docs/guides/capabilities/reasoning#reasoning_effort).
  </Step>

  <Step title="Set a Reasoning Budget" icon="dot">
    By default, there's no reasoning budget. To set one (for example, to 10,000 tokens), use the following code:

    <CodeGroup>
      ```python OpenAI Python SDK wrap highlight={15-17} theme={null}
      import os
      from openai import OpenAI

      client = OpenAI(
        base_url="https://api.friendli.ai/serverless/v1",
        api_key=os.environ["FRIENDLIAI_API_KEY"],
      )

      completion = client.chat.completions.create(
        model="zai-org/GLM-5.3-Flash",
        messages=[
          {"role": "system", "content": "You are a friendly assistant."},
          {"role": "user", "content": "Describe FriendliAI in one sentence."},
        ],
        extra_body={
          "reasoning_budget": 10000,
        },
      )

      print(completion.choices[0].message)
      ```

      ```javascript OpenAI JavaScript SDK wrap highlight={14} theme={null}
      import OpenAI from "openai"

      const client = new OpenAI({
        baseURL: "https://api.friendli.ai/serverless/v1",
        apiKey: process.env.FRIENDLIAI_API_KEY,
      })

      const completion = await client.chat.completions.create({
        model: "zai-org/GLM-5.3-Flash",
        messages: [
          { role: "system", content: "You are a friendly assistant." },
          { role: "user", content: "Describe FriendliAI in one sentence." },
        ],
        "reasoning_budget": 10000,
      })

      console.log(completion.choices[0].message)
      ```

      ```bash cURL wrap highlight={10} theme={null}
      curl -X POST https://api.friendli.ai/serverless/v1/chat/completions \
        -H 'Content-Type: application/json' \
        -H "Authorization: Bearer $FRIENDLIAI_API_KEY" \
        -d '{
          "model": "zai-org/GLM-5.3-Flash",
          "messages": [
            {"role": "system", "content": "You are a friendly assistant."},
            {"role": "user", "content": "Describe FriendliAI in one sentence."}
          ],
          "reasoning_budget": 10000
      }'
      ```
    </CodeGroup>

    To learn more, see [`reasoning_budget`](/docs/guides/capabilities/reasoning#reasoning_budget).
  </Step>

  <Step title="Clear Reasoning" icon="dot">
    By default, reasoning's preserved. To clear it, use the following code:

    <CodeGroup>
      ```python OpenAI Python SDK wrap highlight={15-19} theme={null}
      import os
      from openai import OpenAI

      client = OpenAI(
        base_url="https://api.friendli.ai/serverless/v1",
        api_key=os.environ["FRIENDLIAI_API_KEY"],
      )

      completion = client.chat.completions.create(
        model="zai-org/GLM-5.3-Flash",
        messages=[
          {"role": "system", "content": "You are a friendly assistant."},
          {"role": "user", "content": "Describe FriendliAI in one sentence."},
        ],
        extra_body={
          "chat_template_kwargs": {
            "clear_thinking": True,
          },
        },
      )

      print(completion.choices[0].message)
      ```

      ```javascript OpenAI JavaScript SDK wrap highlight={14-16} theme={null}
      import OpenAI from "openai"

      const client = new OpenAI({
        baseURL: "https://api.friendli.ai/serverless/v1",
        apiKey: process.env.FRIENDLIAI_API_KEY,
      })

      const completion = await client.chat.completions.create({
        model: "zai-org/GLM-5.3-Flash",
        messages: [
          { role: "system", content: "You are a friendly assistant." },
          { role: "user", content: "Describe FriendliAI in one sentence." },
        ],
        "chat_template_kwargs": {
          "clear_thinking": true,
        },
      })

      console.log(completion.choices[0].message)
      ```

      ```bash cURL wrap highlight={10-12} theme={null}
      curl -X POST https://api.friendli.ai/serverless/v1/chat/completions \
        -H 'Content-Type: application/json' \
        -H "Authorization: Bearer $FRIENDLIAI_API_KEY" \
        -d '{
          "model": "zai-org/GLM-5.3-Flash",
          "messages": [
            {"role": "system", "content": "You are a friendly assistant."},
            {"role": "user", "content": "Describe FriendliAI in one sentence."}
          ],
          "chat_template_kwargs": {
            "clear_thinking": true
          }
      }'
      ```
    </CodeGroup>

    To learn more, see [`clear_thinking`](/docs/guides/capabilities/reasoning#clear_thinking).
  </Step>
</Steps>
