ccswitch 里获取 deepseek 用量代码:把 endpoint 改到 TaoToken 的实操大纲
1. ccswitch 查询 deepseek 用量时 endpoint 到底该填什么ccswitch 是一个把多家大模型 API Key 集中管理的本地小工具它最实用的能力之一就是在切换供应商的同时顺手把账户余额、用量拉回来显示。很多人第一次配 deepseek 用量代码时会卡在同一个地方endpoint 到底填官方地址还是中转地址填错了要么一直转圈要么直接报账户无效。我先把结论说清楚ccswitch 的用量查询走的是「余额接口」它默认按 OpenAI 兼容格式去请求{{baseUrl}}/user/balance。也就是说你只要把 baseUrl 换成 TaoToken 的 API 地址再把 apiKey 换成 TaoToken 生成的 Keydeepseek 的用量就能和别的模型一起在 ccswitch 里统一查看。这对同时用 deepseek、Claude、GPT 的开发者特别省事不用来回登录好几个后台。这篇就按「能跟做」的标准来写先讲清楚 ccswitch 里 deepseek 用量代码的调用链路再给出可复制的 endpoint 配置片段然后跑一次真实的用量拉取最后把常见的 401、local proxy failed、reading choices 这些报错挨个排掉。你跟着走一遍本地就能看到 deepseek 的余额和赠送额度。需要提前说明的是ccswitch 的用量查询本质是一次 GET 请求返回体里带is_available和balance_infos两个关键字段。理解这两个字段后面所有排错都会变得简单。下面进入配置环节。2. TaoToken 前置准备拿到 Base URL 和 API Key在动 ccswitch 之前得先把两样东西准备好Base URL 和 API Key。TaoToken 的 API 地址是https://taotoken.net/api注意这里不带任何查询参数ccswitch 里填的就是这个根地址后面的/user/balance由用量代码自己拼上去。API Key 的获取路径是登录后进入控制台在 API Keys 页面新建一个。建议给 ccswitch 单独建一个 Key命名成ccswitch-balance之类方便以后按用途吊销。新建完立刻复制页面刷新后就看不到完整 Key 了。这里有个容易踩的坑ccswitch 的用量查询和实际对话请求可以共用同一个 Key但如果你在 ccswitch 里既配了对话又配了余额查询要确认两处填的 Key 是同一个否则会出现「对话正常但余额显示账户无效」的割裂现象。我试过把两个 Key 混用排查了半小时才发现是 Key 不一致。准备好之后你手里应该有项目值说明Base URLhttps://taotoken.net/api不带斜杠结尾不带 UTMAPI Keysk-开头的一串控制台新建只显示一次查询路径/user/balance由用量代码拼接请求方法GET不要用 POST如果你还想在 ccswitch 里同时管理对话模型模型 ID 直接填deepseek-chat或deepseek-reasoner即可Base URL 和 Key 与上面保持一致。这样一套配置既能查用量又能发请求ccswitch 的三件套Base URL Key Model ID就齐了。3. 可复制的 endpoint 配置与用量代码片段ccswitch 的用量查询配置通常是一个 JSON 或 JS 对象核心是request和extractor两部分。下面这份可以直接粘进 ccswitch 的自定义用量配置里路径和字段名保持和原工具一致。{ request: { url: https://taotoken.net/api/user/balance, method: GET, headers: { Authorization: Bearer {{apiKey}}, User-Agent: cc-switch/1.0 } }, extractor: function(response) {\n if (!response || response.is_available ! true) {\n return { isValid: false, invalidMessage: 账户无效或 API Key 错误 };\n }\n const balanceInfo response.balance_infos response.balance_infos[0];\n if (!balanceInfo) {\n return { isValid: false, invalidMessage: 未找到余额信息 };\n }\n const remaining parseFloat(balanceInfo.total_balance);\n const currency balanceInfo.currency || CNY;\n return {\n isValid: true,\n remaining: remaining,\n unit: currency,\n extra: 充值余额: balanceInfo.topped_up_balance currency , 赠送余额: balanceInfo.granted_balance currency\n };\n} }如果你更习惯用 TOML 风格的配置部分 ccswitch 版本支持可以写成这样[balance] base_url https://taotoken.net/api path /user/balance method GET auth_header Authorization auth_prefix Bearer user_agent cc-switch/1.0关键点有三个。第一url里不要出现{{baseUrl}}没被替换的情况如果你在 ccswitch 里已经单独配了 baseUrl 变量那就写{{baseUrl}}/user/balance否则直接写完整地址更稳。第二Authorization的格式必须是Bearer加空格再加 Key少一个空格就会 401。第三extractor里对total_balance做了parseFloat因为接口返回的是字符串不转数字 ccswitch 的进度条会显示异常。把这段配置保存后ccswitch 会在刷新时自动发起请求。你不需要手动点「测试」它一般会在切换供应商或启动时触发一次。如果没触发检查一下 ccswitch 的用量刷新开关是否打开。4. 验证请求本地跑通一次用量拉取并核对字段配置写完不能只看界面最好用命令行先验证一次确认返回字段和 ccswitch 解析的一致。打开终端把下面的命令里的 Key 换成你自己的curl -s -X GET https://taotoken.net/api/user/balance \ -H Authorization: Bearer sk-你的Key \ -H User-Agent: cc-switch/1.0正常返回大概长这样{ is_available: true, balance_infos: [ { currency: CNY, total_balance: 42.50, topped_up_balance: 40.00, granted_balance: 2.50 } ] }拿到这个返回后逐项核对is_available必须是true否则 ccswitch 会直接判账户无效balance_infos是数组取第一个元素total_balance是字符串42.50经过parseFloat后变成数字 42.5currency是CNY。ccswitch 界面上的「剩余」显示的就是 42.5「单位」显示 CNYextra里会拼出充值余额和赠送余额。如果 curl 能返回但 ccswitch 界面还是空多半是extractor里的字段名写错了比如把balance_infos写成了balance_info。这时候把 ccswitch 的日志打开看它实际拿到的 response 是什么对照着改字段名即可。验证通过后你在 ccswitch 里切换 deepseek 供应商时余额就会实时刷新。多模型场景下每个供应商配一份对应的用量代码ccswitch 会分别请求各自的 endpoint互不干扰。5. 本篇常见报错排查401、local proxy failed、reading choices排错这块我按真实遇到的顺序列基本都是配置层面的问题不用改代码。401 Unauthorized最常见。九成是 Key 错了或者Bearer后面少了空格。先确认 Key 没有多余换行再确认 header 拼出来是Bearer sk-xxx。还有一种情况是 Key 被吊销了去控制台看一眼状态。如果对话能用但余额 401说明你对话和余额用了两个不同的 Key统一成一个。local proxy failed这个报错通常出现在 ccswitch 走了本地代理转发的时候。检查 ccswitch 的代理设置如果开了本地代理端口确认端口没被占用、代理进程还活着。另一种可能是 baseUrl 填成了带路径的地址比如https://taotoken.net/api/v1导致拼接后变成/api/v1/user/balance路径不对自然失败。把 baseUrl 改回https://taotoken.net/api就好。reading choices 报错这个一般不是余额查询的问题而是对话请求的返回体解析失败。ccswitch 在拉取模型列表或发对话请求时如果 endpoint 指向了余额接口就会拿不到choices字段。检查一下对话配置和用量配置是不是串了对话的 baseUrl 应该指向兼容对话的路径用量单独走/user/balance。OAuth 相关报错如果你在 ccswitch 里配了需要 OAuth 的供应商又混用了 API Key 模式会提示 OAuth token 无效。deepseek 用量查询走的是纯 API Key不需要 OAuth把 OAuth 开关关掉即可。返回 is_available 为 falseKey 有效但账户状态异常去控制台确认账户是否正常、是否有欠费。这种情况 ccswitch 会显示「账户无效或 API Key 错误」但实际原因在账户侧。排查时建议按「curl 能不能通 → ccswitch 日志有没有 response → extractor 字段对不对」这个顺序走基本三步内能定位。6. 把 deepseek 用量接进统一面板的下一步配置跑通之后你可以把同样的模式复制到其他模型上。ccswitch 的价值就在于一套 endpoint 配置模板能复用到多个供应商只要对方的余额接口兼容is_availablebalance_infos这套结构extractor 几乎不用改。如果你还想在 ccswitch 里直接发对话请求验证 Key 是否可用可以打开模型对话页面发一条测试消息确认对话链路和用量链路用的是同一套凭证。长期做编码或 Agent 任务的话Coding Plan 能把用量和调用统一管理省得每个模型单独对账。接入过程中如果遇到 endpoint 拼接或字段解析的问题接入文档里有完整的路径说明和返回示例对照着改比盲试快得多。API Key 建议按用途分开建ccswitch 用一个、脚本用一个出问题好定位也好吊销。

相关新闻

从工具到伙伴:OpenClaw Agent 28小时进化实录,TaoToken 统一 Key 打通 Playwright 与 HEARTBEAT.md

从工具到伙伴:OpenClaw Agent 28小时进化实录,TaoToken 统一 Key 打通 Playwright 与 HEARTBEAT.md

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:08:46 阅读更多 →
刷题复盘:字符串反转、滑动窗口与动态规划的共性思维与三大坑点

刷题复盘:字符串反转、滑动窗口与动态规划的共性思维与三大坑点

1月15号,力扣刷题打卡照常进行。今天给自己排了三道题:一道字符串模拟、一道滑动窗口、一道二维动态规划,难度控制在简单加两个中等。字符串题考察的是边界细节,滑动窗口考察的是指针维护的节奏感,动态规划则是老生常谈…

2026/10/10 11:07:46 阅读更多 →
盘古大模型提示词工程实战指南:结构化模板、核心技巧与避坑排查

盘古大模型提示词工程实战指南:结构化模板、核心技巧与避坑排查

盘古大模型的提示词工程,我前前后后折腾了两个月,踩了不少坑,也总结出了一套稳定可复用的写法。这篇笔记不是从官方文档里抄出来的概念梳理,而是我在华为云上拿真实业务场景一点点试出来的经验记录。如果你跟我一样,之…

2026/10/10 11:07:46 阅读更多 →

最新新闻

rea范式解析:从读取求值应用到规则引擎的工程实践

rea范式解析:从读取求值应用到规则引擎的工程实践

1. 从“rea”这个标题说起:一个被低估的通用缩写第一次看到“rea”这个标题的时候,我脑子里蹦出来的第一反应是——这大概率又是一个被缩写玩坏的项目名。在技术圈混久了你会发现,越是短到只有三个字母的标题,背后藏的东西往往越不…

2026/10/10 11:48:11 阅读更多 →
express-validator `checkExact()` 完全指南:精确校验请求字段,杜绝未知字段注入

express-validator `checkExact()` 完全指南:精确校验请求字段,杜绝未知字段注入

后端 【免费下载链接】express-validator An express.js middleware for validator.js. 项目地址: https://gitcode.com/gh_mirrors/ex/express-validator 点击查看 免费下载 checkExact() 是 express-validator 提供的一种"反向"校验中间件:…

2026/10/10 11:48:11 阅读更多 →
Redis List底层结构与实战:从quicklist到消息队列的正确用法

Redis List底层结构与实战:从quicklist到消息队列的正确用法

这是Redis系列教程的第八篇。按顺序写到今天,String、Hash、Set、ZSet 都已经聊完了,List 我一直故意放到最后讲。原因是它使用门槛最低——LPUSH、RPUSH、LPOP、LRANGE 这些名字一看就懂,和编程语言里的链表、数组太像了——但真正用对的人其…

2026/10/10 11:48:11 阅读更多 →
刷穿 LeetCode 492:构造矩形(简单)——从 √area 出发的模拟枚举法详解

刷穿 LeetCode 492:构造矩形(简单)——从 √area 出发的模拟枚举法详解

教程文档 【免费下载链接】LogicStack-LeetCode 公众号「宫水三叶的刷题日记」刷穿 LeetCode 系列文章源码 项目地址: https://gitcode.com/gh_mirrors/lo/LogicStack-LeetCode 点击查看 免费下载 本文是「刷穿 LeetCode」系列第 492 篇题解的深度展开。作为 Web 开…

2026/10/10 11:48:11 阅读更多 →
搜索插入位置怎么解?二分查找边界条件一次说透

搜索插入位置怎么解?二分查找边界条件一次说透

1. 问题本质&#xff1a;这题到底在考什么先别急着看模板背代码&#xff0c;我见过太多人刷题时看到"二分查找"就直接默写while left < right那套&#xff0c;结果做到"搜索插入位置"这种变体题时&#xff0c;边界条件全乱套。搜索插入位置这个题目本质…

2026/10/10 11:48:11 阅读更多 →
FasterViT实战:图像分类换掉CNN主干的理由与调参指南

FasterViT实战:图像分类换掉CNN主干的理由与调参指南

简介&#xff1a;这份资源面向深度学习开发者与计算机视觉学习者&#xff0c;围绕FasterViT这一改进型视觉Transformer架构&#xff0c;提供图像分类任务的完整实战代码与配套数据。FasterViT通过局部注意力、渐进式解码与线性变换层等设计&#xff0c;在保持精度的同时降低计算…

2026/10/10 11:47:10 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起&#xff1a;为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念&#xff0c;很多人会觉得它离自己很远——不就是天上的星星怎么转吗&#xff1f;但如果你正在做航天任务规划、遥感数据接收、星座设计&#xff0c;甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起&#xff1a;为什么你的代码里到处都是重复逻辑刚入行那会儿&#xff0c;我写过一个用户管理模块&#xff0c;注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么&#xff0c;能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介&#xff1a;这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目&#xff0c;以Boss直聘岗位数据为对象&#xff0c;适合用作毕业设计、课程设计或期末大作业。资源包共38个文件&#xff0c;约246KB&#xff0c;以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:25 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →