Дивовижні! Дерево навичок GPT знову виросло, і тепер ви навіть можете робити гру безпосередньо!?
Знаєте, нинішня епоха – це вже не та епоха в минулому, коли можна захопити ринок, зробивши маленьку гру. Сьогоднішній процес розробки ігор надзвичайно складний.
Почнемо з живої сили, особовий склад кожної ігрової команди обчислюється десятками, а то й сотнями. Хтось відповідає за програмування, хтось за мистецтво, хтось за обслуговування і так далі.
Кожна гра також має величезну кодову базу та бібліотеку матеріалів.
В результаті, розробка чудової гри вимагає великої кількості людей і багато часу для завершення. І цей часовий проміжок часто становить кілька років.
Якщо говорити більш інтуїтивно, то це гроші.
Команда гри розробила шедевр, який люди запам'ятають і полюблять, а бюджет перевищить $100 млн.
В іншому випадку виробництво ігор – це своєрідна електрика, що генерується любов'ю.
Тепер все змінилося!
Дослідники розробили модель під назвою GameGPT, яка може інтегрувати кілька агентів штучного інтелекту для автоматизації деяких процесів у розробці ігор.
А різні агенти виконують свої обов'язки і працюють впорядковано.
Є агенти, відповідальні за перегляд плану дизайну гри та внесення відповідних модифікацій і коригувань; Деякі відповідають за переклад завдань у конкретний код; Деякі з них відповідають за перевірку коду, згенерованого на попередньому кроці, і перегляд результатів виконання; Існують також агенти, відповідальні за перевірку того, що вся робота відповідає початковим очікуванням.
Таким чином, удосконалюючи та розкладаючи робочий процес, GameGPT може спростити роботу агентів штучного інтелекту. Такого роду продуктивність більш ефективна і набагато простіша в досягненні, ніж всемогутній агент, який робить все.
Дослідники кажуть, що GameGPT може спростити деякі повторювані та жорсткі аспекти традиційного процесу розробки ігор, такі як тестування коду.
Велика кількість розробників може звільнитися від складної роботи з перевірки та зосередитися на більш складних ланках дизайну, які не можуть бути замінені штучним інтелектом.
Звичайно, ця стаття все ще знаходиться на відносно попередній стадії. Немає конкретних результатів або експериментів, які б продемонстрували покращення продуктивності.
Іншими словами, насправді ніхто не розробляв гру з GameGPT, а модель все ще перебуває на стадії концептуалізації, і її важко оцінити, поки не з'являться конкретні результати застосування та кількісні дані.
Однак це завжди напрямок, над яким потрібно працювати.
Деякі користувачі мережі заявили, що уявлення людей про LLM дещо упереджені. Тепер у дослідників є інструмент, який вирішує 100% завдань НЛП, в той час як люди дбають лише про автоматизацію певних робочих процесів.
Наприклад, уявіть, що ігровий світ реагує на ваші рішення більш нормально, ніж ви могли б судити за п'ять хвилин як жорстко закодований движок, заснований на правилах.
Уявіть, якби гра могла імпровізувати для вас побічні квести на основі прийнятих вами рішень (наприклад, випадкове вбивство ворогів, яких ви бачите на шляху, тощо).
Коли розробники створюють таку систему, вони використовують інженерію підказок, щоб керувати LLM, замість того, щоб кодувати ці речі.
Однак мета цього полягає не в тому, щоб заощадити кошти, а в тому, щоб зробити ігри на етапі, коли раніше не вдавалося зробити більше ігор (хіба це не трохи рота).
GameGPT
Для початку давайте подивимося на великий фреймворк моделі GameGPT - весь процес.
Як бачимо, автор уособлює кожного агента, яскравіше показуючи, як він виконує свої обов'язки.
У крайній лівій частині процесу знаходиться призначена для користувача сторона, яка вводиться в GameGPT, а потім менеджер з розробки та огляд роблять попереднє планування.
Потім вимоги надсилаються інженерам-розробникам, а також інженерам ігрових рушіїв для виконання конкретних завдань і генерації коду.
Нарешті, перевірте, чи немає пропусків, відправте їх назад на ліву сторону і знову запустіть. Якщо ні, продовжуйте рух праворуч, і інженер, відповідальний за перевірку, виконає тест.
** Гра для розробки штучного інтелекту?? **
Насправді, зачатки історії ігор, розроблених штучним інтелектом, можуть сягати ще далі.
Застосування штучного інтелекту в розробці ігор можна простежити до класичних ігор, таких як StarCraft і Diablo. У той час розробникам потрібні були системи штучного інтелекту для створення інтерактивних віртуальних світів і персонажів.
Ці системи стали стандартом для розробки подібних інтерактивних платформ.
Ранні дослідження, пов'язані зі штучним інтелектом у розробці ігор, наголошували на управлінні неігровими персонажами (NPC), а з розвитком технології обробки природної мови (NLP) була проведена новаторська робота з використанням методів глибокого навчання для генерації рівнів.
Одним із шедеврів є MarioGPT, який успішно згенерував деякі рівні в Super Mario Bros. за допомогою тонко налаштованої моделі GPT-2.
Цього року LLM досягла великих успіхів, показавши хороші результати як у НЛП, так і в комп'ютерному зорі (CV).
Ми знаємо, що навчання LLM – це багатоетапний процес. Початковий етап полягає в навчанні цих моделей у великому корпусі, що полегшує набуття базових мовних навичок.
Далі слідує більш важливий етап, який полягає в доопрацюванні моделі шляхом генерації даних з різних завдань НЛП за допомогою інструкцій. Таке коригування інструкцій підвищує здатність моделі до узагальнення в широкому діапазоні застосувань, дозволяючи LLM досягти безпомилкової продуктивності в завданнях, які не виконувалися в попередньому навчанні.
Нарешті, етап навчання з підкріпленням зворотного зв'язку людини (RLHF) гарантує структурну цілісність і надійність моделі.
Ще один нюанс – етап RLHF дозволяє моделі генерувати контент, що імітує людський стиль, підвищуючи її універсальність як агента.
Крім того, досягнення в галузі LLM сприяли автоматизації агентів у процесі розробки програмного забезпечення. Багато досліджень були зосереджені на питанні про те, як розробити агент на основі LLM, який може виконувати різні завдання.
Наприклад, AutoGPT використовував агентів LLM для вирішення певних завдань прийняття рішень у реальному світі, тоді як HuggingGPT використовував один LLM як контролер для координації складніших завдань ШІ.
Хоча ці методи покладаються на одного агента LLM, усі вони додають рецензента (рецензента на блок-схемі вище) для покращення рішення.
Або візьмемо для прикладу AutoGPT, модель отримає деякі допоміжні думки від учня під наглядом для покращення власної продуктивності, а HuggingGPT також можна підключити до GPT-4, щоб зробити рецензента для оцінки точності прийняття рішень.
Є й інші приклади, такі як MetaGPT, який представляє мультиагентний фреймворк, який можна використовувати для автоматизації розробки різного програмного забезпечення.
Повертаючись до розробки ігор, яку ми обговорювали сьогодні, ми повинні знати, що на відміну від загальної розробки програмного забезпечення, індустрія розробки ігор повинна йти в ногу з тенденціями, тому весь процес розробки повинен бути більш точним і лаконічним для досягнення найкращої ефективності.
Крім того, налаштування та використання одного LLM для обслуговування всього циклу розробки ігор без ілюзій та високої точності є непрактичним та витратним.
Тому структура розробки ігор ШІ вимагає участі кількох рецензентів, що може ефективно пом'якшити галюцинаторні тенденції, притаманні мовним моделям.
Дослідники також виявили, що мовні моделі мають ще одне обмеження в розробці ігор – надмірність. LLM може генерувати непотрібні, неінформативні завдання або фрагменти коду під час створення гри.
Щоб ефективно вирішити проблему ілюзії та надмірності, сучасний головний герой, GameGPT, стратегічно використовує різноманітні підходи до проблеми, включаючи подвійну співпрацю, налаштування інструкцій через внутрішні словники та розв'язку коду.
Варто зазначити, що подвійна співпраця передбачає взаємодію між LLM та малими моделями глибокого навчання, а також спільну участь між агентом, відповідальним за виконання, та агентом-рецензентом.
Дослідники кажуть, що ця синергія довела свою ефективність у пом'якшенні ілюзій та надмірності GameGPT.
Ознайомлення з методом
Далі дослідники розібрали інновацію GameGPT з усього процесу.
Перш за все, на етапі геймдизайну, після отримання запиту користувача, до завдань GameGPT входить формування плану розробки всієї гри. Цей етап планування є одним із ключових кроків, який значною мірою впливає на плавний прогрес усього процесу розробки.
Цей етап планує менеджер з розробки ігор на базі LLM, який розробляє початковий план, а потім розбиває його на список завдань.
Варто зазначити, що через притаманні LLM обмеження, цей початковий план часто має галюцинації, що призводить до несподіваних завдань, включаючи неінформативні або невиправдано зайві завдання.
Щоб вирішити ці проблеми, дослідники запропонували чотири стратегії, які могли б пом'якшити ці проблеми, які були ортогональними одна до одної та могли виконуватися пошарово для досягнення кращих результатів.
Сценарій перший: Категоризуйте вхідні запити, щоб визначити тип гри. Наразі фреймворк GameGPT підтримує розробку п'яти різних ігрових жанрів, а саме: екшн, стратегія, рольова гра, симулятор та пригоди.
Для кожного типу дослідники надають стандартизовані шаблони планування, які спрямовують агентів менеджерів з розробки ігор через шаблони з відповідною інформацією.
При застосуванні такого підходу значно знижується частота зайвих завдань, а також ймовірність виникнення галюцинацій.
Стратегія друга: передбачає залучення агента-екзаменатора програми, який є ще одним агентом на основі LLM. Цей агент працює з ретельним дизайном, щоб забезпечити всебічний перегляд плану місії.
Його основна мета - мінімізувати виникнення галюцинацій і надмірності. Ця програма оцінки агентів забезпечує зворотний зв'язок для покращення та підвищення її точності, ефективності та простоти.
У той же час інструкції, згенеровані в цій частині, можуть бути використані як нові вхідні дані для агента менеджера з розробки гри, що зробить план завдань більш точним і досконалим.
Стратегія 3: Налаштуйте сам LLM агента менеджера з розробки ігор за допомогою спеціальних інструкцій, щоб краще планувати на рівні розробки гри. Мета цього процесу тонкого налаштування полягає в тому, щоб дозволити моделі створити план, який буде одночасно точним і лаконічним.
Для зручності дослідницька група зібрала та інтегрувала внутрішній набір даних, який включав багато комбінацій вхідних і вихідних даних. Хоча ці комбінації не відповідають стандартному формату за довжиною чи структурою, усі вони обертаються навколо вимог розробки ігор.
Ця частина фіксованого міксу надається розробниками в галузі.
Застосовуючи цей підхід, дослідники ефективно подолали розрив між загальними мовними навичками LLM та навичками планування розробки ігор.
Стратегія 4: «Підстраховка» на етапі планування. Протягом усього процесу планування агент Game Development Manager завжди ділиться проміжними результатами з користувачем у зовнішньому інтерфейсі, дозволяючи іншим агентам завжди знати, яка розробка триває.
Щоб посилити це, дослідники інтегрували інтерактивний підхід, який дозволяє користувачам активно переглядати, коригувати та вдосконалювати плани на основі своїх очікувань. Такий підхід також гарантує узгодженість між планом дизайну та потребами користувача.
Розібравшись із цими стратегіями, давайте подивимося на переваги GameGPT.
По-перше, процес класифікації завдань у цій моделі вимагає високої точності у визначенні типів завдань та відповідних їм параметрів.
Отже, щоб забезпечити точність на цьому етапі, дослідники створили агента під назвою інженер з розробки ігор. Агент складається з двох моделей, які працюють разом для участі в процесі класифікації завдань.
Такий спільний підхід підвищує точність та ефективність ідентифікації завдань. Водночас, щоб уникнути появи LLM-ілюзій та підвищити точність класифікації завдань, дослідники надали список типів завдань, які можуть з'явитися в розробці ігор.
Щоб краще класифікувати це, вони взяли на озброєння модель BERT.
Модель BERT була повністю навчена з внутрішнім набором даних. Цей набір даних містить елементи даних, адаптовані до завдання розробки гри. Вхідні дані беруться із заздалегідь визначеного списку, а вихідні дані відповідають заданій категорії завдання.
На цьому етапі проводиться перевірка типів і параметрів завдань, і вводиться агент під назвою рецензент завдань, який в основному відповідає за ідентифікацію кожної категорії і за те, чи є параметри обґрунтованими.
Процес рецензування включає перевірку того, чи знаходиться тип завдання в межах заздалегідь визначеного діапазону і чи є воно найбільш підходящим завданням. У той же час він також перевіряє список параметрів, щоб побачити, чи відповідає він завданню.
У деяких сценаріях, таких як деякі ситуації, засновані на контекстній інформації про завдання, або коли запит користувача не може бути виведений параметром, GameGPT застосовує проактивний підхід до їх вирішення.
Рецензент привертає увагу користувача, запускаючи підказку на інтерфейсі інтерфейсу та запитуючи додаткову інформацію, необхідну для параметрів.
Перевага цього інтерактивного підходу полягає в тому, що він забезпечує цілісність деталей аргументації навіть тоді, коли автоматичного міркування недостатньо.
Крім того, існує ще один агент, відповідальний за виявлення залежностей між завданнями та побудову діаграми, яка інкапсулює ці взаємозв'язки. Після того, як граф встановлений, використовується алгоритм для обходу та фільтрації графа, що призводить до певного порядку виконання завдання.
Цей процес гарантує, що модель може бути виконана впорядковано та систематично відповідно до залежностей завдання, що призводить до послідовного та структурованого процесу розробки.
Інша проблема полягає в тому, що використання LLM для генерації довгого коду несе в собі більші галюцинації та ризик надмірності. Щоб вирішити цю проблему, дослідники представили новий метод відокремлення коду, який з'являється в ігровому дизайні, спрощуючи процес міркувань LLM, тим самим значно пом'якшуючи галюцинації та надмірність.
Цей підхід також не складний для розуміння - дослідники розділять очікуваний скрипт на безліч коротких фрагментів коду для обробки LLM. Такий спосіб розв'язки значно спрощує роботу LLM.
Існує також ефективний метод міркування, званий контекстним навчанням, який також може ефективно пом'якшувати галюцинації.
Крім того, ще одна техніка усунення галюцинацій, яка застосовується в GameGPT, передбачає генерацію набору фрагментів K-коду для кожного завдання.
Потім ці фрагменти коду тестуються у віртуальному середовищі та одночасно представляються користувачеві. Як процес тестування, так і відгуки користувачів використовуються для виявлення та усунення проблемних фрагментів коду, залишаючи лише найбільш життєздатний варіант для виконання. Такий підхід також сприяє подальшому зниженню виникнення галюцинацій.
Крім того, дослідники мають власну бібліотеку з великою кількістю фрагментів коду, призначених для розробки ігор. Кожен фрагмент коду коментується маркувальником, надаючи чіткий опис його цільового призначення.
Підводячи підсумок, можна сказати, що для того, щоб код не був зайвим і не галюцинував, розробники провели дві підготовки, заздалегідь і на заході.
У той же час, згадана вище бібліотека також є цінним ресурсом для тонкого налаштування моделі. Рев'ю та покращення коду Після того, як агент ігрового рушія згенерує код, агент рев'ю коду проводить ретельну перевірку та перегляд кодової бази.
Агент проводить ретельну оцінку, намагаючись виявити будь-які випадки, які можуть відхилятися від початкового запиту, або несподівані галюцинації в коді.
Після ретельної перевірки агент може не тільки позначити різницю потенціалів, але й надати пропозиції щодо покращення коду, що призведе до більш обґрунтованої версії.
Після процесу рецензування змінений код, а також зворотний зв'язок від агента будуть передані інженеру ігрового рушія, агенту та користувачеві через інтерфейс інтерфейсу. Якщо користувач вважає це за потрібне, він може надати пропозиції щодо модифікації коду безпосередньо через інтерфейс інтерфейсу.
Потім ці рекомендації передаються агенту з перегляду коду, який оцінює та вибірково об'єднує їх для подальшого створення спільного та ітеративного підходу до покращення коду.
Нарешті, як тільки код згенерований і все зроблено, відповідальність лягає на агента тестування ігрового движка, який відповідає за виконання згенерованого коду.
На цьому етапі агент також дотримується послідовності виконання, встановленої на попередньому етапі.
Конкретний процес виконання передбачає надсилання коду для кожного окремого завдання на ігровий движок, його виконання та безперервне відстеження під час виконання, генерацію логів.
Після виконання всіх завдань, зазначених у послідовності виконання, агент об'єднує всі журнали, що генеруються протягом усього виконання.
Результатом є стислий і вичерпний підсумок, який представляється користувачеві через інтерфейс інтерфейсу.
Крім того, агент інженера-тестувальника виявляє та повідомляє про будь-які відступи, що спостерігаються під час виконання. Ці зворотні трасування служать ключовими індикаторами того, що штучний інтелект вносить подальші корективи в процес виконання або код, дозволяючи вдосконалити весь процес і допомагаючи створити ідеальний кінцевий продукт.
Нарешті, давайте розглянемо формулу фреймворку для декількох агентів, що працюють одночасно:
По-перше, у GameGPT кожен агент має приватну систему пам'яті, і він має доступ до спільного публічного контенту, щоб отримати необхідну інформацію для керування процесом прийняття рішень.
Для агента i з кроком часу t цей процес можна виразити як:
де pθi відповідає LLM або експертній моделі, пов'язаній з агентом i, Oit представляє вихід або результат агента i на кроці часу t, а Mit і Pt посилаються на всі приватні спогади та необхідні публічні записи протягом кроку часу t, відповідно.
У зв'язку з особливостями індустрії розробки ігор та обмеженнями великої мовної моделі, наявність кількох агентів з різними ролями в GameGPT має вирішальне значення.
Враховуючи, що цикли розробки ігор часто тривають місяці, покладаючись на одного агента з всеосяжною пам'яттю та контекстною інформацією, можна значно знизити ефективність мовних моделей, включаючи LLM.
Оскільки проєкти з часом стають складнішими, цей підхід створює проблеми масштабованості. Крім того, з огляду на обмеження на кількість тегів, що обробляються LLM, недоцільно використовувати окремий агент з повною пам'яттю у великих проектах розробки ігор.
Крім того, невід'ємні проблеми, такі як галюцинації та надмірність, що спостерігаються у LLM, підкреслюють важливість співпраці між кількома агентами, особливо тими, хто виконує критичні ролі.
Ця співпраця має важливе значення для пом'якшення проблем, пов'язаних з ілюзіями та надмірністю LLM.
Як наслідок, GameGPT використовує низку різних ролей для полегшення своєї роботи, включаючи обов'язки протягом усього циклу розробки гри.
Ці ролі включають дизайнера ігрового контенту, менеджера з розробки ігор, аудитора програм, інженера з розробки ігор, аудитора завдань, а також інженера ігрового движка, аудитора коду та інженера з тестування ігрових рушіїв, згаданих вище.
У процесі розробки гри кожен персонаж бере на себе різні завдання.
Ресурси:
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
GameGPT входить у виробництво ігор! Повністю автоматично генеруються ігри, час яких можна скоротити в сто разів
Першоджерело: Shin Ji Yuan
Дивовижні! Дерево навичок GPT знову виросло, і тепер ви навіть можете робити гру безпосередньо!?
Знаєте, нинішня епоха – це вже не та епоха в минулому, коли можна захопити ринок, зробивши маленьку гру. Сьогоднішній процес розробки ігор надзвичайно складний.
Почнемо з живої сили, особовий склад кожної ігрової команди обчислюється десятками, а то й сотнями. Хтось відповідає за програмування, хтось за мистецтво, хтось за обслуговування і так далі.
Кожна гра також має величезну кодову базу та бібліотеку матеріалів.
В результаті, розробка чудової гри вимагає великої кількості людей і багато часу для завершення. І цей часовий проміжок часто становить кілька років.
Команда гри розробила шедевр, який люди запам'ятають і полюблять, а бюджет перевищить $100 млн.
В іншому випадку виробництво ігор – це своєрідна електрика, що генерується любов'ю.
Тепер все змінилося!
Дослідники розробили модель під назвою GameGPT, яка може інтегрувати кілька агентів штучного інтелекту для автоматизації деяких процесів у розробці ігор.
А різні агенти виконують свої обов'язки і працюють впорядковано.
Є агенти, відповідальні за перегляд плану дизайну гри та внесення відповідних модифікацій і коригувань; Деякі відповідають за переклад завдань у конкретний код; Деякі з них відповідають за перевірку коду, згенерованого на попередньому кроці, і перегляд результатів виконання; Існують також агенти, відповідальні за перевірку того, що вся робота відповідає початковим очікуванням.
Дослідники кажуть, що GameGPT може спростити деякі повторювані та жорсткі аспекти традиційного процесу розробки ігор, такі як тестування коду.
Велика кількість розробників може звільнитися від складної роботи з перевірки та зосередитися на більш складних ланках дизайну, які не можуть бути замінені штучним інтелектом.
Звичайно, ця стаття все ще знаходиться на відносно попередній стадії. Немає конкретних результатів або експериментів, які б продемонстрували покращення продуктивності.
Іншими словами, насправді ніхто не розробляв гру з GameGPT, а модель все ще перебуває на стадії концептуалізації, і її важко оцінити, поки не з'являться конкретні результати застосування та кількісні дані.
Однак це завжди напрямок, над яким потрібно працювати.
Деякі користувачі мережі заявили, що уявлення людей про LLM дещо упереджені. Тепер у дослідників є інструмент, який вирішує 100% завдань НЛП, в той час як люди дбають лише про автоматизацію певних робочих процесів.
Наприклад, уявіть, що ігровий світ реагує на ваші рішення більш нормально, ніж ви могли б судити за п'ять хвилин як жорстко закодований движок, заснований на правилах.
Уявіть, якби гра могла імпровізувати для вас побічні квести на основі прийнятих вами рішень (наприклад, випадкове вбивство ворогів, яких ви бачите на шляху, тощо).
Коли розробники створюють таку систему, вони використовують інженерію підказок, щоб керувати LLM, замість того, щоб кодувати ці речі.
Однак мета цього полягає не в тому, щоб заощадити кошти, а в тому, щоб зробити ігри на етапі, коли раніше не вдавалося зробити більше ігор (хіба це не трохи рота).
GameGPT
Для початку давайте подивимося на великий фреймворк моделі GameGPT - весь процес.
У крайній лівій частині процесу знаходиться призначена для користувача сторона, яка вводиться в GameGPT, а потім менеджер з розробки та огляд роблять попереднє планування.
Потім вимоги надсилаються інженерам-розробникам, а також інженерам ігрових рушіїв для виконання конкретних завдань і генерації коду.
Нарешті, перевірте, чи немає пропусків, відправте їх назад на ліву сторону і знову запустіть. Якщо ні, продовжуйте рух праворуч, і інженер, відповідальний за перевірку, виконає тест.
** Гра для розробки штучного інтелекту?? **
Насправді, зачатки історії ігор, розроблених штучним інтелектом, можуть сягати ще далі.
Застосування штучного інтелекту в розробці ігор можна простежити до класичних ігор, таких як StarCraft і Diablo. У той час розробникам потрібні були системи штучного інтелекту для створення інтерактивних віртуальних світів і персонажів.
Ці системи стали стандартом для розробки подібних інтерактивних платформ.
Ранні дослідження, пов'язані зі штучним інтелектом у розробці ігор, наголошували на управлінні неігровими персонажами (NPC), а з розвитком технології обробки природної мови (NLP) була проведена новаторська робота з використанням методів глибокого навчання для генерації рівнів.
Одним із шедеврів є MarioGPT, який успішно згенерував деякі рівні в Super Mario Bros. за допомогою тонко налаштованої моделі GPT-2.
Цього року LLM досягла великих успіхів, показавши хороші результати як у НЛП, так і в комп'ютерному зорі (CV).
Ми знаємо, що навчання LLM – це багатоетапний процес. Початковий етап полягає в навчанні цих моделей у великому корпусі, що полегшує набуття базових мовних навичок.
Далі слідує більш важливий етап, який полягає в доопрацюванні моделі шляхом генерації даних з різних завдань НЛП за допомогою інструкцій. Таке коригування інструкцій підвищує здатність моделі до узагальнення в широкому діапазоні застосувань, дозволяючи LLM досягти безпомилкової продуктивності в завданнях, які не виконувалися в попередньому навчанні.
Нарешті, етап навчання з підкріпленням зворотного зв'язку людини (RLHF) гарантує структурну цілісність і надійність моделі.
Крім того, досягнення в галузі LLM сприяли автоматизації агентів у процесі розробки програмного забезпечення. Багато досліджень були зосереджені на питанні про те, як розробити агент на основі LLM, який може виконувати різні завдання.
Наприклад, AutoGPT використовував агентів LLM для вирішення певних завдань прийняття рішень у реальному світі, тоді як HuggingGPT використовував один LLM як контролер для координації складніших завдань ШІ.
Хоча ці методи покладаються на одного агента LLM, усі вони додають рецензента (рецензента на блок-схемі вище) для покращення рішення.
Або візьмемо для прикладу AutoGPT, модель отримає деякі допоміжні думки від учня під наглядом для покращення власної продуктивності, а HuggingGPT також можна підключити до GPT-4, щоб зробити рецензента для оцінки точності прийняття рішень.
Є й інші приклади, такі як MetaGPT, який представляє мультиагентний фреймворк, який можна використовувати для автоматизації розробки різного програмного забезпечення.
Повертаючись до розробки ігор, яку ми обговорювали сьогодні, ми повинні знати, що на відміну від загальної розробки програмного забезпечення, індустрія розробки ігор повинна йти в ногу з тенденціями, тому весь процес розробки повинен бути більш точним і лаконічним для досягнення найкращої ефективності.
Крім того, налаштування та використання одного LLM для обслуговування всього циклу розробки ігор без ілюзій та високої точності є непрактичним та витратним.
Тому структура розробки ігор ШІ вимагає участі кількох рецензентів, що може ефективно пом'якшити галюцинаторні тенденції, притаманні мовним моделям.
Дослідники також виявили, що мовні моделі мають ще одне обмеження в розробці ігор – надмірність. LLM може генерувати непотрібні, неінформативні завдання або фрагменти коду під час створення гри.
Щоб ефективно вирішити проблему ілюзії та надмірності, сучасний головний герой, GameGPT, стратегічно використовує різноманітні підходи до проблеми, включаючи подвійну співпрацю, налаштування інструкцій через внутрішні словники та розв'язку коду.
Варто зазначити, що подвійна співпраця передбачає взаємодію між LLM та малими моделями глибокого навчання, а також спільну участь між агентом, відповідальним за виконання, та агентом-рецензентом.
Дослідники кажуть, що ця синергія довела свою ефективність у пом'якшенні ілюзій та надмірності GameGPT.
Ознайомлення з методом
Далі дослідники розібрали інновацію GameGPT з усього процесу.
Перш за все, на етапі геймдизайну, після отримання запиту користувача, до завдань GameGPT входить формування плану розробки всієї гри. Цей етап планування є одним із ключових кроків, який значною мірою впливає на плавний прогрес усього процесу розробки.
Цей етап планує менеджер з розробки ігор на базі LLM, який розробляє початковий план, а потім розбиває його на список завдань.
Варто зазначити, що через притаманні LLM обмеження, цей початковий план часто має галюцинації, що призводить до несподіваних завдань, включаючи неінформативні або невиправдано зайві завдання.
Щоб вирішити ці проблеми, дослідники запропонували чотири стратегії, які могли б пом'якшити ці проблеми, які були ортогональними одна до одної та могли виконуватися пошарово для досягнення кращих результатів.
Сценарій перший: Категоризуйте вхідні запити, щоб визначити тип гри. Наразі фреймворк GameGPT підтримує розробку п'яти різних ігрових жанрів, а саме: екшн, стратегія, рольова гра, симулятор та пригоди.
Для кожного типу дослідники надають стандартизовані шаблони планування, які спрямовують агентів менеджерів з розробки ігор через шаблони з відповідною інформацією.
При застосуванні такого підходу значно знижується частота зайвих завдань, а також ймовірність виникнення галюцинацій.
Стратегія друга: передбачає залучення агента-екзаменатора програми, який є ще одним агентом на основі LLM. Цей агент працює з ретельним дизайном, щоб забезпечити всебічний перегляд плану місії.
Його основна мета - мінімізувати виникнення галюцинацій і надмірності. Ця програма оцінки агентів забезпечує зворотний зв'язок для покращення та підвищення її точності, ефективності та простоти.
У той же час інструкції, згенеровані в цій частині, можуть бути використані як нові вхідні дані для агента менеджера з розробки гри, що зробить план завдань більш точним і досконалим.
Стратегія 3: Налаштуйте сам LLM агента менеджера з розробки ігор за допомогою спеціальних інструкцій, щоб краще планувати на рівні розробки гри. Мета цього процесу тонкого налаштування полягає в тому, щоб дозволити моделі створити план, який буде одночасно точним і лаконічним.
Для зручності дослідницька група зібрала та інтегрувала внутрішній набір даних, який включав багато комбінацій вхідних і вихідних даних. Хоча ці комбінації не відповідають стандартному формату за довжиною чи структурою, усі вони обертаються навколо вимог розробки ігор.
Застосовуючи цей підхід, дослідники ефективно подолали розрив між загальними мовними навичками LLM та навичками планування розробки ігор.
Стратегія 4: «Підстраховка» на етапі планування. Протягом усього процесу планування агент Game Development Manager завжди ділиться проміжними результатами з користувачем у зовнішньому інтерфейсі, дозволяючи іншим агентам завжди знати, яка розробка триває.
Щоб посилити це, дослідники інтегрували інтерактивний підхід, який дозволяє користувачам активно переглядати, коригувати та вдосконалювати плани на основі своїх очікувань. Такий підхід також гарантує узгодженість між планом дизайну та потребами користувача.
Розібравшись із цими стратегіями, давайте подивимося на переваги GameGPT.
Отже, щоб забезпечити точність на цьому етапі, дослідники створили агента під назвою інженер з розробки ігор. Агент складається з двох моделей, які працюють разом для участі в процесі класифікації завдань.
Такий спільний підхід підвищує точність та ефективність ідентифікації завдань. Водночас, щоб уникнути появи LLM-ілюзій та підвищити точність класифікації завдань, дослідники надали список типів завдань, які можуть з'явитися в розробці ігор.
Щоб краще класифікувати це, вони взяли на озброєння модель BERT.
Модель BERT була повністю навчена з внутрішнім набором даних. Цей набір даних містить елементи даних, адаптовані до завдання розробки гри. Вхідні дані беруться із заздалегідь визначеного списку, а вихідні дані відповідають заданій категорії завдання.
На цьому етапі проводиться перевірка типів і параметрів завдань, і вводиться агент під назвою рецензент завдань, який в основному відповідає за ідентифікацію кожної категорії і за те, чи є параметри обґрунтованими.
Процес рецензування включає перевірку того, чи знаходиться тип завдання в межах заздалегідь визначеного діапазону і чи є воно найбільш підходящим завданням. У той же час він також перевіряє список параметрів, щоб побачити, чи відповідає він завданню.
У деяких сценаріях, таких як деякі ситуації, засновані на контекстній інформації про завдання, або коли запит користувача не може бути виведений параметром, GameGPT застосовує проактивний підхід до їх вирішення.
Рецензент привертає увагу користувача, запускаючи підказку на інтерфейсі інтерфейсу та запитуючи додаткову інформацію, необхідну для параметрів.
Перевага цього інтерактивного підходу полягає в тому, що він забезпечує цілісність деталей аргументації навіть тоді, коли автоматичного міркування недостатньо.
Крім того, існує ще один агент, відповідальний за виявлення залежностей між завданнями та побудову діаграми, яка інкапсулює ці взаємозв'язки. Після того, як граф встановлений, використовується алгоритм для обходу та фільтрації графа, що призводить до певного порядку виконання завдання.
Цей процес гарантує, що модель може бути виконана впорядковано та систематично відповідно до залежностей завдання, що призводить до послідовного та структурованого процесу розробки.
Інша проблема полягає в тому, що використання LLM для генерації довгого коду несе в собі більші галюцинації та ризик надмірності. Щоб вирішити цю проблему, дослідники представили новий метод відокремлення коду, який з'являється в ігровому дизайні, спрощуючи процес міркувань LLM, тим самим значно пом'якшуючи галюцинації та надмірність.
Цей підхід також не складний для розуміння - дослідники розділять очікуваний скрипт на безліч коротких фрагментів коду для обробки LLM. Такий спосіб розв'язки значно спрощує роботу LLM.
Існує також ефективний метод міркування, званий контекстним навчанням, який також може ефективно пом'якшувати галюцинації.
Крім того, ще одна техніка усунення галюцинацій, яка застосовується в GameGPT, передбачає генерацію набору фрагментів K-коду для кожного завдання.
Крім того, дослідники мають власну бібліотеку з великою кількістю фрагментів коду, призначених для розробки ігор. Кожен фрагмент коду коментується маркувальником, надаючи чіткий опис його цільового призначення.
Підводячи підсумок, можна сказати, що для того, щоб код не був зайвим і не галюцинував, розробники провели дві підготовки, заздалегідь і на заході.
У той же час, згадана вище бібліотека також є цінним ресурсом для тонкого налаштування моделі. Рев'ю та покращення коду Після того, як агент ігрового рушія згенерує код, агент рев'ю коду проводить ретельну перевірку та перегляд кодової бази.
Агент проводить ретельну оцінку, намагаючись виявити будь-які випадки, які можуть відхилятися від початкового запиту, або несподівані галюцинації в коді.
Після ретельної перевірки агент може не тільки позначити різницю потенціалів, але й надати пропозиції щодо покращення коду, що призведе до більш обґрунтованої версії.
Після процесу рецензування змінений код, а також зворотний зв'язок від агента будуть передані інженеру ігрового рушія, агенту та користувачеві через інтерфейс інтерфейсу. Якщо користувач вважає це за потрібне, він може надати пропозиції щодо модифікації коду безпосередньо через інтерфейс інтерфейсу.
Потім ці рекомендації передаються агенту з перегляду коду, який оцінює та вибірково об'єднує їх для подальшого створення спільного та ітеративного підходу до покращення коду.
Нарешті, як тільки код згенерований і все зроблено, відповідальність лягає на агента тестування ігрового движка, який відповідає за виконання згенерованого коду.
На цьому етапі агент також дотримується послідовності виконання, встановленої на попередньому етапі.
Конкретний процес виконання передбачає надсилання коду для кожного окремого завдання на ігровий движок, його виконання та безперервне відстеження під час виконання, генерацію логів.
Після виконання всіх завдань, зазначених у послідовності виконання, агент об'єднує всі журнали, що генеруються протягом усього виконання.
Результатом є стислий і вичерпний підсумок, який представляється користувачеві через інтерфейс інтерфейсу.
Крім того, агент інженера-тестувальника виявляє та повідомляє про будь-які відступи, що спостерігаються під час виконання. Ці зворотні трасування служать ключовими індикаторами того, що штучний інтелект вносить подальші корективи в процес виконання або код, дозволяючи вдосконалити весь процес і допомагаючи створити ідеальний кінцевий продукт.
Нарешті, давайте розглянемо формулу фреймворку для декількох агентів, що працюють одночасно:
По-перше, у GameGPT кожен агент має приватну систему пам'яті, і він має доступ до спільного публічного контенту, щоб отримати необхідну інформацію для керування процесом прийняття рішень.
Для агента i з кроком часу t цей процес можна виразити як:
У зв'язку з особливостями індустрії розробки ігор та обмеженнями великої мовної моделі, наявність кількох агентів з різними ролями в GameGPT має вирішальне значення.
Враховуючи, що цикли розробки ігор часто тривають місяці, покладаючись на одного агента з всеосяжною пам'яттю та контекстною інформацією, можна значно знизити ефективність мовних моделей, включаючи LLM.
Оскільки проєкти з часом стають складнішими, цей підхід створює проблеми масштабованості. Крім того, з огляду на обмеження на кількість тегів, що обробляються LLM, недоцільно використовувати окремий агент з повною пам'яттю у великих проектах розробки ігор.
Крім того, невід'ємні проблеми, такі як галюцинації та надмірність, що спостерігаються у LLM, підкреслюють важливість співпраці між кількома агентами, особливо тими, хто виконує критичні ролі.
Ця співпраця має важливе значення для пом'якшення проблем, пов'язаних з ілюзіями та надмірністю LLM.
Як наслідок, GameGPT використовує низку різних ролей для полегшення своєї роботи, включаючи обов'язки протягом усього циклу розробки гри.
Ці ролі включають дизайнера ігрового контенту, менеджера з розробки ігор, аудитора програм, інженера з розробки ігор, аудитора завдань, а також інженера ігрового движка, аудитора коду та інженера з тестування ігрових рушіїв, згаданих вище.
У процесі розробки гри кожен персонаж бере на себе різні завдання.
Ресурси: