LongCat 2.5 Preview 评测:思考开关、代码边界与免费体验

TOKRACE 实测美团 LongCat-2.5-Preview:两种思考模式均通过 15 道文本题,正文首响中位 4.510 秒与 1.221 秒;代码题 2/3 完成,金额题输出截断。附 33 次原始记录、API、价格与免费复测。

更新日期:2026-10-10

TOKRACE 原创测试与分析 · 实测日期:2026 年 10 月 10 日。

LongCat 2.5 Preview 评测结论:文本全对,代码遇到预算边界

对准备接入美团 LongCat 的开发者,这份评测给出一个有边界的答案:在本次 15 道短文本题中,默认思考通过 15/15,关闭思考通过 15/15;三道 JavaScript 题中两道完成,通过 8 项预定检查,另一道耗尽输出预算,没有返回正文代码。默认思考的正文首响中位数为 4.510 秒,关闭思考为 1.221 秒。它能处理这组短小的格式任务,但代码生成不能只看两道成功案例。

更值得关注的是等待差异:文本最慢一次正文首响达到 37.621 秒,结果仍然正确。金额转换代码题则思考至截断。“能答对”“及时返回”和“预算内完成”需要分别看。下文保留了全部 33 次请求、原题与回答,读者可以检查慢请求,也可以在 TOKRACE 免费复测默认模式。

这不是多轮代理或仓库级开发评测。文章的价值在于把准确 API ID、思考参数、测试输出与官方价格放到同一份可核对的记录里,帮助你决定接入后还要验证什么。

LongCat-2.5-Preview 是什么,API 怎么配置?

本文测试的是美团 LongCat-2.5-Preview,不是早期 LongCat-Flash 系列,也不是 LongCat-2.0。官方更新日志将 2.5 Preview 上线日期标为 2026 年 9 月 25 日,并介绍图片理解与编码相关能力;本次只验证文本和小函数,不能把厂商描述当成本站测得的成绩。

快速开始列出 1M 上下文和 128K 输出上限,并支持 OpenAI、Anthropic 两种 API 格式。这两项容量是官方规格;我们没有发送百万 token 输入,也没有验证极长输出是否稳定。TOKRACE 的接入地址使用 https://api.longcat.chat/openai/v1,完整请求地址是在后面追加 /chat/completions。

2026 年 10 月 10 日,本次凭据查询模型目录返回 HTTP 200,包含准确 ID LongCat-2.5-Preview。自行接入可在“接入与配置”选择“美团 LongCat”,保留 OpenAI 兼容协议、上述 Base URL 和准确模型名,再填写自己的 Key。模型资料页保留接入身份及评测入口。

怎么测:同一组题,交替测试两种思考模式

测试集为 TOKRACE 的 tasks-2026-09-26.1:JSON 抽取、格式指令和材料问答各五题。每个题目在默认思考与关闭思考下各请求一次,共 30 次文本请求;每对请求顺序交替,奇数题先默认、偶数题先关闭。temperature 为 0、max_tokens 为 2048、系统提示词为空;没有增加热身请求,也没有重试后挑选更好结果。

默认组不发送思考覆盖参数。关闭组只增加 {"thinking":{"type":"disabled"}};官方接口文档列出该字段,OpenCode 配置文档说明默认开启思考。测试记录区分第一段思考与第一段正文到达的时间;文章表格展示正文首响,包含正文之前的思考等待。

文本请求从 2026-10-10T03:49:41.487Z 到 2026-10-10T03:52:18.766Z(UTC;北京时间加八小时),由本地 macOS 客户端直连官方 API,复用 TOKRACE 流式解析器。这不是香港标准评测节点数据,也不是浏览器总等待。 请求串行执行,缓存命中、网络和服务负载未受控;每个模式每题仅一次,因此模式差异只能描述这批观测,不能视为普遍加速比例。三道代码题保留默认思考,输出上限为 4096,结果单列。

15 道文本题:关闭思考仍然全对,但不能承诺稳定提速

模式通过 / 请求正文首响中位完成耗时中位总输出 token
默认思考15 / 154.510 s4.791 s1,905
关闭思考15 / 151.221 s1.753 s269

默认组的上游总输出为 1,905 token,其中明确报告思考 token 1,636;关闭组总输出为 269 token,未观察到独立思考片段。思考属于总输出的明细,不能重复相加;关闭组未返回思考用量明细时,下方证据用“—”表示,不把缺失字段改成接口报告的零。

抽取题选对现居地点,并保留未知邮箱。 资料包含“现居杭州”和“曾去北京出差”,两种模式都返回 {"name":"林桐","age":28,"city":"杭州","email":null}。默认回答 · 关闭思考回答。去重题遵守了输出约束。 两组都只输出 B2,A1,C3,D4,没有额外标题或解释。原题与回答。材料问答没有沿用作废计划。 北区收到 12 件、3 件损坏,结果可用 9 件、周二送货、负责人为 null。对应证据。

最慢的 format-2 / default 请求正文首响为 37.621 秒。这是一个很简单的限定字段任务;诊断显示约 36.537 秒后才收到上游响应头,但仅凭这个时间不能判断是厂商排队、网络还是其他处理等待。该慢请求没有被排除,关闭模式同题的等待也明显高于其组内中位数。慢请求证据。

这批题目短、结构相似,满分主要说明格式、类型和少量材料事实符合检查。遇到扫描文档、含糊指令、跨段引用或真实业务噪声,仍需要额外样本。对于已经通过检查的固定格式任务,可以把关闭思考作为下一步验证的候选;复杂任务是否损失质量,本次没有测出答案。

代码评测:2/3 完成,金额题思考至输出截断

任务本次检查正文首响
金额转换:拒绝非法输入,避免浮点误差输出截断 · 18 项未执行—
保序去重:安全处理特殊键且不修改输入通过 · 3 项17.450 s
区间合并:乱序、相邻区间与输入不可变通过 · 5 项18.211 s

代码检查在请求生成之前确定,共计划 26 项。去重函数通过 3 项,覆盖 __proto__、constructor、空 id 和原对象身份;区间函数通过 5 项,覆盖乱序、相接、嵌套、负数、空数组和冻结输入。金额函数的 18 项检查包含 0.29、空白、非法格式和安全整数边界,但没有得到完整代码,因此未执行。不能把“未执行”写成通过,也不能说代码在这 18 项检查上报错。

金额题约 77.785 秒后以 finish_reason=length 结束,正文为空。接口报告总输出 4096 token,其中思考 4095 token,恰好触及本次 max_tokens=4096 上限。这说明在这道题、这次默认思考请求上,该预算不足以获得答案;不代表模型永远做不出金额转换,也不能保证增大预算就一定成功。将这个请求排除后给出“代码全部通过”,会掩盖接入时可能遇到的问题。

三个回答分别附在金额证据、去重证据、区间证据中。完成的回答使用独立 JavaScript 上下文和 1 秒执行时限检查,不注入凭据或网络接口;只在开头、结尾移除代码围栏,不修改函数逻辑。原始回答、截断状态和检查脚本一起保留,成功结果可以重新执行核对。

这些题不包含依赖安装、跨文件修改、测试失败后的迭代或真实工具调用,所以不能换算成 SWE-bench 等标准成绩。生产接入时还需要验证错误处理、权限限制、长任务中断恢复以及项目自己的回归测试。

免费体验、思考开关与官方 API 价格

TOKRACE 已提供有额度限制的免 Key 体验:未登录基础 5 次、登录后共 15 次,同一轮比较算一次。点击下方“免费复测第一题”会准备任务和准确模型,随后由你点击开始;不会自动请求其他模型。共享试用由服务器注入 Key,并保持默认思考,自配接口才可用自己的 Key 测试关闭模式。

在自己的模型配置中,关闭思考的额外参数为:

{"thinking":{"type":"disabled"}}

官方价格页在 2026 年 10 月 10 日列出的人民币限时价是:未命中缓存输入 ¥2 / 百万 token,命中缓存输入 ¥0.04 / 百万 token,输出 ¥8 / 百万 token。官网同时列出美元口径 $0.30、$0.006 和 $1.20;它们分别按官网币种表陈述,不是本站计算的汇率换算。

例如,假设一次调用有 1,000 个未缓存输入 token 和 1,000 个计费输出 token,按人民币列价估算为 ¥0.010。这是说明公式的假设例子,不是本次账单。折扣有时效,实际费用以平台结算为准;用户在 TOKRACE 免费体验也不代表上游永久免费。当前本站该接入未配置自动单价时仍显示“未知”,不能据此做零成本排名。

LongCat 2.5 Preview 常见问题

关闭思考一定更快吗?

本次关闭思考组的正文首响中位更低,但每题每模式只跑一次,缓存与服务负载未控制。我们观察到关闭模式也有慢请求,因此不承诺每次加速;也没有在难题上验证两种模式的质量差异。

支持图片、百万上下文和 Agent 工具调用吗?

官方介绍了图片理解、长上下文与开发工具适配。本文没有做图片、百万 token 或工具循环测试,不能用这 33 次短任务担保这些场景。你应在相同接入点用自己的输入和工具协议验证。

它比 DeepSeek、MiniMax 更好吗?

本次没有同时间、同参数的对照模型。其他文章的历史测量路径和时段不同,也不能直接排名。可以在竞速场选择模型并使用相同任务复测,测试方法见测量说明。

无需 Key 的免费入口在哪里?

点击下方免费复测按钮,或在竞速场的接入管理中选择“美团 LongCat 2.5 Preview”体验模型。选择厂商预设是配置自己凭据的入口;体验模型才使用本站额度。供应商限流或账户额度变化会影响可用性。

这份评测能支持哪些选择?

对短文本抽取、严格格式和小函数实现,本次结果支持把 LongCat 2.5 Preview 加入候选,并用自己的业务数据继续验证。对要求稳定低延迟的产品,应单独记录慢请求和跨时段表现;单看中位数会漏掉本文出现的等待波动。需要复杂推理时,不应仅凭这些简单题全对就关闭思考。

本次 33 个回答都来自同一模型接入点、一个短时间窗口,代码题没有测试关闭思考。我们没有验证长上下文、图像、工具循环、并发负载、长期稳定性或真实账单,也没有给予综合评分或“最强模型”称号。不同 tokenizer、缓存和网络路径会影响观测,不将短答案折算成宣传用 tok/s 或小样本 P95。

下方是全部原始证据和复测入口。想找更多样本,可以查看实测报告目录;本文与香港节点的标准报告分别标注,避免把本地首测混进服务器榜单。

原题、原始回答与代码检查

下载全部 33 次请求记录(JSON)

联系信息抽取 1 · 默认思考 · 通过

2026-10-10T03:49:41.487Z · 正文首响:7.108s · 输入 / 总输出 / 思考 token:82 / 147 / 125 · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:林桐,28 岁,目前居住在杭州。未提供电子邮件。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name":"林桐","age":28,"city":"杭州","email":null}
联系信息抽取 1 · 关闭思考 · 通过

2026-10-10T03:49:49.016Z · 正文首响:3.468s · 输入 / 总输出 / 思考 token:85 / 20 / — · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:林桐,28 岁,目前居住在杭州。未提供电子邮件。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name":"林桐","age":28,"city":"杭州","email":null}
联系信息抽取 2 · 关闭思考 · 通过

2026-10-10T03:49:53.087Z · 正文首响:1.066s · 输入 / 总输出 / 思考 token:87 / 21 / — · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:李明,36 岁,目前居住在成都。电子邮件为 li@example.test。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name":"李明","age":36,"city":"成都","email":"li@example.test"}
联系信息抽取 2 · 默认思考 · 通过

2026-10-10T03:49:54.649Z · 正文首响:3.442s · 输入 / 总输出 / 思考 token:84 / 169 / 146 · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:李明,36 岁,目前居住在成都。电子邮件为 li@example.test。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name":"李明","age":36,"city":"成都","email":"li@example.test"}
联系信息抽取 3 · 默认思考 · 通过

2026-10-10T03:49:58.378Z · 正文首响:4.510s · 输入 / 总输出 / 思考 token:82 / 153 / 131 · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:陈夏,22 岁,目前居住在南京。未提供电子邮件。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name":"陈夏","age":22,"city":"南京","email":null}
联系信息抽取 3 · 关闭思考 · 通过

2026-10-10T03:50:03.170Z · 正文首响:0.992s · 输入 / 总输出 / 思考 token:85 / 20 / — · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:陈夏,22 岁,目前居住在南京。未提供电子邮件。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name":"陈夏","age":22,"city":"南京","email":null}
联系信息抽取 4 · 关闭思考 · 通过

2026-10-10T03:50:04.644Z · 正文首响:1.094s · 输入 / 总输出 / 思考 token:89 / 29 / — · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:周舟,41 岁,目前居住在苏州。电子邮件为 zhou@example.test。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name": "周舟", "age": 41, "city": "苏州", "email": "zhou@example.test"}
联系信息抽取 4 · 默认思考 · 通过

2026-10-10T03:50:06.329Z · 正文首响:3.381s · 输入 / 总输出 / 思考 token:86 / 161 / 137 · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:周舟,41 岁,目前居住在苏州。电子邮件为 zhou@example.test。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name":"周舟","age":41,"city":"苏州","email":"zhou@example.test"}
联系信息抽取 5 · 默认思考 · 通过

2026-10-10T03:50:09.975Z · 正文首响:3.845s · 输入 / 总输出 / 思考 token:82 / 153 / 131 · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:吴雨,30 岁,目前居住在武汉。未提供电子邮件。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name":"吴雨","age":30,"city":"武汉","email":null}
联系信息抽取 5 · 关闭思考 · 通过

2026-10-10T03:50:14.168Z · 正文首响:1.221s · 输入 / 总输出 / 思考 token:85 / 20 / — · 结束原因:stop

题目

从以下资料提取联系信息。只输出一个 JSON 对象,恰好包含 name、age、city、email 四个字段;age 为数字,未提供的 email 为 null。不要 Markdown 或解释。
资料:吴雨,30 岁,目前居住在武汉。未提供电子邮件。历史备注提到曾在北京出差,不是现居城市。

原始回答

{"name":"吴雨","age":30,"city":"武汉","email":null}
保序去重 · 关闭思考 · 通过

2026-10-10T03:50:16.000Z · 正文首响:1.167s · 输入 / 总输出 / 思考 token:49 / 9 / — · 结束原因:stop

题目

把以下编号去重并保持首次出现的顺序:B2,A1,B2,C3,A1,D4。只输出用英文逗号连接的编号,不要空格、标题或解释。

原始回答

B2,A1,C3,D4
保序去重 · 默认思考 · 通过

2026-10-10T03:50:17.493Z · 正文首响:2.704s · 输入 / 总输出 / 思考 token:46 / 87 / 76 · 结束原因:stop

题目

把以下编号去重并保持首次出现的顺序:B2,A1,B2,C3,A1,D4。只输出用英文逗号连接的编号,不要空格、标题或解释。

原始回答

B2,A1,C3,D4
限定字段 · 默认思考 · 通过

2026-10-10T03:50:20.245Z · 正文首响:37.621s · 输入 / 总输出 / 思考 token:50 / 61 / 49 · 结束原因:stop

题目

仅输出 JSON 对象,且恰好包含 status 和 count 两个字段。status 的值必须为字符串 "ready",count 必须为数字 3。不要 Markdown、解释或额外字段。

原始回答

{"status":"ready","count":3}
限定字段 · 关闭思考 · 通过

2026-10-10T03:50:57.999Z · 正文首响:8.335s · 输入 / 总输出 / 思考 token:53 / 10 / — · 结束原因:stop

题目

仅输出 JSON 对象,且恰好包含 status 和 count 两个字段。status 的值必须为字符串 "ready",count 必须为数字 3。不要 Markdown、解释或额外字段。

原始回答

{"status":"ready","count":3}
严格排序 · 关闭思考 · 通过

2026-10-10T03:51:06.648Z · 正文首响:1.120s · 输入 / 总输出 / 思考 token:43 / 15 / — · 结束原因:stop

题目

将数值 12、3、25、8 按从小到大排序。只输出 JSON 数组,元素为数字。不要解释或代码围栏。

原始回答

[3, 8, 12, 25]
严格排序 · 默认思考 · 通过

2026-10-10T03:51:08.215Z · 正文首响:2.840s · 输入 / 总输出 / 思考 token:40 / 71 / 57 · 结束原因:stop

题目

将数值 12、3、25、8 按从小到大排序。只输出 JSON 数组,元素为数字。不要解释或代码围栏。

原始回答

[3,8,12,25]
大小写与换行 · 默认思考 · 通过

2026-10-10T03:51:11.160Z · 正文首响:8.163s · 输入 / 总输出 / 思考 token:41 / 96 / 86 · 结束原因:stop

题目

按原顺序将 apple、pear、plum 转为英文大写,每行一个单词。总共三行,不要编号、标点、空行或解释。

原始回答

APPLE
PEAR
PLUM
大小写与换行 · 关闭思考 · 通过

2026-10-10T03:51:19.484Z · 正文首响:1.198s · 输入 / 总输出 / 思考 token:44 / 8 / — · 结束原因:stop

题目

按原顺序将 apple、pear、plum 转为英文大写,每行一个单词。总共三行,不要编号、标点、空行或解释。

原始回答

APPLE
PEAR
PLUM
指定分隔符 · 关闭思考 · 通过

2026-10-10T03:51:20.844Z · 正文首响:1.224s · 输入 / 总输出 / 思考 token:66 / 18 / — · 结束原因:stop

题目

提取下面三个工单号,保持顺序:工单 TX-103 已关闭;工单 TX-207 正在处理;工单 TX-309 待分配。只用英文竖线连接三个编号,不要空格或解释。

原始回答

TX-103|TX-207|TX-309
指定分隔符 · 默认思考 · 通过

2026-10-10T03:51:22.598Z · 正文首响:3.967s · 输入 / 总输出 / 思考 token:63 / 69 / 49 · 结束原因:stop

题目

提取下面三个工单号,保持顺序:工单 TX-103 已关闭;工单 TX-207 正在处理;工单 TX-309 待分配。只用英文竖线连接三个编号,不要空格或解释。

原始回答

TX-103|TX-207|TX-309
材料问答 1 · 默认思考 · 通过

2026-10-10T03:51:26.818Z · 正文首响:5.048s · 输入 / 总输出 / 思考 token:107 / 110 / 93 · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:北区仓库今天收到 12 件货物,其中 3 件损坏,不可使用。下一次送货安排在周二。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable":9,"nextDelivery":"周二","manager":null}
材料问答 1 · 关闭思考 · 通过

2026-10-10T03:51:32.036Z · 正文首响:2.926s · 输入 / 总输出 / 思考 token:110 / 19 / — · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:北区仓库今天收到 12 件货物,其中 3 件损坏,不可使用。下一次送货安排在周二。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable": 9, "nextDelivery": "周二", "manager": null}
材料问答 2 · 关闭思考 · 通过

2026-10-10T03:51:35.510Z · 正文首响:0.996s · 输入 / 总输出 / 思考 token:110 / 20 / — · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:南区仓库今天收到 20 件货物,其中 4 件损坏,不可使用。下一次送货安排在周三。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable": 16, "nextDelivery": "周三", "manager": null}
材料问答 2 · 默认思考 · 通过

2026-10-10T03:51:37.134Z · 正文首响:18.103s · 输入 / 总输出 / 思考 token:107 / 189 / 171 · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:南区仓库今天收到 20 件货物,其中 4 件损坏,不可使用。下一次送货安排在周三。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable":16,"nextDelivery":"周三","manager":null}
材料问答 3 · 默认思考 · 通过

2026-10-10T03:51:55.499Z · 正文首响:4.578s · 输入 / 总输出 / 思考 token:107 / 145 / 127 · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:东区仓库今天收到 18 件货物,其中 6 件损坏,不可使用。下一次送货安排在周四。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable":12,"nextDelivery":"周四","manager":null}
材料问答 3 · 关闭思考 · 通过

2026-10-10T03:52:00.352Z · 正文首响:2.795s · 输入 / 总输出 / 思考 token:110 / 20 / — · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:东区仓库今天收到 18 件货物,其中 6 件损坏,不可使用。下一次送货安排在周四。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable": 12, "nextDelivery": "周四", "manager": null}
材料问答 4 · 关闭思考 · 通过

2026-10-10T03:52:03.764Z · 正文首响:1.353s · 输入 / 总输出 / 思考 token:110 / 20 / — · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:西区仓库今天收到 25 件货物,其中 5 件损坏,不可使用。下一次送货安排在周五。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable": 20, "nextDelivery": "周五", "manager": null}
材料问答 4 · 默认思考 · 通过

2026-10-10T03:52:05.726Z · 正文首响:4.485s · 输入 / 总输出 / 思考 token:107 / 160 / 142 · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:西区仓库今天收到 25 件货物,其中 5 件损坏,不可使用。下一次送货安排在周五。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable":20,"nextDelivery":"周五","manager":null}
材料问答 5 · 默认思考 · 通过

2026-10-10T03:52:10.498Z · 正文首响:6.193s · 输入 / 总输出 / 思考 token:107 / 134 / 116 · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:中区仓库今天收到 16 件货物,其中 2 件损坏,不可使用。下一次送货安排在周一。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable":14,"nextDelivery":"周一","manager":null}
材料问答 5 · 关闭思考 · 通过

2026-10-10T03:52:16.917Z · 正文首响:1.365s · 输入 / 总输出 / 思考 token:110 / 20 / — · 结束原因:stop

题目

只根据以下材料回答。输出恰好包含 usable、nextDelivery、manager 三个字段的 JSON 对象,不要额外文字。usable 是可用件数(数字),nextDelivery 是下一次送货时间(字符串),材料未说明的信息用 null,不能猜测。
材料:中区仓库今天收到 16 件货物,其中 2 件损坏,不可使用。下一次送货安排在周一。仓库负责人姓名没有记载。旧计划曾写周日,已作废。

原始回答

{"usable": 14, "nextDelivery": "周一", "manager": null}
金额转换:拒绝非法输入,避免浮点误差 · 输出截断,未执行检查 · 18 项预定检查

2026-10-10T03:52:18.767Z · 正文首响:— · 结束原因:length

输入 / 总输出 / 思考 token:107 / 4096 / 4095

题目

写 JavaScript 函数 parseCents(value)。value 必须是字符串:允许两端空白;只接受非负十进制金额,整数部分至少一位,小数最多两位;拒绝指数写法、符号、千分位、Infinity、空串、超过两位小数。返回整数分数,超过 Number.MAX_SAFE_INTEGER 则返回 null。非法类型或格式返回 null。不能把非法值四舍五入成合法值。只输出函数代码,不要 Markdown 或解释。

原始代码

可执行检查

const cases=[['0',0],[' 12.30 ',1230],['0.29',29],['1.2',120],['0001.02',102],['1.234',null],['-1',null],['+1',null],['1e3',null],['',null],['.5',null],['1.',null],['Infinity',null],['1,000',null],[null,null],[1,null],['90071992547409.91',9007199254740991],['90071992547409.92',null]]; for (const [input,want] of cases) if(parseCents(input)!==want) throw Error('Failed '+JSON.stringify(input));

Incomplete response

保序去重:安全处理特殊键且不修改输入 · 通过 · 3 项预定检查

2026-10-10T03:53:36.556Z · 正文首响:17.450s · 结束原因:stop

输入 / 总输出 / 思考 token:78 / 562 / 496

题目

写 JavaScript 函数 uniqueById(items)。items 是对象数组,每个对象有字符串 id 字段。保留每个 id 首次出现的原对象和原顺序,不修改输入或任何对象;空数组返回空数组。id 可为 __proto__、constructor 或空字符串。只输出函数代码,不要 Markdown 或解释。

原始代码

function uniqueById(items) {
  const seen = new Map();
  const result = [];
  for (const item of items) {
    const id = item.id;
    if (!seen.has(id)) {
      seen.set(id, true);
      result.push(item);
    }
  }
  return result;
}

可执行检查

const a={id:'__proto__',value:1},b={id:'constructor'},c={id:''},d={id:'x'};const input=Object.freeze([a,b,{id:'__proto__'},c,{id:''},d,{id:'constructor'}]);const got=uniqueById(input);if(got.length!==4||got[0]!==a||got[1]!==b||got[2]!==c||got[3]!==d)throw Error('Wrong identity or order');if(uniqueById([]).length!==0)throw Error('Empty');if(input.length!==7||a.value!==1)throw Error('Mutation');
区间合并:乱序、相邻区间与输入不可变 · 通过 · 5 项预定检查

2026-10-10T03:53:55.111Z · 正文首响:18.211s · 结束原因:stop

输入 / 总输出 / 思考 token:83 / 995 / 812

题目

写 JavaScript 函数 mergeIntervals(intervals)。输入为有限数字组成的闭区间 [start,end] 数组,保证 start<=end,输入可能乱序。返回按 start 排序的合并闭区间,相接区间也合并;不要修改输入或任何内层数组,空数组返回空数组。只输出函数代码,不要 Markdown 或解释。

原始代码

function mergeIntervals(intervals) {
  if (intervals.length === 0) {
    return [];
  }
  const sorted = intervals.slice().sort((a, b) => a[0] - b[0]);
  const merged = [];
  let currentStart = sorted[0][0];
  let currentEnd = sorted[0][1];
  for (let i = 1; i < sorted.length; i++) {
    const start = sorted[i][0];
    const end = sorted[i][1];
    if (start <= currentEnd) {
      if (end > currentEnd) {
        currentEnd = end;
      }
    } else {
      merged.push([currentStart, currentEnd]);
      currentStart = start;
      currentEnd = end;
    }
  }
  merged.push([currentStart, currentEnd]);
  return merged;
}

可执行检查

const cases=[[[[5,7],[1,3],[3,5]],[[1,7]]],[[[1,4],[2,3]],[[1,4]]],[[[0,0],[2,2]],[[0,0],[2,2]]],[[[-3,-1],[-2,0],[3,4]],[[-3,0],[3,4]]],[[],[]]];for(const [input,want] of cases){input.forEach(Object.freeze);Object.freeze(input);if(JSON.stringify(mergeIntervals(input))!==JSON.stringify(want))throw Error('Wrong merge');}