
版权与内容来源声明本文为原创整理。文中涉及官方文档、开源仓库、论文与公开报道的内容均在附表 A 中标注来源引用官方原文保持原样不作改写。文中命令、版本号与界面截图以本文成文时的实测/核验结果为准标注「待验证」的部分请以你本地环境实际输出为判断依据。本文不推荐任何不合规的软件获取方式也不对任何收益结果作承诺。转载请注明出处。第1章 先看清「七成」是哪个七成1.1 两次更新两种计价单位2026-10-19 晚间MiniMax 发布 M3.1 Flash。官方博客写的是线上推理速度提升近 3 倍、使用成本降低 70%同时给出美元挂牌价每百万 token 输入 0.15、输出 0.60、缓存读取 0.015。两天前的 10-17DeepSeek 把deepseek-flash更新到 V4.1-Flash-1017截至 2026-10-24官方定价页上这一档是输入 0.30 / 0.15 美元峰时 / 谷时、输出 1.20 / 0.60、缓存命中 0.006 / 0.003官方对这次更新强调的是缩短输出长度和任务运行时间。国内媒体转述的人民币价是每百万 token 输入 1 元、输出 4 元、缓存读取 0.1 元截至 2026-10-24出处见附表 A。模型接口里的名字输入未命中缓存缓存命中输入输出计价币种备注MiniMax M3.1 Flash1 元0.1 元4 元人民币 / 百万 token官方英文博客同时给出 0.15 / 0.015 / 0.60 美元DeepSeek deepseek-flash0.30 / 0.150.006 / 0.0031.20 / 0.60美元 / 百万 token斜杠两侧为峰时 / 谷时DeepSeek deepseek-v4-pro1.32 / 0.660.044 / 0.0223.96 / 1.98美元 / 百万 token同页对照非 Flash 档两种币种不做换算避免引入汇率假设本文后面的账全部用人民币只取 MiniMax 这一组价。表里有一处值得停一下人民币的 1 : 0.1 : 4和官方英文博客的 0.15 : 0.015 : 0.60比例完全一致。两套数字对得上说明媒体转述没走样。顺带说一句Flash 档的输入价只有同门 Pro 档的四分之一不到——你已经站在最便宜的那一档了再往下压单价空间有限。缓存读取为什么能便宜一个数量级值得单独说一句。服务端把上一次请求里「算过的前缀」的中间状态留着下一次开头一模一样就直接复用不用重算。它省的是算力所以价格才敢压到输入价的十分之一。各家对这个机制的叫法不一样但计费口径是同一个命中的部分按缓存价没命中的按全价。1.2 「降七成」是任务口径不是 token 口径官方博客那句的原话是 reducing usage costs by 70%紧挨着的限定语是 For agentic tasks——一个 Agent 任务跑完的综合成本。而同一篇里输入输出单价的降幅写的是「五成以上」缓存读取降「七成以上」。单价降五成多任务成本降七成中间那两成从哪来官方没有拆。我的读法是任务成本 单价 × token 数单价降五成多还能把任务成本降七成剩下的差额只能来自 token 数变少——更短的输出、更少的重试轮次。这不是抠字眼。它说明厂商自己也清楚单价不是账单的全部。1.3 看到「降价」先问三句降的是哪个价——挂牌价、缓存价还是任务综合成本按每 token 算还是按每任务算你自己的账单里被降的那一部分占几成第三问答不上来前两句就不用问了。第2章 一笔 Agent 账单的四段2.1 接口是无状态的历史要自己重发工具调用tool calling的循环长这样模型回一段话 → 你的程序执行工具 → 把结果拼回消息列表 → 再请求一次。每次请求都要把完整消息列表发过去因为服务端不替你记着上一轮。于是第 10 轮的请求里装着第 1 到第 9 轮的全部工具返回和全部回复第 20 轮装着前 19 轮。这就是重放replay同一段文字被反复计费。数一下重放的次数第 1 轮的内容要被后面 19 轮各重发一次第 2 轮被 18 轮重发一路减到 1——总共 190 个「轮次对」。平均下来每一段历史被重放 9.5 次。所以历史越长越贵不是加法是乘法。2.2 一段长 JSON会被重放十几遍第 3 轮工具返回了一份 12,006 token 的 CDN 清单——每个对象的三个尺寸变体、etag、mime、更新时间都在里面而模型真正要的只有 id 和一个尺寸。这一整段进了历史之后 17 轮每轮重发一次204,102 token占整个任务历史重放的 40.6%。这是本机模型里最刺眼的一行。你写代码时它只是一句return resp.json()账单上它是一笔分期付款。2.3 输出单价是输入的四倍MiniMax 这组价里输出 4 元、输入 1 元。DeepSeek 那组更极端输出是输入未命中价的 4 倍是缓存命中价的 200 倍。所以「少说两句」在账单上是有价格的。两个容易漏掉的点思考型模型先写推理再写答案推理 token 按输出计价上一轮吐出的内容会作为下一轮的输入再算一次。同一段文字可能先按输出收一次再按输入收若干次。把四段合起来看——固定前缀、历史重放、新增观察、输出——就是一笔 Agent 账单的全部来源。第 3 章会把这四段分别算成钱。第3章 本机实测把 20 轮拆成 token 结构3.1 建模方式与三条边界脚本在work/2026-10-24_04_账单实测.py纯标准库不联网、不调接口。cdworkPYTHONIOENCODINGutf-8 python2026-10-24_04_账单实测.py2026-10-24_04_账单实测.log三条边界先写清楚免得被当成账单截图这是按公开挂牌价乘 token 数的结构化估算不是任何一家厂商的真实账单token 数由字符长度折算中文 0.7 token / 字英文 3.8 字符 / token不是分词器实测同一段中文换个分词器能差两三成缓存命中率是设定值不是线上观测值。项目取值说明轮数20一次「查资料 → 读页面 → 改配置 → 验证」的典型长度系统提示1,244 token合成样本按字符折算工具定义1,813 token两个工具的 JSON Schema常规工具返回955 token一次检索的 5 条结果超长工具返回12,006 token第 3 轮一份 CDN 清单每轮输出700 token简短说明加一次工具调用末轮输出1,200 token最终答复单价1 / 0.1 / 4 元MiniMax M3.1 Flash 人民币挂牌价折算比例中文 0.7 token / 字英文 3.8 字符 / token非分词器实测3.2 结果77.1% 花在重放上分项成本元占单次任务固定前缀重放系统提示 工具定义0.06119.4%历史重放前几轮的观察与输出0.502377.1%本轮新增观察工具返回0.03024.6%输出 token0.05808.9%合计0.6516全部20 轮下来单次 0.6516 元。按每天 2,000 次、30 天算6 万次月账 39,096 元。这个数不算夸张但看构成就不好受了四分之三的钱花在把已经说过的话再说一遍。换个算法看同一件事0.6516 元里模型真正「读进新东西」只花了 0.0302 元剩下的 0.62 元都在重复读旧东西。这个比例不是模型差是循环本身决定的——你把同一段历史发了 20 次就得付 20 次的钱。3.3 逐轮看贵是怎么长出来的第 1 轮 0.0068 元第 20 轮 0.0513 元7.5 倍。前缀 token 从 3,057 涨到 45,553——同一件事越往后越贵因为要求模型「记得」的东西越来越多。下面是脚本里的核心循环删掉了逐轮明细和打印部分。defrun_task(rounds20,cache_hit0.0,pricePRICE_BASE,big_round3,big_tokensNone,obs_tokensNone,out_tokens700,final_tokens1200,cap_obsNone,windowNone):pricepriceorPRICE_BASE fixedest_tokens(SYSTEM)est_tokens(TOOLS)bigest_tokens(BIG_OBS)ifbig_tokensisNoneelsebig_tokens obs_nest_tokens(OBS_NORMAL)ifobs_tokensisNoneelseobs_tokens history,acc[],{cached:0.0,uncached:0.0,obs:0.0,out:0.0}foriinrange(1,rounds1):obsbigifibig_roundelseobs_nifcap_obsisnotNoneandobscap_obs:obscap_obs outfinal_tokensifiroundselseout_tokens histhistory[-window:]ifwindowelsehistory prefixfixedsum(otforo,tinhist)cachedprefix*cache_hit# 只命中「本轮之前」的稳定前缀uncached_prefixprefix-cached acc[cached]cached/1e6*price[cache_read]acc[uncached]uncached_prefix/1e6*price[input_miss]acc[obs]obs/1e6*price[input_miss]acc[out]out/1e6*price[output]history.append((obs,out))return{acc:acc,total:sum(acc.values())}这个循环里没有任何优化它只是把你每天在写的 agent loop 翻译成账单。看懂它就知道该在哪里动手history的长度、obs的长度、out的长度。第4章 命中率三档敏感性4.1 0 / 50 / 90 三档缓存命中率单次成本元相对基线月账6 万次元0%0.6516基线39,09650%0.3981降 38.9%23,88390%0.1952降 70.0%11,712同一份任务结构只改命中率价格一分没动。forhin(0.0,0.5,0.9):rrun_task(cache_hith)print(%5.0f%% %s 元 月账 %s 元%(h*100,money(r[total]),monthly(r[total])))4.2 为什么九成不是天方夜谭前缀缓存prompt caching的规则很硬从第一个 token 开始完全相同的部分才算命中。Agent 循环天生就该命中——系统提示不变、工具定义不变、历史只往后追加。所以命中率低通常不是模型的问题是拼接方式的问题。四个常见的自毁动作把当前时间、请求 id 写进系统提示的最前面每轮按相关度重新排序工具列表在历史中间插一条「当前进度摘要」把刚取回的检索结果插到历史前面而不是末尾。每一个都会让「相同前缀」在某个位置断掉断点之后全部按未命中计价。怎么验证自己的命中率看接口返回的用量字段里有没有「缓存命中」这一类计数。两家厂商都在价目表里单列了缓存价说明这是明码计费的一项。拿到这个数4.1 那张敏感性表就能换成你自己的曲线。4.3 提命中率的三个动作各有代价一是把会变的东西挪到最后代价几乎为零只改拼接顺序二是冻结工具定义的顺序和措辞代价是改工具要发版、不能热更新三是裁剪只从最早的一整轮开始裁代价是丢早期约束第 6 章细说。判据一句话**如果你的消息列表是每轮重新拼出来的而不是追加出来的命中率大概率是 0。**去代码里搜一下有没有messages [...]这种重建比看任何教程都快。第5章 降价七成 vs 命中率九成谁更省5.1 对照实验情形单次成本元相对 A月账6 万次元A 原价 命中率 0%0.6516基线39,096B 单价降七成 命中率 0%0.1955降 70.0%11,729C 原价 命中率 50%0.3981降 38.9%23,883D 原价 命中率 90%0.1952降 70.0%11,712E 单价降七成 命中率 90%0.0586降 91.0%3,514B 和 D 打平了0.1955 对 0.1952差 0.0003 元。一个单价打三折一个命中率做到九成在账单上几乎等价。5.2 为什么打平以及为什么不能照搬算一遍就明白降价是对所有输入输出打三折命中率九成相当于把输入成本抹掉 81%但对输出一点用没有。本模型里输出只占 8.9%两个效应刚好抵消。换一组参数就分开了输出占比更高的任务——长文写作、代码生成——命中率的天花板会明显低于降价缓存价不是输入十分之一的厂商命中率的杠杆也会变短。这个「打平」是这组参数的结论不是规律。真正的差别在三个地方降价是厂商动作。48 小时内两家接连更新谁都能拿到它不构成你的优势命中率是代码动作。写一次长期生效换模型也带得走覆盖面不同。降价对所有 token 生效命中率只对「重复的前缀」生效新增观察永远按未命中算。5.3 判据先看输入占比再看命中率输入占账单八成以上、命中率低于五成 → 先做命中率命中率已经八成以上 → 再谈换更便宜的模型。还有个信号值得留意命中率做到九成之后输出在账单里的占比从 8.9% 涨到 29.7%0.0580 除以 0.1952。战场换人了——这时候压输出才开始划算在那之前压输出只是挠痒。再补一个反例如果你的任务平均只有 3 到 5 轮历史重放占不到一半那第 4 章这套敏感性对你几乎无效。这种任务里降价是真降价换个更便宜的模型就是最直接的动作。先量轮数再决定信谁。大模型学习路线图从零基础到能自己动手做 Agent按阶段说明每一步该学什么、哪些可以先跳过。第 5 章这种「先算清账再挑模型」的顺序正好对应路线图里工程化那一段。放在资料包里扫码即可获取第6章 你该改的三步6.1 历史怎么裁整轮滑窗只保留最近 N 轮。本机把 N 设成 6命中率为 0 时省 41.8%命中率九成时省 26.5%。代价是早期约束丢失——第 2 轮交代的「别动生产库」到第 15 轮已经不在上下文里了。滚动摘要把前 N 轮压成一段话。代价是要多调一次模型这次调用的输出按 4 元计价而且摘要本身也会进历史被后面每轮重放。状态外置把「已经确认的事实」写成结构化字段每轮只带这个字段不带原始对话。代价最大——要改工具协议工具得能读写这份状态。一个反直觉的点滑窗在命中率高的时候省得更少41.8% 掉到 26.5%因为被裁掉的那段本来就已经是 0.1 元的缓存价。它真正省的是上下文窗口和首 token 延迟账单只是附带。这里有个容易忽略的冲突裁剪会打断前缀。前缀缓存只认从头开始逐字相同你删掉中间某一轮断点之后的内容全部按未命中重算。于是「裁历史省 token」和「提命中率省钱」是互相拉扯的裁掉一段省下它后面每轮 0.1 元的缓存价但要付一次重新预填的全价。判断方法很朴素——被裁的那段还剩几轮要跑剩 10 轮以上裁只剩两三轮就收尾别裁。6.2 工具返回怎么截优先级字段白名单 条数上限 字符截断。defslim_observation(text,keep_records8):字段白名单 记录条数上限只留定位一个对象所必需的字段。datajson.loads(text)out[]foraindata[assets][:keep_records]:out.append({id:a[id],title:a[title],url:a[cdn][path],bytes:a[cdn][bytes]})returnjson.dumps({ok:True,assets:out},ensure_asciiFalse,separators(,,:))12,006 token 的清单只留 id、title、url、bytes 和前 8 条压到 246 token压缩 98.0%。整个任务单次成本从 0.6516 降到 0.4399省 32.5%命中率九成时从 0.1952 降到 0.1455省 25.5%。对照一下无脑硬截到 2,000 token只省 27.6% 和 21.7%还可能把 JSON 截成半截下游解析直接报错。两件事要一起看长度压掉 98%账单只降 32.5%——剩下的钱在别的轮次的重放里。这就是「账单结构」四个字的含义任何单点优化只能动一段动不了全部。还有一个细节白名单按「下一轮会不会用到」来定不是按「这个字段好不好看」。清单里的 mime、etag、updated_at 看着无害但二十轮里没人在决策时读过它它就是纯成本。判断标准只有一句——这个字段在后续任何一轮里被引用过吗没有就去掉。6.3 输出怎么压输出单价是输入的 4 倍但要不要压得看你处在 5.3 说的哪个阶段。命中率低的时候压输出省下的钱连零头都算不上命中率高的时候它一下子变成三成。三个做法只回字段名和结论不复述原文用 JSON schema 约束长度把长解释留到最后一轮一次性给。代价要认过度压缩会让模型丢掉中间推理返工一次就把省下的钱吐回去——而返工意味着多跑一整轮一轮的成本还随轮数递增。动作动的是哪一段本机实测省多少代价什么时候别做只留最近 6 轮历史重放41.8%命中率 0/ 26.5%90%早期约束丢失任务有「开头定下的规则」返回字段白名单 条数上限历史重放与新增观察32.5% / 25.5%后续轮次可能缺字段要二次取数返回本身就是结论硬截断到固定长度历史重放27.6% / 21.7%可能截出非法 JSON结果要给下游解析第7章 把这套算法搬到你自己的账单上7.1 三个必看量一是每轮平均输入 token看趋势是抬头还是平的二是输入里命中缓存的部分占多少看接口返回的用量字段字段名各家不同以官方文档为准三是输出占总 token 的比例。第一个告诉你结构有没有问题第二个告诉你单价有没有兑现第三个告诉你下一步该压哪里。7.2 一周能做完的自查把消息列表改成只追加跑一百次看命中率有没有从 0 起来找出 token 数最大的那一次工具返回给它加字段白名单在日志里记下每轮的输入 token 数画一条曲线把「当前时间」从系统提示挪到用户消息末尾用本机那个脚本把你这周的真实参数代进去算三种命中率下的差价。五件事都不需要换模型也不需要等下一次降价。怎么算这一周有收获命中率从个位数抬到五成以上或者单次任务成本降三成两个达成一个就够。都达不到通常说明你的任务本身没有可复用的前缀——短任务、一次性问答本来就不吃缓存这碗饭别硬套。7.3 单价是厂商给的结构是你给的截至 2026-10-24这一周里两家先后更新过一次MiniMax 直接下调了挂牌价DeepSeek 走的是缩短输出这条路。两条路最后都落在「任务成本」上而不是单价上。下一次更新还会来但每次之后你的账单降不降取决于你的 Agent 每一轮往上下文里塞了什么——塞了多少历史、塞了多长的工具返回、让它说了多少废话。这三件事厂商帮不了你。AI 大模型知识库在线可查Agent Skills 从入门到落地、Claude Skills 完全指南等专题按目录浏览即可。第 6、7 章那些裁剪与截断的做法配合知识库里的 Agent 专题看更容易落地。放在资料包里扫码即可获取附表 A本文引用事实与出处对照表序号事实出处本文位置1MiniMax M3.1 Flash 于 2026-10-19 正式发布官方称推理速度近 3 倍、使用成本降 70%MiniMax 官方博客 MiniMax M3.1 Flash: Redefining Agent Performance and Cost2026-10-19https://www.minimax.io/blog/minimax-m31f1.1、1.22官方美元定价每百万 token 输入 0.15、输出 0.60、缓存读取 0.015同上表 13人民币定价输入 1 元、输出 4 元、缓存读取 0.1 元每百万 token上海证券报·中国证券网《MiniMax 开源 M3.1 Flash 模型 上线三天处理超 100 万亿词元》2026-10-23https://www.cnstock.com/commonDetail/8074791.1、表 14与 M3 相比输入输出单价降 50% 以上、缓存读取降 70% 以上同上新民晚报2026-10-21https://paper.xinmin.cn/html/xmwb/2026-10-21/7/250536.html1.25「使用成本降低 70%」限定在 Agent 任务口径原文 For agentic tasks, the model’s overall usage cost is 70% lowerMiniMax 官方博客同第 1 条1.26输出速度 200 TPS、中位数 170 TPS同上南方2026-10-20https://www.nfnews.com/content/EynG4eaZ3Z.html1.17DeepSeek 于 2026-10-17 更新 V4.1-Flash-1017上海证券报同第 3 条1.18deepseek-flash 定价与峰谷规则缓存命中 0.006 / 0.003未命中 0.30 / 0.15输出 1.20 / 0.60美元峰 / 谷谷时为峰时一半DeepSeek 官方定价页 Models Pricing https://api-docs.deepseek.com/quick_start/pricing表 1920 轮任务的全部成本数字0.6516 元、77.1%、204,102 token、三档敏感性与对照实验本机实测work/2026-10-24_04_账单实测.py输出见work/2026-10-24_04_账单实测.log第 3—6 章各表10token 折算比例中文 0.7 token / 字、英文 3.8 字符 / token与全部样本文本本机脚本内常量与合成样本属本文假设非分词器实测3.111待验证上述人民币价格未在厂商中文定价页直接核到来源为三家媒体转述官方口径官方英文博客的美元价与之比例一致说明性条目不做结论表 1 注附表 B术语速查表术语一句话解释在本文哪里用到工具调用tool calling模型输出一个结构化请求由你的程序去执行再把结果交回模型2.1agent loop模型回复、执行工具、拼回结果、再请求这样一个反复的循环3.3重放replay把之前轮次的内容在新一次请求里原样再发一遍按输入 token 计费2.1、2.2前缀缓存prompt caching服务端把「从头开始完全相同」的开头记下来命中部分按更低的价计费4.2缓存命中率一次请求的输入里命中缓存那部分的比例第 4 章输入 / 输出 token发给模型的内容 / 模型吐出的内容两者单价不同输出通常贵数倍2.3推理 token思考型模型在给出答案前写的过程文字按输出计价2.3上下文窗口一次请求最多能装多少 token超了就要裁或分段6.1字段白名单只保留明确列出的字段其余字段不进上下文6.2写在最后这篇用到的资料写这篇文章时把相关的官方文档和源码又翻了一遍顺手也整理了几份配套的东西大模型学习路线图从零基础到能自己动手做 Agent按阶段说明每一步该学什么、哪些可以先跳过《LangChain LangGraph MCP 智能体开发实战》视频课7 个模块从私有化部署、EmbeddingRAG 到 MCPAgent 全流程AI 大模型知识库在线可查Agent Skills 从入门到落地、Claude Skills 完全指南等专题按目录浏览即可640 套 AI 大模型行业报告 经典 PDF 书籍看行业落地案例和别人怎么做的时候用得上大模型零基础到精通教学视频跟着敲一遍比只读文档快得多资料是我自己整理的放在下面这个码上扫码即可获取添加时备注「AI」优先通过。资料按「先路线、再动手、最后查漏」的顺序整理好了建议先看学习路线那一份照着它挑一条适合自己当前基础的路径再往下看。