Создайте персонажей и роботов ИИ, которые перехитрите вас

Андела спонсировала этот пост.

В этом уроке мы создадим агентов искусственного интеллекта, которые могут думать, помнить и адаптировать, независимо от того, контролируют ли они роботов или выступают в качестве персонажей в играх. Это не ваши типичные чат-боты или не игровые символы (NPC).

Почему это важно

Большинство ИИ в играх и робототехнике сегодня довольно ограничено. NPC следуют основным сценариям, роботы выполняют предварительно запрограммированные процедуры, и когда происходит что-то неожиданное, они пытаются адаптироваться.

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

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

Реальный пример: создание умного игрового руководства

Давайте создадим NPC для игры или симуляции, которая действует как ваше личное руководство. Это ИИ, который действительно становится лучше, помогая вам со временем.

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

Как на самом деле работает агент

Традиционные игры ИИ и робот работают так: «Если игрок делает X, то сделайте Y.». Это жестко и предсказуемо.

Агент ИИ отличается. Эти системы могут рассуждать через проблемы, поддерживать долговременную память, и, что наиболее важно, они могут задуматься о своей собственной производительности и улучшения. Когда агент -робот попадает в тупик, он не просто оборачивается — он обновляет его понимание окружающей среды и в следующий раз планирует лучший путь.

Ключевые различия:

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

Что мы на самом деле строим

Демонстрация NPC живет в смоделированном мире (подумайте о единстве или Queots) и делает эти вещи:

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

Техническая настройка

Это более просто, чем кажется. Есть пять основных произведений:

  • Мозг является большой языковой моделью (LLM), такой как GPT-4, которая обрабатывает все мышление и языковую обработку.
  • Интерфейс Подключает наш ИИ с любым миром, в котором он живет, например, ваш игровой двигатель или симулятор робота.
  • Процессор события берет вещи, которые происходят в мире (игрок двигался, робот попал в стену, начался разговор) и превращает их в то, что ИИ может понять.
  • Банк памяти хранят все, что изучает ИИ, от разговоров до успешных стратегий, неудачных попыток и обновлений карт.
  • Петля обучения Это где ИИ регулярно оглядывается на то, что сработало, а что нет, а затем обновляет его подход.

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

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

Шаг 1: Установите необходимые библиотеки

PIP установить Langchain Openai Llama-Index

Для Unity используйте коммуникацию Python через Unity ML-Agents или Socket Server.

Шаг 2: Настройка простой среды единства:

  • Создать сцену лабиринта
  • Добавить NPC «Guidebot» со слушателем с сокетами Python
  • Определить триггерные зоны (например, вход, выход, неправильный поворот)

Шаг 3: Создайте контроллер агента Python

От langchain.chat_models Импорт ChatoPenai из langchain.memory import buffermemory из langchain.agents impirorize_agent, инструмент llm = Chatopenai (температура = 0, модель = «gpt-4») memorybuffermory (memorma_key = «Chat_history») 123456. langchain.memory import survingbuffermemoryfrom langchain.agents importize_agent, инструмент llm = Chatopenai (температура = 0, модель = «gpt-4») memory = survingBuffermemory (memorma_key = «chat_history»)

# Необязательно: инструмент карты для отслеживания прогресса

def map_tracker (log): return f «Обновленная карта: {log}» Инструменты = [
Tool(name=»MapUpdater», func=map_tracker, description=»Logs map status»)
]

Agent = initialize_agent (инструменты, llm, agent = «CHAT-Conversational-React-Description», Memory = memory, verbose = true) 12345678 def map_tracker (log): return f «Обновленная карта: {log}» Инструменты = [    Tool(name=»MapUpdater», func=map_tracker, description=»Logs map status»)] Agent = initiaze_agent (инструменты, LLM, агент = «CHAT-Conversational-React-Description», Memory = memory, verbose = true)

Шаг 4: Определите поведение агента для игровых событий

def harder_event (event_type, context): raffic = f «Вы-дружественное внутриигровое руководство. Event: {event_type}. Контекст: {контекст}. Что вы делаете дальше?» return Agent.run (rasfor) 123 def harder_event (event_type, context): raffic = f «Вы-дружественное руководство в игре. Event: {event_type}. Контекст: {контекст}. Что вы делаете дальше?» return Agent.run (приглашение)

Пример событий

  • «Игрок вошел в лабиринт»
  • «Ботс попал в стену»
  • «Игрок достиг тупикости»
  • «Выход найден»

Каждое событие проходит соответствующие координаты или сегменты карты в качестве контекста.

Шаг 5: Включите двунаправленную связь в Unity (C#):

// отправить событие в Python Socket.send («Игрок вошел в лабиринт: зона A1»); // получение ответа от Python String upemessage = socket.receive (); DisplayDialogue (GuideMessage); 123456 // Отправить событие в pythonsocket.send («Игрок вошел в лабиринт: зона A1»); // получение ответа от Pythonstring GuideMessage = socket.Receive (); DisplayDialogue (GuideMessage);

В Python:

# TCP Слушатель Import Socket Server = socket.socket () server.bind ((«localhost», 9999)) server.listen (1) conn, addr = server.accep () В то время как true: event_data = conn.recv (1024) .decode () action = harder_event («game_event», event_data) conn.code () action. 1234567891011 # TCP ListenerImport SocketServer = socket.socket () server.bind ((«localhost», 9999)) server.listen (1) conn, addr = server.accept () while true: event_data = conn.recv (1024) .decode () Action = handle_event (game_event «, event_evata», event_evata «. conn.send (action.encode ())

Шаг 6: Добавьте возможности для размышлений и обучения

def erfert_on_outcome (событие, успех): Reflection = llm.predict (f «Размышления о событии» {event} ‘с успехом = {успех}. Что должно измениться в следующий раз? ‘{event}’ с успехом = {успех}.

Когда бот терпит неудачу или добивается успеха, агент соответственно обновляет свою будущую стратегию руководства.

Шаг 7: Увеличение погружения в личность агента.

Добавьте профиль агента с чертами:

Agent_profile = «Вы -« Нова », остроумный, любопытный гид -робот. Вы любите помогать игрокам учиться и исследовать». def contextual_prompt (event, context): return f «{agent_profile} \ nevent: {event} \ ncontext: {context} \ nwhat вы говорите или делаете?» 1234 Agent_profile = «Вы -« Нова », остроумный, любопытный гид -робот. Вы любите помогать игрокам учиться и исследовать». def contextual_prompt (event, context): return f «{agent_profile} \ nevent: {event} \ ncontext: {context} \ nwhat вы говорите или делаете?»

Расширенные расширения

  • Графики динамической памяти: используйте векторные базы данных, такие как Faiss или Weaviate для управления пространственной памятью.
  • Голосовое взаимодействие: интегрируйтесь с ElevenLabs или Amazon Polly для иммерсивного звука.
  • Адаптивные модели эмоций: изменить тон, основанный на разочаровании игроков или волнении.
  • Реальное развертывание роботов: перейти от моделирования к робот-операционной системе (ROS) на основе навигации роботов с использованием той же логики агента.

Почему этот подход работает

Традиционные NPC и роботы работают на предопределенных сценариях или жестком планировании пути. Напротив, агент AI обеспечивает импровизацию. Агент:

  • Понимает действия игрока семантически
  • Размышляет о неудачных попытках
  • Магазины истории на протяжении сеансов
  • Общается с адаптивным тоном и содержанием

Это приводит к более захватывающему игровому процессу и более интеллектуальному поведению роботов.

Куда это берет нас

Это только начало. Я наблюдал, как эти системы развиваются за последние несколько лет, и траектория замечательная. Мы переходим от персонажей, которые чувствуют себя изощренными чат -ботами к тем, которые действительно удивляют вас своими ответами. Приложения робота еще более захватывающие: представьте себе техническое обслуживание роботов, которые не просто следуют руководствам по ремонту, но на самом деле понимают системы, над которыми они работают.

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

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

LLMS стали надежными, моделирующие среды надежны, и точки интеграции существуют. Мы не ждем будущего прорыва — все здесь здесь.

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

Готовы построить самосовершенствовающие агенты ИИ, которые думают в петлях, а не только подсказкам? Прочитайте статью Анделы «Внутри архитектуры самосовершенствовающихся агентов LLM».

Andela предоставляет крупнейший в мире частный рынок для глобального отдаленного технологического таланта, основанного на платформе с AI для управления полным жизненным циклом найма контракта. Andela помогает компаниям масштабировать команды и быстрее реализовать проекты через специализированные области: App Engineering, AI, облако, данные и аналитика. Узнайте больше последних из Andela Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Oladimeji Sowole является членом Andela Talent Network, частного рынка для глобальных технологических талантов. Ученый из данных и аналитик данных с более чем 6 -летним профессиональным опытом создания визуализаций данных с различными инструментами и прогнозирующими моделями … Подробнее от Oladimeji Sowole

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *