文档

Core 与 Edge 本地验收

可操作入口、验收步骤、冻结预算与本地测试的真实边界

归档内容,只读,不代表现行方案。现行文档见文档总览。

当前已达到 Core/Edge 文本调用、计费及证据恢复的本地验收状态。独立 Core、Edge、恢复 Worker 和本地合成网关保持运行。本轮没有付费调用 uumi、修改现网或部署;此入口的模型输出是固定合成样本,不是实际 AI 生成。已有真实 uumi 验证单列在模型能力验收。

打开和操作

当前 Swagger / Postman 入口;模型为 text-fixture。运行信息在本机 coordination/acceptance/core-edge/acceptance.json;重新启动后随机端口会变化,以该文件为准。该文件只有地址和私有凭据文件位置,不含 Key。

推荐先运行客户验收客户端,不需要复制 Key:

cd /Users/wangzihao/Projects/OceanWay/platform/oceanway-api-edge
python3 scripts/acceptance-client.py \
  --manifest /Users/wangzihao/Projects/OceanWay/coordination/acceptance/core-edge/acceptance.json \
  --customer alice --protocol chat

把 customer 改为 bob 比较五折;把 protocol 改为 responses、messages 或 gemini 验证其他入口;加 --stream 验证流式。返回包含 HTTP 状态、原协议响应和前后余额,不输出 Key。人工验收请逐条执行,避免并行请求干扰余额差额观察。

附加操作:

# 查看本人余额、预留与待核对数量
python3 scripts/acceptance-client.py --manifest /Users/wangzihao/Projects/OceanWay/coordination/acceptance/core-edge/acceptance.json --customer alice --action balance

# 查看本人流水
python3 scripts/acceptance-client.py --manifest /Users/wangzihao/Projects/OceanWay/coordination/acceptance/core-edge/acceptance.json --customer alice --action ledger

# 请求超过允许输出上限,预期 422,钱包版本与金额不变
python3 scripts/acceptance-client.py --manifest /Users/wangzihao/Projects/OceanWay/coordination/acceptance/core-edge/acceptance.json --customer alice --action reject

使用 Swagger 时,读取 manifest 所指私有 fixture 文件,选择 customers 中的 keys.valid.key 填入 Authorize;不要填 Core 或网关服务凭据。替换示例模型为 text-fixture。可下载 Postman 集合,填写同样的模型、客户 Key 和一次请求使用的小写 UUID 幂等键。

验收项目

操作应观察的结果
Alice / Bob 同一 Chat 请求同样的测试用量,分别扣 10 / 5 microcredits;这里是测试积分最小单位,不是人民币售价
Responses、Messages、Gemini 普通 / SSE按原协议返回,Core 使用对应计量语义;Alice 分别为 10、15、10 microcredits,Bob 为 5、8、5
超出 16 的输出请求、多个结果、工具/图片等未支持能力422,网关零请求;本轮 12 类拒绝发生在 Core 准入前,未新增预留
模型回包超输入/输出政策HTTP 200 不等于已扣款;原证据保留,Core 标记 over_bound / pending,实际扣费 0,预留继续占用
重交已完成证据、丢失结算回包、Worker 被强制终止只恢复证据与结算确认,不再执行模型,不重复扣费;已有故障报告,无需人工破坏运行环境
余额 / Key 额度不足准入失败,不发送供应请求;其他请求的预留不被消费

预检故障场景已留下待核对预留用于检查,包括已领取发送权但响应丢失、缺 usage、断流和两笔用量越界;并非新的客户请求导致。查看前后差额,不要要求所有历史测试预留归零。无足够证据的操作不会因 Worker 扫描自动退款。

本轮实现和验证

新增 text-limits-v1,按模型配置并随操作冻结:每个输入计量分量最大 128、合并输出最大 16、请求最大 4096 字节。本例保守预留 399 quota;Alice 预留 399 microcredits,Bob 预留 200。正常完成按原 new-api 用量公式计算实际金额,释放差额。Core 配置/客户价格变化不改变已准入操作;用量任一分量或最终金额超出冻结上界,停止自动扣费并待核对。

有界入口要求显式输出限制,仅开放明确的纯文本请求;原字节透传不改。Gemini 当前要求 thinkingBudget=0,无法证明额外 thoughts 被输出限制约束的路径不开放。详情分别在 Core / Edge 仓的 docs/text-admission-limits.md,Contracts 新增 0.4.3-text-design.1 精确候选,旧版保持。

  • 48 项完整链检查通过:真实独立进程与新数据库,25 次本地合成执行,0 次网关日志查询;其中 12 类执行前拒绝、2 笔超限保留、21 笔唯一结算。
  • 验收环境另通过 7 项客户操作:四协议、两客户价、2 次零扣款拒绝;其中 5 次额外合成执行,单独记录。
  • Core / Edge 全仓 race、vet、build 与 diff 检查通过;Core 8 个固定源文件及 17 份原函数差分通过,Edge 19 个源摘要与 34 个依赖版本通过。
  • Contracts 50 项测试、完整性检查和构建通过,独立消费 Core 输出校验限制、预留换算和扣款不越过预留。

测试证据在 coordination/handoffs/TEXT-BOUNDED-ACCEPTANCE/;正在运行的环境及客户操作记录在 coordination/acceptance/core-edge/。前者记录已停止并清理的自动化测试,后者为供用户验收而保留的本地进程,两者不混称全部已停止。

验收范围和后续

本次可以验收的是上述 Core/Edge 后端链路。完整 Console/Admin 产品、Core 持久任务队列与人工处置、生产商业政策、容量、正式身份入口及客户迁移不在完成声明内;NEXT-05 仍保留整体未完成项。

客户自动扣款的上限保护不等于供应商成本硬上界已被证明。 输入 token 不能由请求字节数精确推导;真实 uumi 有界代表样本已通过八笔逐笔对账,但仍需验证供应模型完整上下文、输出和隐藏推理限制。供应商忽略限制时,本地可以不自动越额扣客户,但供应成本不会因此消失。本地合成上限不应直接复制成生产配置。

已完成代表模型的真实有界计费验收,下一开发切片推进 Core 恢复队列及 Admin 受控处置,供应完整限制继续保留验收门槛;产品侧继续采用已有 OceanWay/shadcn 方向,不在本轮重做原型。

On this page