ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

【一站式】本地部署 GLM-4.5-Air 量化版 + Claude Code Router + TaoToken 统一 Key 接入

【一站式】本地部署 GLM-4.5-Air 量化版 + Claude Code Router + TaoToken 统一 Key 接入 1. 本地 GLM-4.5-Air 量化版跑通后为什么还要接 Claude Code RouterGLM-4.5-Air 量化版是一套可以在本地显卡上跑起来的中等规模 MoE 模型AWQ 量化后显存占用明显下降适合用 vLLM 拉起一个 OpenAI 兼容接口。Claude Code 是 Anthropic 出的命令行编码助手默认只认官方账号登录。Claude Code Router 则是一个中间层把 Claude Code 发出的请求转发到任意 OpenAI 兼容端点包括你本地 vLLM 起的 GLM-4.5-Air。这套组合适合谁手上有 2 张 48G 或 8 张 20G 级别显卡、想用本地模型做代码补全和对话、又不想被官方账号绑死的开发者。核心检索词就是「GLM-4.5-Air 量化版 Claude Code Router vLLM 本地部署」。我试过在 A4500 20G×8 上部署模型能起来但接进 Claude Code 后输出会飘参数没调对。后来换 A6000 48G×2 重新配才稳定下来。下面把完整链路拆开vLLM 起服务、Claude Code 安装、Router 配置、TaoToken 统一 Key 接入、以及 401 和 local proxy failed 的排查动作。先说清楚一个关键点本地 vLLM 和 TaoToken 是两条通道。本地模型负责日常轻量请求TaoToken 统一 Key 负责需要更强模型或本地显存不够时的兜底。Claude Code Router 支持多 Provider你可以把本地 GLM-4.5-Air 设成 default把 TaoToken 通道设成备用这样既省显存又不掉链子。TaoToken 在这里的角色是统一 API 通道官网 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 地址 https://taotoken.net/api 。它提供 OpenAI 兼容的 Base URL 和 KeyClaude Code Router 里配一个 Provider 指向它即可。注意它不是替代本地模型而是补位。2. vLLM 拉起 GLM-4.5-Air 量化版的完整参数模型下载用 ModelScope先建 venv 隔离环境再装 modelscope 和 vllm。下载命令pip install modelscope modelscope download --model cpatonn-mirror/GLM-4.5-Air-AWQ --local_dir ./glm-4.5-air-awq下载完大概 63GB量化后参数 17B。装 vLLMpip install vllm启动命令是这套链路里最容易翻车的地方。A6000 48G×2 上实测能跑的参数CUDA_VISIBLE_DEVICES0,1 vllm serve ./glm-4.5-air-awq \ --pipeline-parallel-size 2 \ --host 0.0.0.0 \ --served-model-name glm-4.5-air-awq \ --dtype float16 \ --tool-call-parser glm45 \ --reasoning-parser glm45 \ --enable-auto-tool-choice \ --disable-custom-all-reduce \ --gpu-memory-utilization 0.95 \ --max-model-len 130000 \ --max-num-seqs 64 \ --port 8000几个参数解释一下。--pipeline-parallel-size 2对应两张卡做流水线并行。--tool-call-parser glm45和--reasoning-parser glm45是 GLM-4.5 系列专用的解析器不写这两个Claude Code 发来的 tool call 会解析失败模型会「说胡话」。--enable-auto-tool-choice让 vLLM 自动处理工具调用选择。--disable-custom-all-reduce在部分多卡环境下避免通信报错。--max-model-len 130000给足上下文Claude Code 的 system prompt 很长。启动后看到Uvicorn running on http://0.0.0.0:8000就算成功。先用 curl 验证curl http://127.0.0.1:8000/v1/models返回模型列表里有glm-4.5-air-awq就说明服务正常。这一步不过后面 Router 配了也白搭。3. Claude Code Router 配置片段与 TaoToken 统一 Key 接入先装 Claude Code 和 Routernpm install -g anthropic-ai/claude-code npm install -g musistudio/claude-code-routerRouter 配置文件在~/.claude-code-router/config.jsonWindows 是C:\Users\你的用户名\.claude-code-router\config.json。下面这份是本地 GLM-4.5-Air 加 TaoToken 兜底的完整配置可以直接复制改路径{ LOG: true, transformers: [ { path: /home/你的用户名/.claude-code-router/glm-4.5-air-disable-thinking-transformer.js } ], Providers: [ { name: glm-4.5-air, api_base_url: http://你的模型部署主机IP:8000/v1/chat/completions, api_key: none, models: [glm-4.5-air-awq], transformer: { use: [ [sampling, { temperature: 0.6, top_p: 1.0 }] ], glm-4.5-air-awq: { use: [reasoning] } } }, { name: taotoken, api_base_url: https://taotoken.net/api/v1/chat/completions, api_key: 你的TaoToken统一Key, models: [claude-sonnet-4-5, gpt-5] } ], Router: { default: glm-4.5-air,glm-4.5-air-awq, background: taotoken,claude-sonnet-4-5, think: taotoken,claude-sonnet-4-5 } }三件套对照表配任何 Provider 都要对齐这三项项目本地 GLM-4.5-AirTaoToken 通道Base URLhttp://主机IP:8000/v1/chat/completionshttps://taotoken.net/api/v1/chat/completionsAPI Keynone本地不校验TaoToken 控制台生成的统一 KeyModel IDglm-4.5-air-awqclaude-sonnet-4-5 / gpt-5TaoToken 的 Key 在控制台创建地址 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。创建后复制到上面api_key字段。模型 ID 以文档为准接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。Router里的default指向本地模型background和think指向 TaoToken这样后台任务和需要深度推理的请求走统一 Key 通道日常补全走本地显存压力小很多。4. 验证请求与成功结果从 ccr code 到实际路由配置改完重启 Routerccr restart然后在项目目录下启动ccr codeClaude Code 界面会显示用的官方模型名但实际请求已经被 Router 转发。验证是否真的走到本地看 vLLM 那边的日志会有POST /v1/chat/completions记录。如果日志里出现请求说明路由成功。再验证 TaoToken 通道。在 Claude Code 里触发一个后台任务或者临时把default改成taotoken,claude-sonnet-4-5再ccr restart发一条消息看是否正常返回。TaoToken 通道正常时返回内容和官方模型风格一致。模型对话页面可以单独测 Key 是否有效地址 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。在里面选模型、发消息能返回就说明 Key 和 Base URL 没问题。这一步能快速区分是 Router 配置问题还是 Key 本身问题。成功结果长这样ccr code启动后输入「帮我写一个 Python 快排」本地 GLM-4.5-Air 返回代码vLLM 日志有对应请求记录延迟在可接受范围。如果本地模型返回乱码或重复多半是--tool-call-parser没配对回去检查 vLLM 启动参数。5. 本篇常见错排查401、local proxy failed、reading choices401 Unauthorized。出现在 TaoToken 通道时先确认api_key字段填的是控制台生成的完整 Key没有多余空格。再确认 Base URL 是https://taotoken.net/api/v1/chat/completions少写/v1或写成首页都会 401。出现在本地通道时本地 vLLM 不校验 Key填none即可如果填了别的反而可能被拒。local proxy failed。这是 Claude Code Router 转发失败通常是本地 vLLM 没起来或 IP 端口写错。排查动作先在浏览器或 curl 访问http://主机IP:8000/v1/models不通就是 vLLM 问题检查--host是否设成0.0.0.0、防火墙是否放行 8000。通了但 Router 还报错检查api_base_url是否带/v1/chat/completions完整路径。reading choices 报错。一般是返回体格式不对vLLM 没按 OpenAI 格式返回。检查--served-model-name和 Router 里models数组是否一致名字对不上会解析失败。另外--tool-call-parser glm45必须写不写工具调用返回结构不对Claude Code 解析时就会报 reading choices。OAuth 相关报错。Claude Code 首次运行会要求登录官方账号如果没配 Router 直接跑claude就会卡在 OAuth。正确做法是先配好 Router用ccr code启动绕过官方登录。如果已经登录过官方账号又想切回 Router清掉~/.claude下的凭据再ccr restart。模型说胡话。A4500 20G×8 上遇到过换 A6000 48G×2 后正常。原因可能是显存不够导致部分层降精度或者--dtype和量化格式不匹配。AWQ 量化模型建议--dtype float16别用 bfloat16。6. 长期编码与 Agent 场景的通道选择本地 GLM-4.5-Air 适合高频、轻量的代码补全和对话显存占用可控不消耗外部额度。但遇到复杂重构、长上下文推理、Agent 多步任务时本地模型能力有上限这时候切到 TaoToken 统一 Key 通道更稳。Coding Plan 适合长期编码和 Agent 场景地址 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 。它把常用编码模型的调用打包配合 Claude Code Router 的background和think路由后台任务自动走这条通道不用手动切。API Keys 管理页在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 可以创建多个 Key 分别给不同项目用方便排查是哪个项目触发了 401。Claude Code 接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 里面有最新的 Base URL 和模型 ID 列表配置前对一遍避免模型名写错导致 reading choices 报错。最后一步实操把config.json里的default保持本地background和think指向 TaoTokenccr restart后跑一个需要多步推理的任务观察 vLLM 日志和 TaoToken 用量确认两条通道都在工作。这套配置跑顺之后本地模型和统一 Key 各司其职编码体验比单通道稳得多。
返回列表