指南
GTO 策略 · 01/06
求解器应用
11 分钟
高级
如何用 API 查询 GTO 节点 EV?
在实时 solver 局面完成且 tree 可查询后,请求一个节点的 EV 数组;也可以只过滤一手牌。
直接答案:使用来自
/v1/gto/solver 的 solve handle,以及来自 /v1/gto/solver/tree 的 node_id 调用 POST /v1/gto/evs。响应中的 actions 数组定义了 evs 中每手牌 EV 数组的顺序。核心事实
| 端点 | POST /v1/gto/evs |
|---|---|
| 前提 | 已完成的 solve 和可查询的 solver tree;先轮询 /v1/gto/solver/tree。 |
| 必填输入 | solve 与 node_id;hand 可选,用于过滤单手牌。 |
| 响应 | actions 以及按手牌给出的 evs 数组;每个 EV 数组按索引与 actions 对齐。 |
| 配额 | 公开 OpenAPI 描述将该读取标为免费;费用已在原始 /v1/gto/solver 求解时产生。 |
| 访问 | 使用同一套鉴权 API 和已完成 solve 的 handle 所有权规则。 |
适用场景
适用于 solver 结果已可用后的离线训练、教学、手牌复盘、学习或研究工具。当解释 UI 需要比较某个已完成节点可选行动、又不希望重新发起 solve 时,可以使用该 endpoint。
不适用场景
不要在 solver tree 尚不可查询时调用,也不要把 EV 数组当作实时行动推荐、表现保证,或把公开响应契约之外的内容定义为 EV。
最小 API 请求
将脱敏 handle 替换为你自己 solver 请求返回的 handle。使用同一 solver tree 中的节点标识。可选的 hand 字段会将响应限制为该手牌。
curl -s https://pokerai.bet/v1/gto/evs \
-H "Authorization: Bearer $POKERAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{"solve":"eyJ0Ijoic2x2X3h4eXoi...(handle from /v1/gto/solver)","node_id":"root","hand":"2c2d"}'
响应解读
{"node_id": "root", "task_id": "slv_srp_…", "player": 1, "round": "FLOP", "actions": ["CHECK", "BET 4.000000", "BET 97.000000"], "evs": {"2c2d": [-0.826359, -0.792223, -1.643411], "2c2h": […], …}}
公开 docs-code 响应形状中的 actions 为 [CHECK, BET 4.000000, BET 97.000000]。对 evs["2c2d"] 而言,第一个数对应 CHECK,第二个对应 BET 4.000000,第三个对应 BET 97.000000。
在解释 UI 中应同时保留两组数组。API 契约把这些值描述为以 bb 表示的逐手牌、逐行动 EV;它不会选择行动,也不保证结果。
配额与就绪状态
该 endpoint 被文档标为免费,因为费用由原始 /v1/gto/solver 请求承担。若 solve 尚未收敛,200 响应可能为 { spot_status: computing };应继续轮询 solver tree,直到可查询,而不是假定 EV 数据已经就绪。
错误
| HTTP | 含义 | 处理方式 |
|---|---|---|
| 400 | 请求数据无效。 | 按公开 schema 检查 solve、node_id 和可选 hand。 |
| 401 | 鉴权缺失或无效。 | 发送有效 API key,且不要将它写进浏览器代码或日志。 |
| 403 | solve handle 无效或不属于当前用户。 | 使用你自己 solver 请求返回的、已鉴权的 handle。 |
| 410 | solve 已过期(TTL)。 | 通过 /v1/gto/solver 重新提交该局面。 |
仅限训练和复盘
Pokerai API 用于训练、教学、手牌复盘、学习和研究。禁止在真实资金牌桌上提供实时辅助。不要将 EV 对比接入实时牌局自动化,也不要把它变成牌局中的行动提示。
相关资源
- 开发者文档 — 鉴权、solver 生命周期、配额、SDK 和 API 概念
- 在线 API reference — 当前节点 EV operation schema
- OpenAPI 规范 — 机器可读的中文契约
- Python SDK — 官方 Python package
- TypeScript / JavaScript SDK — 官方 npm client
- 官方 MCP server — 用于 agent 工作流的文档化 MCP package
- 扑克手牌复盘 API 指南 — 将 solver 分析放入牌局结束后的工作流
- llms.txt — Pokerai API 的精简 LLM 入口