← 返回主题列表
✨步子哥
@steper · 2026年05月29日 21:06 · 0浏览

不训练、不求解器,LLM 怎么打出了专家级德州扑克?

不训练、不求解器,LLM 怎么打出了专家级德州扑克?

你坐在一张无限注 heads-up 桌前,对面是 GTOWizard——一个接近纳什均衡的扑克 AI。你手里拿着 4♥7♠,翻牌面是 5♥4♣3♥4♠3♠。你拿着三条四,这是绝对的强牌。

但 Claude Opus 4.6 看着同样的牌面,说出了这样的话:

> "我拿着 QKo 在 5d4c3h4s 的牌面上——完全没有成牌。"

它连自己的手牌都读错了。这就是 2026 年之前,LLM 打扑克的真实水平:能写论文解释什么是最小防守频率,能在聊天里头头是道地分析极化范围,但坐上牌桌,连自己手里有几张四都搞不清楚。

然后 PokerSkill 出现了。同一个 Claude Opus 4.6,损失率从 -204 降到 -80 mbb/hand,降幅 61%。GPT-5.5 更是从 -132 降到 -57,直接超过了 2018 年 ACPC 冠军 bot Slumbot。

不需要训练,不需要求解器,不需要游戏树遍历。只需要一套精心设计的"脚手架"。

决策绑定问题:知道 ≠ 做到

PokerSkill 的作者来自清华和港中深,他们首先给这个现象起了个名字:决策绑定问题(Decision-Binding Problem)

想象你是一个医学教授,能背诵整本《内科学》,但当急诊室推来一个同时发烧、皮疹、关节痛的病人,你需要在 30 秒内判断是登革热还是系统性红斑狼疮——这时候"知道"和"做到"之间有一道鸿沟。你需要的不只是知识,还需要一个机制帮你在正确的时刻激活正确的知识。

LLM 打扑克面临同样的困境。它知道底池赔率,知道阻挡牌,知道极化下注范围,但当一手牌同时涉及手牌强度、牌面纹理、下注历史、位置、筹码深度、合法加注尺度六个维度时,模型需要在几十个可能适用的原则中选出此刻该用的那一个。它经常选错——甚至像前面那个例子,连牌面都没读对。

三级流水线:像职业选手一样思考

PokerSkill 的核心洞察来自一个简单的观察:职业扑克选手不是每手牌都从头推导博弈论的。

他们的思维过程是: 1. 读局面——牌面纹理、位置、对手行动线 2. 调记忆——回忆这个局面该用什么策略 3. 做选择——在几个合理选项中挑一个

PokerSkill 把这个认知流程外化成了三个阶段:

第一级:上下文引擎(Context Engine)

一套确定性规则分析当前状态:牌面分类(干燥/湿润/成花/成顺)、手牌分类(23 个等级,从坚果到垃圾)、行动线识别(约 60 种场景)、位置、筹码底池比、累计下注压力。所有这些分析都是确定性的——不经过 LLM,不会幻觉。

第二级:技能检索(Skill Retrieval)

上下文标签从五层技能库中选取相关片段:

  • P1(始终激活):游戏规则、合法动作、输出格式
  • P2(翻前范围表):12 个翻前场景的精确频率表
  • P3(通用原则):价值/诈唬分离、位置策略、底池控制
  • P4(情境策略):按牌面纹理 × 手牌等级 × 行动线索引
  • P5(河牌阻挡牌):阻挡牌感知的诈唬和抓诈指导
关键在于选择性检索:不是把整本扑克教材塞进 prompt,而是只喂当前局面需要的那几页。这避免了两个失败模式——模糊的一般性建议,和太多无关信息让模型在错误的原则间仲裁。

第三级:有界决策(Bounded Decision)

这是最精妙的部分。LLM 不是在无限的动作空间里自由发挥,而是在一组经过预算系统筛选的合理动作中做选择。

攻防预算:手牌的战略容量

PokerSkill 引入了一个直觉上极其自然的概念:每手牌有有限的战略容量

一对顶对可以价值下注两条街,防守三条街。一对中对只能防守一到两条街,之后就该弃牌了。职业选手对"这手牌能承受多少压力"有清晰的直觉,这是多年打牌和求解器研究积累的经验性知识。

PokerSkill 把这种直觉编码成了攻防预算系统(ATT/DEF Budget)

  • 每手牌根据等级和上下文获得一个攻击预算 B_att 和防守预算 B_def
  • 每次下注消耗预算,消耗量与下注大小成正比
  • 预算耗尽 = 这手牌在该方向上不再有合理动作
这个系统编码了三个 GTO 洞察,但不需要任何均衡计算: 1. 几何下注将压力分配到多条街 2. 最小防守频率决定继续与否 3. 低 SPR 简化为全押或弃牌

预算系统对 LLM 有双重作用:第一,它把复杂的多因素评估压缩成一个标量;第二,它强制多街一致性——翻牌下注消耗了预算,转牌自然就没那么激进了。没有这个机制,LLM 倾向于做出局部合理但全局不连贯的决策。

数据说话

对 GTOWizard(接近纳什均衡的 GTO 基准)的 AIVAT 结果:

Agent方法损失率 (mbb/hand)
GPT-5.5 XHighPokerSkill-57 ± 21
Claude Opus 4.6PokerSkill-80 ± 29
Claude Opus 4.7PokerSkill-87 ± 64
纯规则引擎(无 LLM)PokerSkill 仅规则-132 ± 19
GPT-5.5 XHigh默认 prompt-132 ± 25
Slumbot (ACPC 2018)求解器-194 ± 41
Claude Opus 4.6默认 prompt-204 ± 44
几个关键发现:

1 + 1 > 2。 纯规则引擎 -132,纯 LLM -132 到 -204,两者结合 -57 到 -87。规则引擎和 LLM 单独都不够强,但组合起来远超各自上限。

模型越强越不等于打牌越好。 在默认 prompt 下,GPT-5.4(-178)反而比 GPT-5.3(-160)更差。更强的推理能力意味着考虑更多因素,但没有机制来排优先级,反而更混乱。PokerSkill 的脚手架消除了这个"缩放悖论"。

验证失败率 < 0.1%。 LLM 在有界动作空间中选择时,几乎不会产生非法动作。对比默认 prompt 下频繁出现的幻觉和非法操作,这是质变。

仍然存在的裂缝

PokerSkill 不是银弹。论文诚实地指出了三个持续存在的错误模式:

尺度误判。 预算正确地允许下注,但 LLM 选了次优尺度——中等强度手牌用了满池下注(半池更优),极化范围用了小注(大注更优)。二元的下注/过牌决策比连续的尺度选择更容易激活。

类别边界模糊。 手牌分类是离散的,但手牌强度是连续的。一个弱踢脚的顶对可能被分到"顶对"类,但它的战略轮廓更接近"二对"。离散分类无法完全捕捉连续现实。

多街不连贯。 每条街的预算局部合理,但三条街的序列缺乏全局规划。翻牌下注消耗 0.6 预算,转牌消耗 0.8,河牌面对加注时预算已不足。预算系统缺乏前瞻搜索——它无法预见转牌下注会创造一个不舒服的河牌局面。

为什么这不止是扑克

PokerSkill 的真正意义不在于扑克本身,而在于它揭示了一个通用模式:

决策绑定问题无处不在。 医学诊断需要把症状绑定到正确的鉴别诊断;法律推理需要把案件事实绑定到相关法条;商业谈判需要把当前报价绑定到合适的让步策略。每个领域的挑战都不是"缺少知识",而是"在竞争性启发式之间做出情境化选择"。

PokerSkill 展示了一种架构模式: 1. 确定性上下文引擎——分类当前局面 2. 按情境索引的精选知识库——只检索相关知识 3. 有界决策接口——约束动作空间而非开放生成

这个模式可以迁移到任何"专家知识可用但 LLM 难以可靠激活"的序列决策领域。不需要微调,不需要强化学习,只需要把专家的认知管道外化成确定性脚手架。

工程启示

  • 代码开源:https://github.com/lbn187/PokerSkill
  • 整个技能库(包括所有 prompt 片段、预算表、上下文标签、动作约束)由人类扑克专家设计,覆盖约 60 种行动线场景、23 个手牌等级、46 个下注压力阈值
  • 同一套技能库在三个不同 LLM 上通用,无需修改
  • 系统除 LLM 调用外完全确定性,可复现
PokerSkill 的故事告诉我们:有时候 AI 的瓶颈不是能力不够,而是接口不对。当你给一个聪明的模型一个糟糕的决策界面,它表现得像个傻瓜;当你给它一个精心设计的界面,同一个模型就能打出专家水平。

规则不构成强策略,LLM 也不能独自打好牌。但规则 + LLM = 不训练不求解器的专家级扑克。

这大概就是人机协作最优雅的形式:人类提供结构,模型提供判断。

---

论文:PokerSkill: LLMs Can Play Expert-Level Poker without Training or Solvers 作者:Boning Li (清华), Baoxiang Wang (港中深), Longbo Huang (清华) arXiv:https://arxiv.org/abs/2605.30094 代码:https://github.com/lbn187/PokerSkill

暂无表态
💬 讨论回复 (0)
推荐

🌟 智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

🎁 领取 2000万 Tokens