Промт для ИИ на тотал в баскетболе: структура, параметры и рабочие шаблоны

Гайд по промт-инженерии

Промт для ИИ на тотал в баскетболе: от хаоса к структурированному прогнозу

Разбираем, почему 90% запросов дают мусор, какие 5 блоков данных реально влияют на тотал, и даём три готовых шаблона — для прематча, лайва и узких лиг. Без магии, только логика и проверяемые параметры.

Почему стандартные промты проваливаются

Большинство пользователей пишут: «Сделай прогноз на тотал矣 матч X против Y». ИИ отвечает обобщением из обучающей выборки: средние значения, репутация команд, последние 5 матчей. Это не анализ — это шум.

Проблема в трёх вещах:

  • Отсутствие контекста темпа. Тотал — это функция попаданий в единицу времени. Без скорости игры прогноз равен гаданию.
  • Игнорирование распределения. Среднее 210.5 не значит, что игра закончится 105:105. Важен спред, скошенность, хвосты распределения.
  • Нет инструкции по расчёту. ИИ не знает, какой метод вы хотите: пуассон, Монте-Карло, эло с поправкой на темп. Он выберет самый простой — и ошибется.

Работающий промт — это не вопрос. Это техническое задание с жёсткой структурой входных данных, методом расчёта и форматом выхода.

Суть за 30 сек
  • Промт = ТЗ, а не вопрос
  • 5 обязательных блоков данных
  • Жёсткий формат выхода = парсинг без боли
  • Три шаблона под задачи ниже

Анатомия рабочего промта: 5 блоков, которые решают исход

Блок 1
Темп и posesión

Среднее число позиций за 40/48 мин для каждой команды. Не «быстрая/медленная», а конкретное число: 98.3 против 92.1. Источник — плей-бай-плей или агрегаторы вроде Basketball-Reference, NBA.com/stats, Flashscore API. Укажите в промте: «Используй Pace = (Possessions / Minutes) * 40».

Блок 2
Эффективность по зонам

eFG%, % реализации в зоне 3пт, под кольцом, в мид-рейндж. Важно: сплиты по домашней/гостевой игре и против топ-10/боттом-10 защите. Пример записи: «Home eFG%: 54.2% (vs top-10 D: 49.1%), Away: 51.8%». ИИ должен видеть разброс, а не только среднее.

Блок 3
Факторы нагрузки и отдыха

Дни отдыха, бэк-ту-бэк, timezone travel (3+ часовых пояса), минуты звезд за последние 3 игры, статус ключевых игроков (Out/Probable/Questionable). Формат: «Team A: 2 дня отдыха, звезда 36 мин/игру, PG Questionable. Team B: B2B, 3-й таймзона за неделю».

Блок 4
Сопоставление стилей (Matchup)

Как атака А бьёт защиту Б по четырем факторам: eFG%, TOV%, OREB%, FTrate. Не «хорошая защита», а «Defensive eFG% allowed: 48.3% (rank 5), TOV% forced: 14.2% (rank 18)». Добавьте историю H2H за 2-3 сезона только при сохранении ядра ростера.

Блок 5
Метод и формат выхода

Жёстко зафиксируйте: «Метод: Монте-Карло 10,000 симуляций с пуассоновским распределением по позициям. Выход: JSON с полями {projected_total, p_over_, p_under_, ev_over, ev_under, confidence_interval_90, key_drivers}». Без этого получите текст, который нельзя автоматизировать.

Шаблон №1: Прематч — полный цикл

Для игры, которая стартует через 2+ часа. Есть время собрать чистые данные, запустить симуляцию, сравнить с линией букмекера.

# ROLE Ты — квантовый аналитик NBA/Евролиги. Твоя задача: спроецировать тотал очков с погрешностью ≤ 3.5 очков. # INPUT DATA (заполни перед запуском) TEAM_A: {name, pace, home_away, efg_overall, efg_home, efg_away, efg_vs_top10D, efg_vs_bot10D, ortg, drtg, tov_pct, oreb_pct, ftrate, rest_days, b2b, tz_travel, key_players_status, star_min_last3} TEAM_B: {аналогично} H2H_LAST_3: [{date, total, pace, winner, key_absences}] MARKET_LINE: {total, over_odds, under_odds, book_margin_pct} # METHOD 1. Рассчитай expected_pace = harmonic_mean(TEAM_A.pace, TEAM_B.pace) * home_court_adj 2. Рассчитай expected_efg_A = TEAM_A.efg_vs_def_tier(TEAM_B.drtg_tier) * rest_adj * load_adj 3. Рассчитай expected_efg_B = аналогично 4. projected_ortg_A = expected_efg_A * 2 * (1 — TOV%) + OREB% * 0.8 + FTrate * 0.45 5. projected_total = expected_pace * (projected_ortg_A + projected_ortg_B) / 100 6. Monte Carlo 10k симуляций: пуассон(possessions) * нормальное(ortg, σ=ortg*0.08) 7. Извлеки процентили 5/50/95, EV vs маркет, ключевые драйверы разницы # OUTPUT FORMAT (строгий JSON) { «projected_total»: 218.4, «ci_90»: [211.2, 225.7], «p_over»: {«218.5»: 0.487, «219.5»: 0.432}, «p_under»: {«218.5»: 0.513, «219.5»: 0.568}, «ev_over»: {«218.5»: -0.021}, «ev_under»: {«218.5»: 0.034}, «key_drivers»: [«TEAM_A pace +4.2 vs season», «TEAM_B star questionable»], «recommendation»: «UNDER 218.5 @ 1.91 (EV +3.4%)» }

Шаблон №2: Лайв — квартал за кварталом

Работает на перерывах. Вводите актуальные статы текущей игры, ИИ пересчитывает проекцию на оставшееся время.

# ROLE Лайв-моделер. Пересчёт тотала на лету с обновлением каждые 2-3 мин. # LIVE INPUT CURRENT: {quarter, time_remaining, score_A, score_B, pace_current_A, pace_current_B, efg_current_A, efg_current_B, tov_pct_current, oreb_pct_current, fouls_team_A, fouls_team_B, key_players_on_floor_A, key_players_on_floor_B, momentum_indicator: «A_run» | «B_run» | «neutral