跳到主内容
@wquguru
精选88r/MachineLearning(Reddit)模型发布/更新

17个AI打7700手扑克:决策模型与廉价LLM表现媲美前沿模型

17 AIs, 7,700 hands of poker: frontier vs cheap vs local vs Jev [P]

原文
发到 X
推荐理由

用严谨的扑克博弈验证了廉价LLM和决策模型的实战能力,结论对选型极具参考价值,建议关注其成本控制与性能权衡。

I built this benchmark to answer one practical question: if you need an AI to make a sequence of decisions under uncertainty, should you use one of the new “decision” models, a cheap chat LLM, an expensive frontier model, a model running on your own GPU, or a plain script? Poker is a good place to ask. Every decision has a price in chips, and luck can be measured and partly removed.

我构建了这个基准测试,旨在回答一个实际问题:如果你需要 AI 在不确定性下做出一系列决策,你应该使用新的“决策”模型之一、廉价的聊天 LLM、昂贵的前沿模型、在你自己的 GPU 上运行的模型,还是一个普通的脚本?扑克是一个很好的试验场。每一次决策都有筹码代价,而运气可以被衡量并部分剔除。

The short version

简要版本

  • Cheap reasoning LLMs played as well as the frontier. DeepSeek V4.1 Flash, Muse Spark Contributor and GPT-6 Luna finished level with or above GPT-6.1 Sol and Claude Opus 5.5. Head to head, Luna and Muse drew with both. Luna costs $0.71 per thousand hands; Opus costs $22.
  • A 30-line Python script beat the decision models. equity_tag estimates its chance to win with a quick simulation and bets when it is ahead. It beat Jev 1.13, the best decision model, by 2.7 big blinds per hand (95% interval 1.0 to 4.6) over 100 duplicate deals. It also beat Solar by 5.3, and led pplx by 1.3, right at the edge of significance.
  • The script held Opus to a draw. Over 70 duplicate deals, Opus was ahead by 0.5 big blinds per hand, well inside the noise. GPT-6.1 Sol did beat it, by 2.4 (0.2 to 4.7).
  • Decision models are cheap, fast and deterministic, and they play strange poker. Jev almost never raises before the flop, then bets six times the pot after it. pplx folds hands that are ahead on the river. Solar goes all-in in more than half its hands.
  • Bielik, the Polish open-weights model I ran locally, finished last, below the random bot. It never once folded to a bet.
  • 廉价的推理型 LLM 表现与前沿模型相当。DeepSeek V4.1 Flash、Muse Spark Contributor 和 GPT-6 Luna 的完成度持平或高于 GPT-6.1 Sol 和 Claude Opus 5.5。正面交锋中,Luna 和 Muse 均与对手战平。Luna 每千手成本为 0.71 美元;Opus 成本为 22 美元。
  • 一个 30 行的 Python 脚本击败了决策模型。equity_tag 通过快速模拟估算其获胜概率,并在占据优势时下注。在 100 次重复牌局中,它以每手 2.7 个大盲胜(95% 置信区间 1.0 至 4.6)击败了最佳决策模型 Jev 1.13。它还以 5.3 个大盲击败 Solar,并以 1.3 个大盲领先 pplx,刚好处于显著性边缘。
  • 该脚本将 Opus 逼入平局。在超过 70 次重复牌局中,Opus 平均每手仅领先 0.5 个大盲,完全处于噪声范围内。GPT-6.1 Sol 确实击败了他,幅度为 2.4(0.2 至 4.7)。
  • 决策模型廉价、快速且确定性高,但它们打出的扑克风格怪异。Jev 几乎不在翻牌前加注,而是在翻牌后下注六倍底池。pplx 会在河牌圈弃掉领先的牌。Solar 在其超过一半的牌局中全押。
  • Bielik 是我本地运行的波兰开源权重模型,它排名垫底,甚至低于随机机器人。它从未因下注而弃过牌。

The best hands

最好的牌局

The table above replays real hands from the benchmark. In the first one, a model whose whole job is to make decisions looks at two aces, the best starting hand in the game, faces a small raise from a bot that picks its actions at random, says it has a 48% chance to win, and folds. The bar under the table shows what it could not see: with both hands known, its aces were an 84% favourite.

上表重放了基准测试中的真实牌局。在第一局中,一个专门负责做决策的模型看着两张 A(游戏中最好的起始牌),面对一个随机选择动作的机器人的小加注,声称自己有 48% 的胜率,然后弃牌。表格下方的条形图显示了它无法看到的信息:当两手牌都已知时,它的 A 是 84% 的热门牌。

That is not a cherry-picked glitch. Over 1,400 hands, Solar Decide folded a premium hand (AA, KK, QQ or AK) in 4 of the 13 spots where it held one. The random bot in the same league did it 3 times in 18.

这不是挑出来的故障。在 1,400 多手牌中,Solar Decide 在持有优质牌(AA、KK、QQ 或 AK)的 13 个位置中有 4 次弃掉了这些牌。同一联赛中的随机机器人则在 18 次中发生了 3 次。

Luck, and how to take it out

运气及其剔除方法

Poker has enormous variance. A good player can lose for a thousand hands because the other player got better cards. Most AI poker results you see online are a few hundred hands of raw chip counts, and that is mostly a measurement of luck.

扑克具有巨大的方差。一名优秀的玩家可能因为对手拿到更好的牌而在一千手牌中输掉。你在网上看到的大多数 AI 扑克结果只是几百手牌的原始筹码计数,而这主要是在测量运气。

Each match here is heads-up no-limit Texas hold’em: two players, blinds of 50 and 100 chips, 100 big blinds each at the start of every hand. Stacks reset after each hand, so nobody busts and every hand counts the same. Three things keep luck out of the ranking:

这里的每场比赛都是单挑无限注德州扑克:两名玩家,底注为50和100筹码,每手牌开始时每人拥有100个大盲注。每手牌结束后筹码重置,因此没有人会破产,且每手牌的权重相同。有三点因素排除了运气对排名的影响:

  • Duplicate deals. Every deal is played twice with the seats swapped. If A gets aces and B gets kings in the first hand, B gets the aces in the second. What remains is the difference in how they played the same cards.
  • Shared deals. Every pairing in a league uses the same list of deals, so everyone faces identical cards.
  • All-in adjustment. When both players are all-in before the river, the hand is scored by each player’s equity at that moment, not by the cards that happened to come. This alone cut the spread of results by a factor of 2.7.
  • 重复发牌。每一副牌局都进行两次,且双方座位互换。如果A在第一手牌拿到Aces而B拿到Kings,那么在第二手牌中B将拿到Aces。剩下的差异仅在于他们如何打相同的牌。
  • 共享发牌。联盟中的每一组配对都使用相同的发牌列表,因此每个人面对的牌型完全一致。
  • 全下调整。当两名玩家在河牌发出前均已全下时,该手牌的得分依据是当时每位玩家的权益(equity),而非实际发出的牌。仅此一项就将结果分布的幅度缩小了2.7倍。

Below is a real match, counted three ways. Start with the first step, the way most benchmarks count, and watch the confidence band. Then switch to duplicate deals and the all-in adjustment. The match and the cards do not change; only the noise does. The slider replays the match deal by deal: early on, the band is wide enough to crown either player.

下面展示了一场真实比赛,并用三种方式进行了统计。从第一步开始,即大多数基准测试采用的方式,观察置信区间。然后切换到重复发牌和全下调整模式。比赛和牌型本身没有变化;变化的只是噪声。滑块可以逐手重播比赛:在早期阶段,置信区间足够宽,足以让任何一名玩家胜出。

Even with all three tricks, one duplicate deal between two players swings by about 9 big blinds, so pinning a single pairing to within one big blind per hand takes about 320 deals. That is why the cheap models play many opponents and the expensive ones play the opponents that matter.

即使应用了所有这三种技巧,两名玩家之间的一副重复发牌仍会导致约9个大盲注的波动,因此要将单次配对的误差控制在每手牌1个大盲注以内,大约需要320副发牌。这就是为什么廉价模型需要面对众多对手,而昂贵模型只关注关键对手的原因。

All the AI players see exactly the same text: their cards, the board, the pot, the stacks, the betting so far, a small tracker panel with the opponent’s statistics, and a menu of legal actions (fold, check, call, five bet sizes from a third of the pot to one and a half pots, all-in). They answer with one option and an estimate of their chance to win. Chat models get the menu as a JSON schema; decision models get it through OpenRouter’s Decisions API, which returns a probability for each option.

所有AI玩家看到的文本完全相同:他们的手牌、公共牌、底池、筹码量、目前的下注情况、一个显示对手统计数据的小型追踪面板,以及合法操作菜单(弃牌、过牌、跟注、五种下注大小,从底池的三分之一到一点五倍,以及全下)。它们以选择一个选项并估算其获胜概率作为回应。聊天模型通过JSON schema获取菜单;决策模型则通过OpenRouter的Decisions API获取,该API返回每个选项的概率。

The rating is the average result per hand in big blinds, fitted over every match at once, so two players who never met still get comparable numbers through common opponents. Intervals come from a bootstrap over deals.

评级是每手牌的平均结果(以大盲注为单位),通过对所有比赛同时进行拟合得出,因此即使两名玩家从未交手,也能通过共同对手获得可比较的数值。区间来自对发牌的自助法(bootstrap)计算。

The decision models

决策模型

Decision models are a new kind of endpoint: instead of free text, you send a state and a list of options and get back a choice with probabilities. They are very cheap (5 to 10 cents per thousand decisions) and fast (Jev answers in 0.3 seconds). I tested four: Jev 1.13, pplx-decider 27B, Solar Decide and Mercury Decide.

决策模型是一种新型端点:与自由文本不同,你发送状态和选项列表,然后返回带有概率的选择。它们的成本非常低(每千次决策5到10美分)且速度很快(Jev在0.3秒内完成回答)。我测试了四种模型:Jev 1.13、pplx-decider 27B、Solar Decide 和 Mercury Decide。

Because they return a probability for every option, you can look inside a decision. The aces fold from the replays above was not a close call that went wrong: Solar spread its belief across the whole menu, and fold won with a quarter of it.

因为它们为每个选项返回一个概率,你可以深入查看决策过程。上述回放中 Aces 弃牌并非一次险些出错的情况:Solar 将其信念分布在整个菜单上,并以四分之一的信念值赢得了弃牌。

Jev was the best of them and plays the strangest poker in the league. It raises before the flop in 3% of hands, calls almost everything, and then, after the flop, its median bet is six times the pot.

Jev 是其中最好的,也是联盟中打法最奇特的扑克选手。它在 3% 的手牌中在翻牌前加注,几乎跟注一切,然后在翻牌后,其下注的中位数是底池的六倍。

A six-pot bet wins against players who fold too much. Against a script that simply calls when its equity justifies it, the same bets lose whole stacks. The second replay above is one of them.

六倍底池的下注能击败那些弃牌过多的玩家。面对一种仅在权益合理时才跟注的脚本,同样的下注会输掉整个筹码堆。上述第二个回放就是其中之一。

pplx has the opposite problem. In 7 of the 35 river spots where it had at least 90% equity, it folded. It also underestimates its own hand: asked for its chance to win, it reports on average 19 points less than a simulation gives. Jev underestimates by 17 points, Solar by 17, Mercury by 15. The chat LLMs are off by 4 to 9 points; the scripts by under 1.

pplx 面临相反的问题。在它拥有至少 90% 权益的 35 个河牌局中的 7 个里,它选择了弃牌。它也低估了自己的手牌:当被问及获胜几率时,它的报告平均比模拟结果低 19 点。Jev 低估了 17 点,Solar 低估了 17 点,Mercury 低估了 15 点。聊天 LLM 偏差在 4 到 9 点之间;脚本偏差不到 1 点。

Solar is not a poker player in any useful sense. It goes all-in in 56% of its hands and folds premium hands a third of the time.

Solar 在任何有意义的意义上都不是一个扑克玩家。它在 56% 的手牌中全押,并有三分之一的时间弃掉强牌。

The cheap LLMs

廉价的 LLM

The five cheap reasoning LLMs play something that looks like textbook poker: they enter many pots, raise more often than they call, and size their bets between half a pot and a full pot. They are also the best at judging their own hands among the cheap players: their win-probability estimates correlate 0.72 to 0.83 with the real equity, against about 0.6 for Jev and pplx.

五种廉价的推理 LLM 打出了看似教科书式的扑克:它们进入许多底池,加注频率高于跟注,并将下注规模控制在半底池到满底池之间。在廉价选手中,它们也是最擅长评估自己手牌的:它们的胜率估计与实际权益的相关性在 0.72 到 0.83 之间,而 Jev 和 pplx 约为 0.6。

The clearest way to see the difference is to put a bet in front of each player and look at what it does with weak and strong hands. A sound player folds the weak ones and raises the strong ones. The calling station never folds, by design. Bielik never folds either, and nobody designed it that way.

观察差异的最清晰方法是在每位玩家面前放一个下注,然后看它对弱牌和强牌的处理方式。稳健的玩家会弃掉弱牌并加注强牌。呼叫站(calling station)从设计上来讲从不弃牌。Bielik 也从不弃牌,但这并非人为设计的结果。

They are not consistent, though. Asked about the same spot twice, GLM picks the same action only 55% of the time and MiMo 65%; the best, DeepSeek, manages 82%. Decision models are deterministic: Jev and pplx always give the same answer. Renaming the suits, which changes nothing about the hand, still flips about one answer in ten for both. The frontier models are the steadiest language models here: Opus gave the same answer to a repeated question 40 times out of 40 and kept it after the suits were renamed 38 times; Sol managed 39 and 40.

然而它们并不一致。对同一局面询问两次,GLM 只有 55% 的时间选择相同的行动,MiMo 为 65%;表现最好的 DeepSeek 达到了 82%。决策模型是确定性的:Jev 和 pplx 总是给出相同的答案。重命名花色(这对手牌没有任何影响),两者仍有约十分之一的答案会发生翻转。前沿模型是这里最稳定的语言模型:Opus 在重复提问的 40 次中给出了 40 次相同的答案,并在花色重命名后保持了 38 次;Sol 则达到了 39 次和 40 次。

The frontier round

前沿轮次

Frontier models are expensive enough that I could not afford a full league. Instead, GPT-6.1 Sol and Claude Opus 5.5 (both with their default reasoning) each played the five opponents whose ratings were already pinned down: the script, Jev, pplx, Luna and Muse Spark Contributor. They also played each other. Then I gave both a second, longer match against the script.

前沿模型的成本高昂,我无力承担完整的联赛。因此,GPT-6.1 Sol 和 Claude Opus 5.5(均使用其默认推理模式)各自与评分已确定的五位对手交手:脚本程序、Jev、pplx、Luna 以及 Muse Spark Contributor。它们之间也进行了对弈。随后,我让两者分别与脚本程序进行了一场更长的加赛。

更进一步:量化金融体系

看懂新闻只是起点——沿量化金融路径,把它变成能交付的工程能力

进入量化体系 →

相似阅读

关联信息,但可能不是同一事件