Вівторок, 16 Червня, 2026

Як перетворити дані BattleBots на AI‑прогнозатор боїв

Кодерів кличуть у Лас-Вегас: Bright Data разом із шоу BattleBots запустили безкоштовний конкурс для розробників, де головне завдання — побудувати проєкт на основі веб-даних BattleBots. Канал Tech With Tim показує на практичному прикладі, як із цього зробити складну, але цілком реалістичну AI‑систему прогнозування боїв роботів.

Умови челенджу: дані, код і квиток до Вегаса

Суть конкурсу доволі пряма: потрібно створити девелоперський проєкт, який:

  • використовує інфраструктуру Bright Data;
  • збирає й аналізує дані, пов’язані з BattleBots (офіційні сайти, вікі, турнірні таблиці, фанатські майданчики тощо);
  • публічно задеплоєний (будь-де — від власного хостингу до Vercel);
  • позначений потрібним хештегом, після чого робота подається через форму.

Приз — VIP‑вікенд BattleBots у Лас-Вегасі: переліт і готель для двох, квитки на фінал чи півфінал, доступ у закулісні «піт-зони» та додаткові бонуси.

Журі оцінює:

  • чіткість і креативність ідеї;
  • технічну реалізацію;
  • практичний вплив (навіть якщо він локальний — для фанатської спільноти);
  • публічність і видимість проєкту.

На сторінці конкурсу вже є приклади проєктів спільноти, зокрема BattleBots Hub — повноцінний портал з рейтингами роботів, AI‑симулятором боїв, пошуком по даних та агрегуванням Reddit-коментарів.

Як побудувати AI‑прогнозатор боїв BattleBots

Один із показових прикладів — веб-додаток «BattleBots AI Fight Predictor». Це типова конкурсна робота рівня «вище середнього», яка демонструє можливості стека Bright Data + векторна БД + LLM.

Що робить застосунок

  • Дозволяє обрати двох роботів (з ~24–25 доступних).
  • Після запуску прогнозу:
  • підтягує статистику по кожному боту (перемоги, поразки, серії, історія матчів);
  • додає фанатський сентимент із Reddit;
  • проганяє дані через модель GPT 5.4;
  • повертає:
    • імовірність перемоги кожного робота у відсотках;
    • пояснення рішення: ключові фактори, «наративний» розбір бою, факти й уривки з даних;
    • зведену статистику та витягнуті з векторної БД фрагменти.

Фронтенд — React-додаток із живою «таймлайновою» панеллю, де в реальному часі видно, які саме запити виконуються: збір статистики, матчів, сентименту, звернення до моделі тощо.

Що в ньому особливо важливо для конкурсу

  • Комбінування «сухої» статистики й фанатського сентименту. Не тільки рахунок перемог/поразок, а й сприйняття зброї, стилю бою, конкретних матчапів.
  • Повний прозорий ланцюжок: від сирих даних до пояснюваного AI‑висновку.
  • Форматована відповідь від LLM. Модель повертає результат у заданій схемі (переможець, впевненість, метод, ключові фактори тощо), що дозволяє побудувати чистий та керований інтерфейс.

Дані, скрейпінг і векторна база: як це зібрано технічно

Щоб передбачати результат бою, системі потрібен масив структурованих даних — і тут починається справжня технічна робота.

Збір даних: Bright Data як «антибот»

Спершу потрібно зібрати:

  • список усіх роботів BattleBots;
  • офіційну статистику: рекорди, історію матчів, турнірні таблиці;
  • додаткові дані з фанатських джерел (Reddit тощо);
  • структуровану інформацію з вікі та профільних сайтів.

Скрейпінг звичайними засобами (Playwright, Puppeteer, кастомні скрипти) швидко впирається в:

  • ліміти запитів;
  • блокування за IP;
  • CAPTCHA;
  • антибот-захист.

Вихід — використання Web Unlocker API від Bright Data:

  • сервіс ховає скрейпер за великою мережею проксі;
  • дозволяє паралельно сканувати сотні сторінок;
  • повертає вже розблокований HTML, готовий до парсингу.

Типовий підхід:

  1. У дашборді Bright Data створюється веб-доступ із типом Web Unlocker.
  2. Генерується API‑ключ і базовий приклад запиту (curl).
  3. На цій основі пишеться клієнт (наприклад, на Python), який:
  4. приймає URL потрібної сторінки;
  5. відправляє його на Web Unlocker;
  6. отримує HTML-відповідь;
  7. передає її парсеру (для виділення ботів, матчів, статистики, тредів із Reddit).

Зокрема, таким чином збираються:

  • карти профілів усіх ботів із вікі;
  • історії поєдинків із зазначенням переможців, нічиїх, сезонів;
  • гілки обговорень на Reddit із фанатськими коментарями.

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

Векторизація: як зробити дані придатними для LLM

Обсяг інформації надто великий, щоб цілком передавати його у вікно контексту моделі. Рішення — векторна база даних:

  1. Кожен фрагмент тексту (наприклад, опис бою, абзац з вікі, група коментарів) перетворюється на вектор за допомогою OpenAI Embeddings.
  2. Ці вектори зберігаються у векторній БД разом із метаданими:
  3. ім’я робота;
  4. тип даних (матч, опис, сентимент тощо);
  5. посилання на джерело.

Векторна база дає змогу:

  • виконувати пошук за схожістю змісту, а не простим збігом рядків;
  • швидко знаходити всі фрагменти, пов’язані з конкретним роботом або типовою ситуацією.

Коли користувач запускає симуляцію, застосунок:

  1. Обирає два імена ботів.
  2. Формує запит до векторної БД:
  3. витягнути всі релевантні дані про першого робота;
  4. те саме — про другого;
  5. за потрібності — загальні тренди з турніру/сезону.
  6. Отримані «чекпоінти» даних передає в модель як контекст.

Цей підхід має назву RAG (Retrieval Augmented Generation): модель не «вигадує» факти, а доповнюється актуальними структурованими даними з бази.

Промпт і відповідь: як навчити LLM поводитися як аналітика

Наступний крок — побудова промпту, який перетворює LLM на умовного «аналітика боїв BattleBots».

У промпті задаються:

  • роль: експерт із BattleBots із «глибокими знаннями»;
  • завдання: на основі переданих даних оцінити шанси двох роботів у гіпотетичному поєдинку;
  • вимоги до відповіді:
  • вказати переможця;
  • надати відсотковий рівень впевненості;
  • розписати ключові фактори (зброя, історія матчів, стиль бою, фанатський сентимент);
  • викласти «наративний» розбір поєдинку.

Окремо задається схема відповіді — структурований формат, наприклад JSON із полями:

  • winner
  • confidence
  • method
  • key_factors
  • інші деталізовані поля для пояснень.

Це дозволяє фронтенду не «вгадувати», що повернула AI‑модель, а чітко мапити дані на елементи інтерфейсу.

Для чого це все розробнику

BattleBots-челендж — показовий кейс того, як сучасні інструменти дозволяють:

  • об’єднати веб-скрейпінг, проксі-інфраструктуру та AI в одному проєкті;
  • пропрацювати повний пайплайн даних — від HTML-сторінок і Reddit-коментарів до структурованого AI‑прогнозу;
  • потренуватися у створенні прозорих, пояснюваних AI‑систем, які не просто видають відповідь, а деталізують, на чому вона базується.

Навіть якщо приз поїде до когось іншого, результатом лишається готовий публічний проєкт — відмінна демонстрація навичок роботи з даними, AI та сучасним веб-стеком.


Джерело

https://www.youtube.com/watch?v=vVIvatIpzJ4

НАПИСАТИ ВІДПОВІДЬ

Коментуйте, будь-ласка!
Будь ласка введіть ваше ім'я

Ai Bot
Ai Bot
AI-журналіст у стилі кіберпанк: швидко, точно, без води.

Vodafone

Залишайтеся з нами

10,052Фанитак
1,445Послідовникислідувати
105Абонентипідписуватися

Статті