Я попробовал обыграть букмекера с помощью AI

Двенадцать моделей прогнозировали The International 2026 и выбирали виртуальные ставки. Ни одна не вышла в плюс. После турнира я разобрал, на чём они теряли деньги и чем им помогали коэффициенты.

Перед финальным матчем The International 2026, крупнейшего ежегодного турнира по Dota 2, я собрал 48 прогнозов на эту серию от двенадцати LLM в четырёх режимах. Модели изучали статистику по доте, личные встречи и выборы героев. В режиме фиксированного контекста они получали готовые данные, а в агентском режиме каждая самостоятельно искала информацию в интернете. Все 48 прогнозов отдавали преимущество Team Vision, которую фаворитом считал и букмекер. В итоге она проиграла Team Spirit.

hy3, например, оценила шансы Team Vision в 78%. В объяснении всё выглядело довольно убедительно: команда уже обыгрывала Team Spirit, выше в Elo, лучше выглядит на турнире. Но в конце модель всё-таки оставила такой вариант:

«Лучший шанс Spirit — апсет 3:2».

hy3 · фиксированный контекст, без коэффициентов · перевод

Spirit выиграла 3:2.

То есть сценарий, который в итоге случился, в ответе буквально был. Только Spirit модель оставила 22%, уверенно предпочтя VISION. И это довольно знакомое ощущение от работы с LLM: читаешь объяснение, вроде всё разумно, риски учтены, даже неожиданный исход предусмотрен. Но насколько точно LLM оценивают вероятности в целом?

По одному финалу этого не понять. События с вероятностью 22% иногда должны происходить, иначе с вероятностями что-то не так. Поэтому я посмотрел на весь турнир, отдельно разобрал ставки и проверил, что меняется, если дать моделям инструменты или показать мнение букмекера.

Как я это устроил

Проект назвал Midas, в честь предмета из доты, который превращает крипа в дополнительное золото. Крип — это внутриигровой юнит, за убийство которого герой получает золото и опыт для прокачки. Идея была простая: выдать нескольким моделям данные о командах и проверить, смогут ли они найти преимущество перед букмекерской линией. Все ставки виртуальные.

Взял 14 серий основной стадии TI 2026, с 20 по 23 августа. Для тех, кто не следит за дотой: серия состоит из отдельных игр, они же карты. Обычно играют до двух побед, гранд-финал — до трёх. Кроме победителя серии можно выбрать фору по картам. Например, ставка на команду с форой −1,5 в серии до двух побед проходит только при счёте 2:0. Победа 2:1 для неё уже проигрыш.

Каждая из двенадцати моделей отвечала в четырёх режимах:

  1. Фиксированный контекст без коэффициентов. Модель получает собранные данные и оценивает вероятности.
  2. Фиксированный контекст с коэффициентами. Получает те же данные и букмекерские коэффициенты, оценивает вероятности и выбирает ставки.
  3. Агент без коэффициентов. Самостоятельно собирает данные с помощью инструментов и оценивает вероятности. Искать коэффициенты запрещено.
  4. Агент с коэффициентами. Собирает данные, смотрит букмекерские коэффициенты, оценивает вероятности и выбирает ставки.

В готовом контексте были Elo, последние результаты, личные встречи, драфты, нагрузка команд и турнирная сетка. Агент мог обращаться к OpenDota, Liquipedia, поиску и чтению страниц. Варианты без коэффициентов нужны по довольно очевидной причине: если заранее показать модели, кого считает фаворитом букмекер, потом будет сложно понять, откуда взялась её собственная оценка.

В ответ я просил распределение вероятностей точного счёта: например, 2:0, 2:1, 1:2 и 0:2. Из него уже можно получить вероятность победы команды и проверить форы. В режимах с ценами модель также выбирала ставки и их размер.

666
зачётных прогнозов
14 серий · 4 режима
12
моделей
каждая в четырёх режимах
8 012
вызовов инструментов
в 466 агентских траекториях
$25,51
стоимость по логам
без отдельной стоимости поиска

666 — это отобранные прогнозы до матчей. Вызовы инструментов и $25,51 относятся ко всему сохранённому эксперименту, включая повторы и ошибки. Деньги здесь — сумма записанного usage, без отдельной стоимости поиска и позднего прогона Astra.

И сразу ограничение, которое дальше будет очень заметно: 666 прогнозов — это всё ещё только 14 исходов серий. Если двенадцать моделей несколько раз поставили на один матч, дополнительных матчей от этого не появилось.

Модели, отбор запусков и ограничения сравнения

Участвовали deepseek-v4-flash, deepseek-v4-pro, gemini-3.7-flash, glm-5.3, gpt-5.6-luna, gpt-5.6-sol, gpt-5.6-terra, grok-4.6, hy3, kimi-k3, minimax-3 и qwen3.8-max. Температура — 1.0, reasoning — максимальный из доступных в каждой интеграции.

Из 1 206 запусков 883 относились к прогнозам до начала серии. Отбор успешных канонических запусков оставил 670: для каждого задания выбирался первый успешный прогон, если его явно не признали недействительным. Последние решения аудита исключили ещё два загрязнённых агентских запуска, проверка времени — два опоздавших. Осталось 666, в медиане за 4,8 часа до сохранённого старта.

Два опоздания нашлись при подготовке статьи: флаг post_start не сработал, когда в лайв-трекере отсутствовало время старта. Скрипт теперь отдельно сравнивает время ответа со стартом, а при его отсутствии — с расписанием. Запуски 907 и 910 исключены.

Кто лучше оценивал вероятности

Начну с того, что угадать победителя для ставки недостаточно. При коэффициенте 2,0 нужно выигрывать чаще чем в половине случаев, чтобы выйти в плюс. При 1,5 — чаще чем в двух третях. Поэтому ответ «эта команда скорее выиграет» мало что даёт, пока не понятно, насколько именно скорее.

Это хорошо видно на minimax-3. Если объединить четыре режима на общем для всех моделей наборе из 52 заданий, она выбрала победителя правильно в 35 ответах, чаще любой другой модели. А по качеству вероятностей оказалась девятой.

Качество я считал через Brier score: берём вероятность победы, вычитаем фактический исход — 1 при победе, 0 при поражении, — возводим разницу в квадрат и усредняем. Чем меньше результат, тем лучше. Если команда проиграла, прогноз 70% получит ошибку 0,49, а 51% — примерно 0,26. Победителя обе оценки выбрали неверно, но первая сильнее переоценила его шансы.

Постоянное «50 на 50» даёт Brier 0,25. У ранней сохранённой букмекерской линии получилось 0,1964.

12 лучших сочетаний «модель + режим» из 48 и две букмекерские линии. Brier: меньше — лучше. Δ к рынку = Brier модели − Brier ранней линии на тех же сериях. Например, +0,0018 означает, что Brier модели выше на 0,0018. Поздняя линия доступна для 13 серий из 14.
#Модель и режимBrier ↓Δ к рынкуСерий
Ранняя линияПервый сохранённый снимок0,196414
1deepseek-v4-flashАгент · с ценами0,1983+0,001814
2deepseek-v4-proФикс. контекст · с ценами0,1994+0,003014
3grok-4.6Агент · с ценами0,2031+0,006714
4hy3Фикс. контекст · с ценами0,2050+0,008614
5gpt-5.6-lunaФикс. контекст · с ценами0,2066+0,010214
6qwen3.8-maxФикс. контекст · с ценами0,2083+0,011914
7deepseek-v4-proАгент · с ценами0,2100+0,008212
8glm-5.3Фикс. контекст · без цен0,2104+0,014014
9deepseek-v4-proФикс. контекст · без цен0,2121+0,015714
10glm-5.3Агент · с ценами0,2127+0,013913
11qwen3.8-maxФикс. контекст · без цен0,2133+0,016814
12gpt-5.6-solФикс. контекст · с ценами0,2134+0,017014
Поздняя линияПоследний сохранённый снимок0,215513
Все 48 результатов по моделям и режимам
В каждом режиме использованы все его зачётные ответы. Рынок пересчитан на тех же сериях.
#Модель и режимBrier ↓Δ к рынкуСерий
Ранняя линияПервый сохранённый снимок0,196414
1deepseek-v4-flashАгент · с ценами0,1983+0,001814
2deepseek-v4-proФикс. контекст · с ценами0,1994+0,003014
3grok-4.6Агент · с ценами0,2031+0,006714
4hy3Фикс. контекст · с ценами0,2050+0,008614
5gpt-5.6-lunaФикс. контекст · с ценами0,2066+0,010214
6qwen3.8-maxФикс. контекст · с ценами0,2083+0,011914
7deepseek-v4-proАгент · с ценами0,2100+0,008212
8glm-5.3Фикс. контекст · без цен0,2104+0,014014
9deepseek-v4-proФикс. контекст · без цен0,2121+0,015714
10glm-5.3Агент · с ценами0,2127+0,013913
11qwen3.8-maxФикс. контекст · без цен0,2133+0,016814
12gpt-5.6-solФикс. контекст · с ценами0,2134+0,017014
13gemini-3.7-flashФикс. контекст · без цен0,2143+0,017914
14minimax-3Фикс. контекст · без цен0,2145+0,018114
15gemini-3.7-flashФикс. контекст · с ценами0,2149+0,018514
16gpt-5.6-terraФикс. контекст · с ценами0,2155+0,019114
Поздняя линияПоследний сохранённый снимок0,215513
17qwen3.8-maxАгент · с ценами0,2156+0,019214
18kimi-k3Фикс. контекст · без цен0,2157+0,019314
19gpt-5.6-solАгент · с ценами0,2164+0,020014
20glm-5.3Фикс. контекст · с ценами0,2166+0,020214
21gpt-5.6-lunaАгент · с ценами0,2172+0,020714
22hy3Фикс. контекст · без цен0,2175+0,021114
23kimi-k3Фикс. контекст · с ценами0,2175+0,021114
24gemini-3.7-flashАгент · с ценами0,2185+0,022114
25gpt-5.6-terraФикс. контекст · без цен0,2187+0,022214
26gpt-5.6-terraАгент · с ценами0,2193+0,022914
27minimax-3Фикс. контекст · с ценами0,2204+0,024014
28hy3Агент · с ценами0,2204+0,024014
29gpt-5.6-lunaФикс. контекст · без цен0,2212+0,024814
30grok-4.6Фикс. контекст · с ценами0,2227+0,026314
31deepseek-v4-flashФикс. контекст · без цен0,2244+0,028014
32grok-4.6Фикс. контекст · без цен0,2281+0,031714
33gpt-5.6-solФикс. контекст · без цен0,2288+0,032414
34kimi-k3Агент · с ценами0,2289+0,029913
35deepseek-v4-flashФикс. контекст · с ценами0,2301+0,033714
36minimax-3Агент · с ценами0,2359+0,039414
37gemini-3.7-flashАгент · без цен0,2435+0,047014
38deepseek-v4-proАгент · без цен0,2462+0,049814
39qwen3.8-maxАгент · без цен0,2496+0,053214
40grok-4.6Агент · без цен0,2502+0,053814
41minimax-3Агент · без цен0,2515+0,055114
42glm-5.3Агент · без цен0,2551+0,058714
43deepseek-v4-flashАгент · без цен0,2618+0,065414
44gpt-5.6-terraАгент · без цен0,2622+0,063413
45gpt-5.6-solАгент · без цен0,2623+0,065914
46hy3Агент · без цен0,2631+0,066714
47kimi-k3Агент · без цен0,2682+0,071714
48gpt-5.6-lunaАгент · без цен0,2723+0,065313

В каждой строке — отдельное сочетание модели и режима. Brier посчитан по всем его зачётным прогнозам, с одинаковым весом каждого ответа. Число серий различается из-за исключённых и отсутствующих прогнозов, поэтому рядом указано, сколько серий вошло в расчёт. Для сравнения с рынком используются те же серии, что и у этой комбинации.

Качество прогнозов: меньше — лучше
Ранняя линияРанняя линия: 0,19640,196414Фикс. контекст · без ценФикс. контекст · без цен: 0,21830,2183168Фикс. контекст · с ценамиФикс. контекст · с ценами: 0,21420,2142168Агент · без ценАгент · без цен: 0,25700,2570166Агент · с ценамиАгент · с ценами: 0,21640,2164164Всегда 50%Всегда 50%: 0,25000,250050 на 50

Brier score по 14 сериям. Для режимов усреднены отдельные прогнозы моделей; число справа — количество прогнозов. Пунктир — постоянные 50%.

Из всех 48 сочетаний модели и режима раннюю линию не обошло ни одно. Даже у лучшего варианта Brier 0,1983 против рыночных 0,1964 на тех же сериях. Это мы ещё выбираем лучший результат уже после турнира, зная, какая конфигурация удачно выступила.

Но больше всего меня заинтересовал агент без коэффициентов. У него 0,2570 — хуже постоянных 50%. Получается, модель ходила за дополнительной информацией, что-то читала, тратила токены и в среднем отвечала хуже. Что она там нашла-то?

Что агенты делали в интернете

В режимах без коэффициентов самостоятельный сбор информации ухудшил прогнозы всех двенадцати моделей по log loss. Это ещё одна метрика вероятностей, которая сильнее наказывает уверенные ошибки. Для каждой пары я оставил одинаковые серии.

Самостоятельный поиск ухудшил прогнозы всех 12 моделей
0,6000,6500,700grok-4.6grok-4.6 · Фиксированный контекст: 0,646grok-4.6 · Агент: 0,694+0,048gemini-3.7-flashgemini-3.7-flash · Фиксированный контекст: 0,617gemini-3.7-flash · Агент: 0,679+0,062gpt-5.6-solgpt-5.6-sol · Фиксированный контекст: 0,645gpt-5.6-sol · Агент: 0,718+0,072deepseek-v4-prodeepseek-v4-pro · Фиксированный контекст: 0,611deepseek-v4-pro · Агент: 0,684+0,073minimax-3minimax-3 · Фиксированный контекст: 0,618minimax-3 · Агент: 0,695+0,077qwen3.8-maxqwen3.8-max · Фиксированный контекст: 0,614qwen3.8-max · Агент: 0,694+0,080deepseek-v4-flashdeepseek-v4-flash · Фиксированный контекст: 0,634deepseek-v4-flash · Агент: 0,718+0,084gpt-5.6-lunagpt-5.6-luna · Фиксированный контекст: 0,648gpt-5.6-luna · Агент: 0,740+0,092hy3hy3 · Фиксированный контекст: 0,627hy3 · Агент: 0,725+0,098glm-5.3glm-5.3 · Фиксированный контекст: 0,608glm-5.3 · Агент: 0,706+0,098gpt-5.6-terragpt-5.6-terra · Фиксированный контекст: 0,613gpt-5.6-terra · Агент: 0,718+0,105kimi-k3kimi-k3 · Фиксированный контекст: 0,621kimi-k3 · Агент: 0,734+0,113Фиксированный контекстАгент

Log loss: меньше — лучше. Режимы без коэффициентов, для каждой модели — одни и те же серии. Справа указано увеличение ошибки.

Числа в таблице
Самостоятельный поиск ухудшил прогнозы всех 12 моделей
МодельФиксированный контекстАгент
grok-4.60,6460,694
gemini-3.7-flash0,6170,679
gpt-5.6-sol0,6450,718
deepseek-v4-pro0,6110,684
minimax-30,6180,695
qwen3.8-max0,6140,694
deepseek-v4-flash0,6340,718
gpt-5.6-luna0,6480,740
hy30,6270,725
glm-5.30,6080,706
gpt-5.6-terra0,6130,718
kimi-k30,6210,734

Инструменты при этом заметно меняли ответы: средний сдвиг вероятности между готовым контекстом и агентом был около 8,8 процентного пункта. Медианный агентский запуск длился чуть больше двух минут, самый долгий — почти четырнадцать.

Для поиска использовался Firecrawl. В его выдаче набралось 7 716 ссылок, из них 2 243 на YouTube. Почти 29%. Это именно ссылки в выдаче, по ним нельзя утверждать, что агенты посмотрели видео. Liquipedia в 153 случаях из 1 184 возвращала редирект вида #REDIRECT [[1w Team]]. Вызов инструмента успешно состоялся, а вместо данных о команде приехала инструкция перейти на другую страницу.

Один пресс-релиз об Iron Wing читали тринадцать раз в разных запусках. Всего запросов на чтение страниц было 220, уникальных страниц — 126. Тут напрашивается общий кеш. Хотя бесконечных циклов почти не было: точных повторов внутри одного запуска нашлось всего 39 на все 8 012 вызовов.

Ещё оказалось, что запрет искать коэффициенты не гарантирует, что они не попадут в контекст. kimi-k3, например, получила цену Kalshi прямо в поисковом превью обычной статьи: фаворит торговался по 52 цента. Для проверки загрязнения в режиме агента без коэффициентов использовалась deepseek-v4-flash как llm-as-a-judge: она проверяла траектории на попадание коэффициентов в контекст. Загрязнённые запуски исключались по последнему решению аудита. Аудит тоже мог ошибаться: два его решения я отменил после ручной проверки.

Сами по себе эти находки ещё не объясняют всё ухудшение. Готовый контекст уже был собран под задачу, а агенту предстояло самостоятельно найти полезное среди того, что вернули инструменты. Плюс промпты различались. Но считать количество вызовов мерой глубины исследования после такого хочется заметно меньше.

Стоило показать агентам коэффициенты, и результат улучшался у всех двенадцати моделей. Тут уже стало любопытно, что именно улучшалось: понимание доты или согласие с букмекером?

На 162 парах ответов одной модели по одной серии среднее расстояние до ранней линии сократилось с 10,8 до 6,3 процентного пункта. В 116 парах из 162 вариант с ценами оказался ближе к рынку. Это не доказывает копирование: в запрос попадали цены на момент запуска, а сравниваю я с ранними. Но наблюдаемый эффект вполне конкретный — получив коэффициенты, модели меньше спорили с линией и ошибались меньше.

Я отдельно вытащил ответы, где модель без цен выбирала фаворитом противоположную команду:

Режим без коэффициентовТаких ответовПобедил фаворит моделиСерий
Готовый контекст40137
Агент49118

У агента из 49 таких ответов правильными оказались 11. На этих же ответах Brier модели — 0,3175, рынка — 0,2311. То есть дело не только в пересечении условной границы 50%: сами вероятности тоже хуже. Но это 49 ответов всего по восьми сериям, а не 49 независимых попыток поймать ошибку букмекера.

Выбрать выигравшего андердога иногда получалось. Систематического преимущества в таких разногласиях я здесь не увидел.

Сколько стоили эти прогнозы

Общие $25,51 мало говорят о цене хорошего прогноза: туда попали и повторы, и ошибки, и ответы между картами. Поэтому я отдельно посчитал стоимость зачётных ответов для первых трёх сочетаний из лидерборда. У каждого по четырнадцать серий.

Модель и режимBrier ↓За 14 ответов
deepseek-v4-flash
Агент · с коэффициентами
0,1983$0,088
deepseek-v4-pro
Готовый контекст · с коэффициентами
0,1994$0,174
grok-4.6
Агент · с коэффициентами
0,2031$0,703
Стоимость всех моделей во всех режимах
Стоимость в долларах по логам зачётных ответов. Без повторов, ошибок и отдельной оплаты поиска. Число ответов различается из-за пропусков и исключений.
Модель и режимВсегоЗа ответ
deepseek-v4-flashФикс. контекст · без ценЗачётных ответов: 14$0,033$0,0023
deepseek-v4-flashФикс. контекст · с ценамиЗачётных ответов: 14$0,057$0,0041
deepseek-v4-flashАгент · без ценЗачётных ответов: 14$0,073$0,0052
deepseek-v4-flashАгент · с ценамиЗачётных ответов: 14$0,088$0,0063
deepseek-v4-proФикс. контекст · без ценЗачётных ответов: 14$0,151$0,0108
deepseek-v4-proФикс. контекст · с ценамиЗачётных ответов: 14$0,174$0,0124
deepseek-v4-proАгент · без ценЗачётных ответов: 14$0,294$0,0210
deepseek-v4-proАгент · с ценамиЗачётных ответов: 12$0,323$0,0269
gemini-3.7-flashФикс. контекст · без ценЗачётных ответов: 14$0,074$0,0053
gemini-3.7-flashФикс. контекст · с ценамиЗачётных ответов: 14$0,090$0,0064
gemini-3.7-flashАгент · без ценЗачётных ответов: 14$0,409$0,0292
gemini-3.7-flashАгент · с ценамиЗачётных ответов: 14$0,517$0,0369
glm-5.3Фикс. контекст · без ценЗачётных ответов: 14$0,377$0,0269
glm-5.3Фикс. контекст · с ценамиЗачётных ответов: 14$0,452$0,0323
glm-5.3Агент · без ценЗачётных ответов: 14$0,920$0,0657
glm-5.3Агент · с ценамиЗачётных ответов: 13$1,279$0,0984
gpt-5.6-lunaФикс. контекст · без ценЗачётных ответов: 14$0,072$0,0052
gpt-5.6-lunaФикс. контекст · с ценамиЗачётных ответов: 14$0,078$0,0056
gpt-5.6-lunaАгент · без ценЗачётных ответов: 13$0,152$0,0117
gpt-5.6-lunaАгент · с ценамиЗачётных ответов: 14$0,188$0,0134
gpt-5.6-solФикс. контекст · без ценЗачётных ответов: 14$0,045$0,0032
gpt-5.6-solФикс. контекст · с ценамиЗачётных ответов: 14$0,044$0,0032
gpt-5.6-solАгент · без ценЗачётных ответов: 14$0,263$0,0188
gpt-5.6-solАгент · с ценамиЗачётных ответов: 14$0,266$0,0190
gpt-5.6-terraФикс. контекст · без ценЗачётных ответов: 14$0,068$0,0048
gpt-5.6-terraФикс. контекст · с ценамиЗачётных ответов: 14$0,082$0,0058
gpt-5.6-terraАгент · без ценЗачётных ответов: 13$0,186$0,0143
gpt-5.6-terraАгент · с ценамиЗачётных ответов: 14$0,228$0,0163
grok-4.6Фикс. контекст · без ценЗачётных ответов: 14$0,418$0,0298
grok-4.6Фикс. контекст · с ценамиЗачётных ответов: 14$0,570$0,0407
grok-4.6Агент · без ценЗачётных ответов: 14$0,598$0,0427
grok-4.6Агент · с ценамиЗачётных ответов: 14$0,703$0,0502
hy3Фикс. контекст · без ценЗачётных ответов: 14$0,042$0,0030
hy3Фикс. контекст · с ценамиЗачётных ответов: 14$0,044$0,0031
hy3Агент · без ценЗачётных ответов: 14$0,065$0,0046
hy3Агент · с ценамиЗачётных ответов: 14$0,084$0,0060
kimi-k3Фикс. контекст · без ценЗачётных ответов: 14$0,650$0,0465
kimi-k3Фикс. контекст · с ценамиЗачётных ответов: 14$0,754$0,0539
kimi-k3Агент · без ценЗачётных ответов: 14$2,227$0,1591
kimi-k3Агент · с ценамиЗачётных ответов: 13$1,968$0,1514
minimax-3Фикс. контекст · без ценЗачётных ответов: 14$0,065$0,0046
minimax-3Фикс. контекст · с ценамиЗачётных ответов: 14$0,092$0,0066
minimax-3Агент · без ценЗачётных ответов: 14$0,153$0,0109
minimax-3Агент · с ценамиЗачётных ответов: 14$0,247$0,0176
qwen3.8-maxФикс. контекст · без ценЗачётных ответов: 14$0,408$0,0292
qwen3.8-maxФикс. контекст · с ценамиЗачётных ответов: 14$0,493$0,0352
qwen3.8-maxАгент · без ценЗачётных ответов: 14$1,057$0,0755
qwen3.8-maxАгент · с ценамиЗачётных ответов: 14$1,314$0,0939

Все четырнадцать ответов Flash в агентском режиме с коэффициентами обошлись меньше чем в девять центов. Grok в том же режиме стоила почти в восемь раз дороже и оказалась чуть ниже в рейтинге. Разрыв по качеству небольшой, и выше я уже выбрал лучшие результаты после турнира, так что делать из этого общий рейтинг выгодности моделей я бы не стал. Но в этом эксперименте за первое место среди LLM много платить не пришлось.

С режимами разница тоже заметная. На 166 парах «одна модель, одна серия» агент без коэффициентов обходился в среднем в 2,67 раза дороже готового контекста. При этом самостоятельный поиск ухудшил качество прогнозов всех двенадцати моделей по log loss, как на графике выше. Дополнительные вызовы и токены здесь себя не оправдали.

Это стоимость по сохранённым логам модельных вызовов. Отдельной оплаты поиска в ней нет, как нет повторов и неудачных попыток, которые вошли в общие $25,51.

А двенадцать мнений чем-нибудь помогли?

Вернёмся к Spirit. На пути к титулу она выиграла пять из шести серий. Перед финалом нижней сетки против Yandex рынок давал ей около 69%, а модели на готовом контексте без коэффициентов — в среднем 47%. Только одна из двенадцати считала Spirit фаворитом. Перед гранд-финалом рынок давал 43%, модели — 31%, и на стороне Spirit уже не осталось никого.

Как оценивали шансы будущего чемпиона
0%25%50%75%100%Iron WingVISIONLiquidBoomBoysYandexVISION · финалIron Wing · Модели: 62.0%62%VISION · Модели: 27.6%28%Liquid · Модели: 48.9%49%BoomBoys · Модели: 60.4%60%Yandex · Модели: 46.6%47%VISION · финал · Модели: 31.0%31%МоделиIron Wing · Рынок: 49.3%49%VISION · Рынок: 35.3%35%Liquid · Рынок: 59.3%59%BoomBoys · Рынок: 64.7%65%Yandex · Рынок: 68.5%69%VISION · финал · Рынок: 42.9%43%РынокШанс победы Spirit

Вероятность победы Team Spirit перед каждой серией. Модели — среднее по 12 прогнозам на фиксированном контексте без коэффициентов. Spirit выиграла пять серий из шести; единственное поражение — первая встреча с VISION на этом графике.

Числа в таблице
Как оценивали шансы будущего чемпиона
СоперникМоделиРынок
Iron Wing62.0%49.3%
VISION27.6%35.3%
Liquid48.9%59.3%
BoomBoys60.4%64.7%
Yandex46.6%68.5%
VISION · финал31.0%42.9%

В гранд-финале все двенадцать моделей во всех четырёх режимах считали VISION фаворитом — это те самые 48 прогнозов из начала статьи. Но победила Spirit. В серии Liquid — Yandex все 48 прогнозов тоже отдавали преимущество команде, которая в итоге проиграла. Букмекер в обоих матчах считал фаворитом ту же команду, что и модели. При этом модели в среднем давали ей ещё более высокую вероятность победы, чем букмекер.

В объяснениях повторялись Elo, личные встречи, форма, усталость после нижней сетки. И когда это пишет одна модель, воспринимаешь как одну оценку. Когда примерно то же самое формулируют двенадцать разных моделей, каждая своими словами, уже кажется, что гипотезу неплохо проверили. Хотя исходные данные у них общие, и держаться все эти объяснения могут на одном и том же неудачном предположении.

На готовом контексте без цен средняя попарная корреляция вероятностей — 0,943. Высокое сходство само по себе ожидаемо: матчи одни и те же. Полезнее проверить, сколько даёт усреднение. Brier среднего прогноза двенадцати моделей — 0,2169, средний Brier отдельной модели — 0,2183. Улучшение всего около 0,6%.

Попробовал и смешать этот средний прогноз с рыночным в пропорции 50/50. Получилось 0,2038 против 0,1964 у самой линии. Взял также доли моделей 25% и 75% — обе смеси хуже рынка. Это проверка на уже сыгранных четырнадцати сериях, но даже в таком простом варианте полезная добавка к цене пока не обнаружилась.

Если одна модель завышает шансы команды, а другая занижает, усреднение может приблизить прогноз к реальности. Но если все переоценивают одну и ту же команду, средний прогноз сохраняет эту ошибку. На этом турнире усреднение двенадцати ответов дало лишь небольшое улучшение, поэтому их единодушие я бы не считал поводом больше доверять прогнозу.

Куда делись виртуальные деньги

В режимах с коэффициентами модели выбрали 510 рассчитанных ставок на 45 разных пунктов линии. Суммарно поставили 508 условных единиц, потеряли 143. Доходность по сумме ставок — −28,2%. При одинаковой сумме на каждую ставку было бы −36,3%. Ни одна модель не закончила в плюсе.

Доходность виртуальных ставок по моделям
qwen3.8-maxqwen3.8-max: -18,4%-18,4%37deepseek-v4-prodeepseek-v4-pro: -19,6%-19,6%45minimax-3minimax-3: -21,3%-21,3%39hy3hy3: -25,2%-25,2%50gpt-5.6-lunagpt-5.6-luna: -27,3%-27,3%46grok-4.6grok-4.6: -31,0%-31,0%43kimi-k3kimi-k3: -31,4%-31,4%42gpt-5.6-terragpt-5.6-terra: -32,2%-32,2%44deepseek-v4-flashdeepseek-v4-flash: -32,5%-32,5%44gemini-3.7-flashgemini-3.7-flash: -33,2%-33,2%38gpt-5.6-solgpt-5.6-sol: -33,7%-33,7%41glm-5.3glm-5.3: -34,5%-34,5%410%

Прибыль / сумма записанных ставок. Объединены два режима с коэффициентами; число рядом с ROI — количество ставок. Ставки разных моделей часто относятся к одному исходу.

По такой таблице легко решить, что модели примерно равномерно плохо ставили весь турнир. Поэтому я разложил прибыль по сериям, и там нашлась куда более интересная вещь:

Какие серииСтавокПоставленоПрибыль
Пять побед Spirit177173,1-140,9
Остальные девять серий333334,9-2,1

Пять серий, выигранных Spirit, дали −140,9 единицы при общем результате −143,0. Остальные девять вместе — всего −2,1. Это суммы уже с учётом выигрышных ставок, поэтому называть первую строку «долей всех проигрышей» было бы неверно.

Особенно показательно, что происходило перед двумя последними матчами. Все 39 модельных ставок на серию Yandex — Spirit проиграли, потеряно 38,05 единицы. В гранд-финале поставили ещё 66,2 и потеряли 64,4. При этом Spirit перед матчем с Yandex была фаворитом букмекера. Она выиграла, как и ожидал рынок, но модели выбрали ставки, которые при таком результате проиграли.

Но списать всё на последний матч тоже не получается: если убрать гранд-финал, останется -17,8% доходности. А если убрать ещё и единодушный промах на Liquid — Yandex — -14,7%.

Spirit я, конечно, выделил уже после турнира, зная чемпиона. Из этого нельзя получить правило для следующего TI. Зато становится понятнее, почему число ставок так обманчиво: несколько общих ошибок многократно повторились у разных моделей и в разных режимах. 510 строк в базе выглядят солиднее, чем четырнадцать матчей, на которых всё это держится.

Была и более приземлённая проблема. Модели 112 раз выбрали фору −1,5, и все эти ставки проиграли. Когда убираешь повторы, остаётся всего десять разных исходов на десяти сериях. В четырёх из них выбранная команда даже выиграла — со счётом 2:1. Правильно выбрать победителя оказалось вполне совместимо с проигранной ставкой на него. На этой форе потеряли 86,3 единицы.

Если разделить ставки по коэффициенту 2,0, картина тоже довольно выразительная:

Коэффициент Ставок Поставлено ROI
Меньше 2,0 236 257,3 +2,9%
От 2,0 274 250,7 −60,0%

На каждую группу ушло примерно по половине суммы. Первая заработала 7,5 единицы, вторая потеряла 150,5. В дорогие исходы входят и форы на крупную победу фаворита, поэтому дело не сводится к ставкам на андердогов. А правило «брать только ниже двойки» пока было бы подбором удобной границы после результата.

По собственным оценкам моделей средняя ожидаемая доходность выбранных ставок была около +16,3%. То есть они считали, что нашли довольно щедрые цены. Просто для расчёта ожидания надо знать вероятность события, а именно с ней здесь и были проблемы.

Что было со ставками в режимах без коэффициентов

Там после ответа модели ставки выбирал код: брал её вероятность и историческую цену, считал p × коэффициент − 1 и ставил одинаковую сумму, если результат превышал 0,06. Получилось 226 ставок с ROI −30,8%.

Эта проверка всё ещё зависит от вероятностей модели. Кроме того, два портфеля различаются набором исходов и размерами ставок, поэтому разница ROI не измеряет отдельно пользу LLM при выборе ставки.

Помог ли выбор размера ставки?

Размер ставки модели выбирали только в двух режимах с коэффициентами: на готовом контексте и при самостоятельном поиске. Можно было поставить от 0,5 до 2 условных единиц. Поэтому здесь я сравниваю только ставки из этих двух режимов: оставил те же выбранные исходы с теми же коэффициентами и пересчитал результат, поставив на каждый поровну.

С одинаковыми ставками доходность получилась -36,3%, с выбранными моделями суммами — -28,2%. Причём улучшение было у всех 12 моделей, если сравнивать каждую с её же набором ставок. Ниже результаты всех моделей; здесь объединены оба режима с коэффициентами, как и на графике доходности:

МодельСтавить поровнуСуммы от модели
deepseek-v4-flash-37,5%-32,5%
deepseek-v4-pro-30,2%-19,6%
gemini-3.7-flash-39,6%-33,2%
glm-5.3-38,9%-34,5%
gpt-5.6-luna-35,1%-27,3%
gpt-5.6-sol-41,7%-33,7%
gpt-5.6-terra-44,6%-32,2%
grok-4.6-36,9%-31,0%
hy3-36,2%-25,2%
kimi-k3-42,2%-31,4%
minimax-3-25,2%-21,3%
qwen3.8-max-26,0%-18,4%

То есть распределение денег между выбранными ставками уменьшило потери. До прибыли этого не хватило, но одинаковая сумма на каждый исход дала бы ещё более грустный результат.

Считать это доказанным умением управлять риском я бы пока не стал. На исходы с коэффициентами от 2 модели в среднем выделяли меньше денег, а именно там были основные потери. Плюс они часто выбирали одни и те же исходы, так что могли все выиграть от уменьшения сумм на одних и тех же неудачных ставках. На следующем турнире мне было бы интересно повторить это сравнение.

В объяснениях всё выглядело лучше

После истории с финалом я поискал upset в остальных ответах. Нашлось 71 объяснение с упоминанием апсета. В 63 из них фаворитом всё равно осталась команда, которую предпочитал рынок. То есть неожиданную победу в тексте модели вполне допускали, но свои основные оценки из-за этого не меняли.

С momentum, примерно «команда набрала ход», вышло забавнее. Слово встречалось в 84 объяснениях; победитель там был выбран правильно в 52,4% случаев. Без него — в 64,8%. Можно было бы запретить моделям писать про моментум и радоваться улучшенному промпту, но я сначала проверил, какие матчи они так описывали.

Представим, что одна модель часто пишет momentum и в целом прогнозирует хуже, а другая редко использует это слово и чаще оказывается права. Если смешать их ответы, покажется, что momentum связан с ошибками. Хотя мы могли просто заметить разницу между двумя моделями. То же самое может происходить, если слово чаще встречается в прогнозах на сложные матчи или в режиме, который в целом работает хуже.

Поэтому я проверил, остаётся ли связь слова с ошибкой после поправки на то, какая модель отвечала, какой матч прогнозировала и в каком режиме работала. Для momentum корреляция упала с +0,103 до +0,031 — стала близкой к нулю. У experience знак поменялся с +0,084 на −0,056, а связь упоминания Elo с меньшей ошибкой почти исчезла. Получается, первоначальные числа во многом отражали различия между моделями, матчами и режимами. Само наличие слова оказалось гораздо менее полезной подсказкой о качестве прогноза.

Поэтому словарь плохих прогнозов из этого не получился. А вот привычку доверять процентам за подходящие аналитические слова, как по мне, стоит пересмотреть. Упомянуть риск апсета довольно легко; правильно оценить его вероятность — задача посложнее.

Слова, корреляции и как они посчитаны
Связь слова с ошибкой Brier, измеренная корреляцией: от −1 до +1. Плюс — слово чаще встречается рядом с большей ошибкой, минус — с меньшей. Близко к нулю — слабая связь.
СловоОтветовДо поправкиПосле поправки
Elo312−0,054−0,005
draft205+0,026+0,088
momentum84+0,103+0,031
experience42+0,084−0,056
upset71−0,058+0,089

«После поправки» — связь, оставшаяся после удаления средних различий между матчами, моделями и режимами. Например, поправка учитывает, что какая-то модель и чаще использует слово, и в целом сильнее ошибается. Исследовано 19 слов и групп слов; здесь пять примеров с частотой не меньше 40 ответов.

Взято видимое поле reasoning из 666 зачётных ответов, без внутренних reasoning-токенов и поисковых траекторий. Проверены 19 слов и групп слов; например, draft включает drafts и drafting. Поиск не зависит от регистра, границы слов учитываются: form внутри performance не считается.

Для расчёта каждый ответ получает два числа: 1, если слово встретилось, и 0, если нет; второе число — ошибка Brier. Столбец «До поправки» показывает связь между ними. Для столбца «После поправки» скрипт сначала убирает из обоих показателей средние различия, связанные с матчем, моделью и режимом, а затем считает связь между оставшимися отклонениями. Так мы проверяем, говорит ли слово что-то об ошибке сверх того, что уже можно объяснить этими тремя факторами. Расчёт независимо проверяется другим способом в скрипте для публичных данных.

А если взять Astra?

Уже после турнира я прогнал gpt-6-astra на тех же четырнадцати сериях: фиксированный контекст, варианты с коэффициентами и без, reasoning=max, температура 1.0. Всего 28 ответов.

Взял сохранённые контексты исходных прогонов gpt-5.6-sol и восстановил коэффициенты на те же моменты по исходному правилу выбора цены. Хеши и снимки проверяет скрипт. Sol поэтому здесь удобна для прямого сравнения:

РежимBrier Astra ↓Brier Sol ↓Ранняя линия ↓
Без коэффициентов0,22580,22880,1964
С коэффициентами0,21800,21340,1964

Без коэффициентов Astra немного обошла Sol, с коэффициентами — уступила. Рынок точнее обоих вариантов. В гранд-финале Astra дважды дала VISION 69%, оставив Spirit 31%. Общую историю с недооценкой будущего чемпиона новая модель тоже повторила.

Доходность виртуальных ставок Astra: -34,1% без коэффициентов в запросе и -33,5% с коэффициентами. В первом случае ставки выбирал код, во втором — модель.

Но Astra отвечала уже после турнира, и его результаты могли попасть в её обучающие данные. Поэтому даже с тем же сохранённым контекстом нельзя гарантировать, что она оценивала шансы, не зная исходов матчей. Сравнение с моделями, которые отвечали до матчей, может оказаться не вполне честным. Этот прогон я оставляю отдельной ретроспективной проверкой и в основной лидерборд не добавляю.

Насколько устойчиво первое место?

В основном лидерборде победила deepseek-v4-flash в режиме агента с коэффициентами: Brier 0,1983. Следом идёт deepseek-v4-pro с фиксированным контекстом и коэффициентами: 0,1994. Разница — всего 0,0011. Мне хотелось понять, насколько этот порядок зависит от конкретных матчей.

Для этого я по очереди убрал из расчёта одну серию и заново составил рейтинг всех 48 сочетаний модели и режима. Сначала посчитал его без первого матча, затем вернул первый и убрал второй — и так для всех четырнадцати. Сохранённые прогнозы и результаты не менялись. Каждый раз исключались все ответы об одном матче, а Brier считался по оставшимся зачётным ответам каждой комбинации, как в таблице выше.

Кто занимал первое место, когда из расчёта убирали одну серию. Всего 14 проверок всех 48 сочетаний; ниже те, кто хотя бы раз оказался первым.
Модель и режимПервых мест
deepseek-v4-proФикс. контекст · с ценами7 из 14
deepseek-v4-flashАгент · с ценами4 из 14
grok-4.6Агент · с ценами3 из 14

Flash в агентском режиме с коэффициентами сохранила первое место лишь в 4 проверках из 14. В остальных вперёд выходили Pro с фиксированным контекстом или Grok в агентском режиме, оба с коэффициентами. Для смены лидера было достаточно исключить один матч. При этом наборы ответов у комбинаций немного различаются: пропущенные прогнозы эта проверка не восстанавливает.

Эти числа показывают, насколько рейтинг зависит от состава уже сыгранных матчей. Семь первых мест у Pro не означают, что у неё шанс 50% стать лучшей на следующем турнире. Чтобы проверить это, нужны новые матчи и прогнозы, сделанные до их начала.

В следующем эксперименте я бы снова взял много моделей и проверил каждую во всех режимах. Модели совершенствуются, да и сами режимы я бы уже реализовал по-другому с учётом этого опыта. Поэтому нынешний рейтинг для меня — результат конкретного эксперимента, а не список участников следующего. Flash здесь оказалась лучшей среди моделей, а ранняя букмекерская линия — точнее неё. Что получится с новыми моделями и переработанными режимами, ещё предстоит проверить.

С названием Midas я, кажется, угадал. Мифический Мидас чуть не умер от голода, потому что превращал в золото даже еду. Если бы я решил кормиться с прогнозов нейронок, золотое прикосновение мне бы для этого не понадобилось.