教程概述

GLM-5.3是智谱AI于2026年8月18日发布的最新开源模型,MoE架构753B/40B,编程能力较GLM-5.2提升50%,TerminalBench 3.0从4.6跃升至28.3。本教程教你使用GLM-5.3 API构建一个编码智能体。

前置条件

  • Python 3.10+
  • 智谱AI API密钥(从 z.ai 获取)
  • openai Python SDK(GLM-5.3兼容OpenAI接口)

第一步:API接入

pip install openai

from openai import OpenAI

client = OpenAI(
    api_key="your-zhipu-api-key",
    base_url="https://open.bigmodel.cn/api/paas/v4/"
)

response = client.chat.completions.create(
    model="glm-5.3",
    messages=[
        {"role": "system", "content": "你是一个编程助手。"},
        {"role": "user", "content": "用Python写一个二分查找函数"}
    ]
)
print(response.choices[0].message.content)

第二步:Function Calling配置

GLM-5.3支持Function Calling,可以定义工具让模型调用:

tools = [
    {
        "type": "function",
        "function": {
            "name": "execute_python",
            "description": "执行Python代码并返回输出",
            "parameters": {
                "type": "object",
                "properties": {
                    "code": {
                        "type": "string",
                        "description": "要执行的Python代码"
                    }
                },
                "required": ["code"]
            }
        }
    }
]

response = client.chat.completions.create(
    model="glm-5.3",
    messages=[{"role": "user", "content": "计算1到100的和"}],
    tools=tools
)

# 检查模型是否决定调用工具
if response.choices[0].message.tool_calls:
    tool_call = response.choices[0].message.tool_calls[0]
    import json
    args = json.loads(tool_call.function.arguments)
    code = args["code"]
    # 执行代码
    exec_result = exec(code)
    print(f"执行结果: {exec_result}")

第三步:构建Agent工作流

将API调用、Function Calling和执行验证组合为闭环:

def coding_agent(task, max_turns=5):
    messages = [
        {"role": "system", "content": "你是一个编码智能体。生成代码后使用execute_python工具验证。如果出错,分析原因并修复。"},
        {"role": "user", "content": task}
    ]
    for turn in range(max_turns):
        response = client.chat.completions.create(
            model="glm-5.3",
            messages=messages,
            tools=tools
        )
        msg = response.choices[0].message
        messages.append(msg)
        if not msg.tool_calls:
            return msg.content
        for tc in msg.tool_calls:
            if tc.function.name == "execute_python":
                args = json.loads(tc.function.arguments)
                # 安全执行
                try:
                    result = eval(compile(args["code"], "", "exec"))
                    result_str = f"执行成功: {result}"
                except Exception as e:
                    result_str = f"执行失败: {e}"
                messages.append({
                    "role": "tool",
                    "tool_call_id": tc.id,
                    "content": result_str
                })
    return "超过最大轮次限制"

成本对比

模型 输入$/M 输出$/M 编程能力
GLM-5.3 $1.40 $4.40 开源第一
DeepSeek V4 Pro $2.00 $8.00 旗舰级
GPT-5.6 Sol $5.00 $25.00 最强

GLM-5.3的成本仅为GPT-5.6 Sol的28%(按输入计算),编程能力虽不及Sol但在开源模型中排名第一。

1M上下文处理大型代码库

# 传入整个代码库(在1M上下文限制内)
with open("main.py", "r") as f:
    codebase = f.read()

response = client.chat.completions.create(
    model="glm-5.3",
    messages=[
        {"role": "system", "content": "分析以下代码库,找出潜在的安全漏洞。"},
        {"role": "user", "content": codebase}
    ],
    max_tokens=8192
)

注意事项

  • 代码执行需在沙箱环境中运行,避免安全风险
  • GLM-5.3开源权重尚未完全发布,目前仅通过API访问
  • 复杂多步骤任务可能需要5-10轮对话,需设置合理的max_turns
  • Function Calling的JSON参数需验证后再执行

信息来源

  • 智谱AI官方API文档(z.ai)
  • GLM-5.3发布公告(2026年8月18日)
  • LM Market Cap定价数据(2026年8月20日更新)