Использование MINDcraft с Novita AI: Полное руководство

Использование MINDcraft с Novita AI

MINDcraft это новаторский проект с открытым исходным кодом, который интегрирует большие языковые модели (LLMs) для управления ботами Minecraft, открывая новые горизонты взаимодействия и творчества в игре. Он использует библиотеку Mineflayer, позволяя этим ботам выполнять сложные задачи, генерируя высокоуровневый код. Этот проект не только демонстрирует потенциал ИИ в играх, но и расширяет границы возможностей языковых моделей в виртуальных средах. Novita AI рекомендуется как один из поставщиков API проекта.

Содержание

Обзор проекта MINDcraft

По своей сути MINDcraft — это приложение node.js, которое интегрируется LLMs для управления ботами Minecraft при выполнении различных задач. Основной бот, по имени Энди, может общаться с игроками и самостоятельно ставить цели, например, собирать ресурсы или строить здания. Эта способность позволяет Энди играть самостоятельно, постоянно адаптируясь и ставя новые цели без вмешательства человека. Архитектура проекта позволяет Энди эффективно выполнять команды и эффективно взаимодействовать с игровым окружением.

Главные преимущества

  • Интеграция языковой модели: MINDcraft использует LLMs для генерации кода, управляющего действиями бота в Minecraft. Эта интеграция позволяет Энди эффективно выполнять сложные задачи, интерпретируя инструкции естественного языка и преобразуя их в игровые команды.
  • Автономный игровой процессЭнди может самостоятельно ставить цели и ориентироваться в игровом мире, что расширяет его возможности по выполнению задач без прямого участия игрока. Эта автономность позволяет Энди исследовать новые стратегии и адаптировать своё поведение в зависимости от обратной связи от окружающей среды.
  • Параметризованные команды: Проект включает команды, аналогичные командам Toolformer, что позволяет Энди более надёжно выполнять такие задачи, как сбор ресурсов. Эти параметризованные команды упрощают выполнение задач, предоставляя предопределённые действия, которые можно настраивать в соответствии с конкретными требованиями.

Разработка и внедрение MINDcraft

Разработка

Вдохновение и начальная работа

Разработка MINDcraft началась после публикации заметной статьи на Voyager, в которой была представлена библиотека Mineflayer для создания ботов Minecraft на Node.js. В отличие от предыдущих исследований ИИ, которые использовали входные изображения и низкоуровневые выходные данные, Mineflayer позволяет системам ИИ взаимодействовать с Minecraft с помощью высокоуровневого кода, упрощая такие задачи, как навигация и получение ресурсов, без необходимости обучения с подкреплением.

Использование LLMs для инструкции, следующей за

Современные LLMпревосходны в генерации кода и следовании инструкциям, что позволяет легко обуславливать LLM для генерации кода Mineflayer на основе человеческих инструкций, что привело к созданию Энди. Для повышения надёжности выполнения Энди распространённых навыков были реализованы параметризованные команды. Например, Энди может выводить !collectBlocks("oak_log", 1) вместо генерации сложного кода.

Улучшения и будущие направления

Со временем набор команд Энди расширился, и были добавлены автоматические действия, такие как избегание агрессивных мобов. Недавно Энди научился самостоятельно играть в Minecraft, задавая цели на естественном языке (например, «Собрать материалы для строительства дома»). В планах на будущее — повторное использование кода, рефлексия, улучшение пространственного восприятия, визуальные входы и многоагентное взаимодействие.

Реализация

Реализация MINDcraft

Класс агента и основной логический цикл

Основной класс MINDcraft — это класс агента, который создается всякий раз, когда Энди не вошел в систему. Основной логический цикл в handleMessage выполняется, когда игрок отправляет сообщение Энди:

handleMessage(message):
    history.add(message)
    while true:
        hist = history.getHistory()
        response = prompter.promptConvo(hist)
        if containsCommand(response):
            cleanChat(response)
            history.add(response)
            result = executeCommand(this, response)
            history.add(result)
        else:
            cleanChat(response)
            history.add(response)
            break

Обработка ответов и команд

Энди может возвращать один ответ в диалоговом режиме или итеративно вызывать запросы или команды действий. Запросы предоставляют информацию о состоянии мира (например, !инвентарь, !nearbyBlocks ), в то время как действия вызывают игровое поведение (например, !followPlayer(имя) , !collectBlocks(блок) ). Все действия выполняются с помощью выполнять метод в классе Coder.

Генерация пользовательского кода

Для сложных действий, таких как строительство, Энди может написать собственный код, выводя новое действие Команда для входа в режим кодирования. Используя generateCode Используя метод класса Coder, Энди пишет собственный JavaScript-код с доступом к Mineflayer и библиотеке полезных функций. Метод включает цикл для нескольких попыток отладки.

Роль контекстных примеров

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

Как запустить MINDcraft

Требования

  • Minecraft Java Edition (до версии 1.21.1, рекомендуется версия 1.20.4)
  • Установлен Node.js (как минимум v14)
  • Один из них: API-ключ OpenAI | API-ключ Gemini | API-ключ Anthropic | API-ключ Replicate | API-ключ Hugging Face | API-ключ Groq | Установленная Ollama. | API-ключ Qwen | Novita AI API-ключ |

Установить и запустить

Убедитесь, что вы соответствуете указанным выше требованиям.

  1. Клонируйте или загрузите этот репозиторий (большая зеленая кнопка)
  2. Переименовывать keys.example.json в keys.json и заполните ваши ключи API (вам нужен только один). Нужная модель установлена в andy.json или другие профили. Информация о других моделях представлена в таблице ниже.
  3. В терминале/командной строке выполните npm install из установленного каталога
  4. Запустите мир Minecraft и откройте его в локальной сети на порту 55916.
  5. Run node main.js из установленного каталога

Кастомизация:

Вы можете настроить детали проекта в settings.js. См. файл. Вы можете настроить имя агента, модель и подсказки в его профиле, например andy.json.

API
Переменная конфигурации
Пример названия модели
Novita AI
NOVITA_API_KEY
gryphe/mythomax-l2-13b

Как получить доступ к Novita AI API ключ

Шаг 1: перейдите к novita.ai и войдите в систему

Вы можете войти в систему Novita AI с Google или GitHub, которые создадут новую учетную запись при первом входе. В качестве альтернативы вы можете зарегистрироваться, используя свой адрес электронной почты.

Шаг 2: Управление Novita AI LLM API ключ

Novita AI Обеспечивает доступ к API через аутентификацию Bearer, включая API-ключ в заголовок запроса, например, «Authorization: Bearer {API Key}». Для управления ключами перейдите в раздел «Управление ключами» в настройках. Ключ по умолчанию генерируется автоматически при первом входе в систему. Вы можете создать дополнительные ключи, нажав «+ Добавить новый ключ».

страница управления ключами novita

Шаг 3: Пополнение баланса

Novita AI Предлагает новым пользователям ваучер с бонусом для пробы наших продуктов. Чтобы добавить бонус, посетите Платежи и платежи и следуйте руководству Способы Оплаты.

Заключение

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

Первоначально опубликовано в Novita AI

Novita AI — это облачная платформа ИИ, которая предлагает разработчикам простой способ развертывания моделей ИИ с помощью нашего простого API, а также предоставляет доступный и надежный GPU облако для строительства и масштабирования.


Узнайте больше от Novita

Подпишитесь, чтобы получать последние публикации на вашу электронную почту.

Оставьте комментарий

Наверх

Узнайте больше от Novita

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

Подробнее