Novita AI Parcerias

Usando o MINDcraft com Novita AI: Um Guia Completo

Usando o MINDcraft com Novita AI: Um Guia Completo

O MINDcraft é um projeto open-source inovador que integra grandes modelos de linguagem (LLMs) para controlar bots no Minecraft, oferecendo uma nova dimensão de interação e criatividade dentro do jogo. Ele utiliza a biblioteca Mineflayer para permitir que esses bots executem tarefas complexas gerando código de alto nível. Este projeto não apenas demonstra o potencial da IA em jogos, mas também expande os limites do que pode ser alcançado com modelos de linguagem em ambientes virtuais. A Novita AI é recomendada como um dos provedores de API do projeto.

Visão Geral do Projeto MINDcraft

Em sua essência, o MINDcraft é uma aplicação Node.js que integra LLMs para guiar bots do Minecraft na execução de diversas tarefas. O bot principal, chamado Andy, pode se comunicar com jogadores e definir metas de forma autônoma, como coletar recursos ou construir estruturas. Essa capacidade permite que Andy jogue de forma independente, adaptando-se continuamente e estabelecendo novos objetivos sem intervenção humana. A arquitetura do projeto permite que Andy execute comandos de forma eficiente e interaja com o ambiente do jogo de maneira significativa.

https://www.youtube.com/embed/IeXadWbvDiE

Principais Recursos

  • Integração com Modelo de Linguagem: O MINDcraft utiliza LLMs para gerar código que direciona as ações do bot dentro do Minecraft. Essa integração permite que Andy execute tarefas complexas de forma eficiente, interpretando instruções em linguagem natural e traduzindo-as em comandos acionáveis no jogo.
  • Jogabilidade Autônoma: Andy pode definir metas de forma independente e navegar pelo mundo do jogo, melhorando sua capacidade de realizar tarefas sem entrada direta do jogador. Essa autonomia permite que Andy explore novas estratégias e adapte seu comportamento com base no feedback do ambiente.
  • Comandos Parametrizados: O projeto incorpora comandos semelhantes aos encontrados no Toolformer, permitindo que Andy execute tarefas como coleta de recursos de forma mais confiável. Esses comandos parametrizados simplificam a execução de tarefas, fornecendo ações predefinidas que podem ser personalizadas com base em requisitos específicos.

Desenvolvimento e Implementação do MINDcraft

Desenvolvimento

Inspiração e Trabalho Inicial

O desenvolvimento do MINDcraft começou após a publicação de um artigo notável sobre o Voyager, que apresentou a biblioteca Mineflayer para criar bots no Minecraft em Node.js. Diferente de pesquisas anteriores de IA que usavam entradas de imagem e saídas de baixo nível, o Mineflayer permite que sistemas de IA interajam com o Minecraft usando código de alto nível, simplificando tarefas como navegação e aquisição de recursos sem a necessidade de aprendizado por reforço.

Aproveitando LLMs para Seguir Instruções

Os LLMs modernos são excelentes em geração de código e seguir instruções, tornando fácil condicionar um LLM para gerar código Mineflayer com base em instruções humanas, levando à criação do Andy. Comandos parametrizados foram implementados para aumentar a confiabilidade de Andy na execução de habilidades comuns. Por exemplo, Andy pode gerar !collectBlocks("oak_log", 1) em vez de gerar código complexo.

Aprimoramentos e Direções Futuras

Com o tempo, o conjunto de comandos de Andy foi expandido, e comportamentos automáticos, como evitar mobs agressivos, foram adicionados. Recentemente, Andy pode jogar Minecraft de forma independente, definindo metas em linguagem natural (por exemplo, “Colete materiais para construir uma casa”). Os planos futuros incluem reutilização de código, reflexão de experiências, melhoria da consciência espacial, entradas visuais e interações multiagente.

Implementação

Implementação do MINDcraft

Classe Agent e Loop Lógico Principal

A classe principal do MINDcraft é uma classe Agent que é instanciada sempre que Andy não está logado. O loop lógico principal em handleMessage é executado quando um jogador envia uma mensagem para Andy:

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

Tratamento de Respostas e Comandos

Andy pode retornar uma única resposta de conversação ou chamar iterativamente comandos de consulta ou ação. As consultas fornecem informações sobre o estado do mundo (por exemplo, *!inventory*, *!nearbyBlocks*), enquanto as ações causam comportamentos no jogo (por exemplo, *!followPlayer(name)*, *!collectBlocks(block)*). Todas as ações são executadas usando o método *execute* na classe Coder.

Geração de Código Personalizado

Para comportamentos complexos, como construir, Andy pode escrever código personalizado gerando o comando *newAction* para entrar no modo de codificação. Usando o método *generateCode* da classe Coder, Andy escreve código JavaScript personalizado com acesso ao Mineflayer e a uma biblioteca de funções úteis. O método inclui um loop para múltiplas tentativas de depuração.

Papel dos Exemplos de Contexto

Os exemplos de contexto são cruciais para a qualidade das respostas de Andy. Um modelo de embedding encontra exemplos semelhantes ao histórico atual e os adiciona ao contexto do LLM, garantindo que Andy use os comandos corretamente e consulte informações antes de concluir tarefas.

Como Executar o MINDcraft

Requisitos

  • Minecraft Java Edition (até v1.21.1, recomendado v1.20.4)
  • Node.js instalado (pelo menos v14)
  • Um dos seguintes: OpenAI API Key | Gemini API Key | Anthropic API Key | Replicate API Key | Hugging Face API Key | Groq API Key | Ollama instalado | Qwen API Key | Novita AI API Key |

Instalar e Executar

Certifique-se de ter os requisitos acima.

  1. Clone ou baixe este repositório (botão verde grande)
  2. Renomeie keys.example.json para keys.json e preencha suas chaves de API (você precisa apenas de uma). O modelo desejado é definido em andy.json ou outros perfis. Para outros modelos, consulte a tabela abaixo.
  3. No terminal/linha de comando, execute npm install a partir do diretório instalado
  4. Inicie um mundo do Minecraft e abra para LAN na porta localhost 55916
  5. Execute node main.js a partir do diretório instalado

Personalização

Você pode configurar os detalhes do projeto em settings.js. Veja o arquivo. Você pode configurar o nome do agente, modelo e prompts no perfil deles, como andy.json.

API Variável de Configuração Exemplo de Nome do Modelo
Novita AI NOVITA_API_KEY gryphe/mythomax-l2-13b

Como acessar a Chave de API da Novita AI

Passo 1: Acesse novita.ai e faça login

Você pode fazer login no Novita AI com Google ou GitHub, o que criará uma nova conta no seu primeiro login. Alternativamente, você pode se registrar usando seu endereço de e-mail.

Passo 2: Gerenciar a Chave de API LLM da Novita AI

A Novita AI protege o acesso à API através da autenticação Bearer, incluindo uma chave de API no cabeçalho da requisição, como “Authorization: Bearer {API Key}”. Para gerenciar suas chaves, navegue até “Key Management” nas configurações. Uma chave padrão é gerada automaticamente no seu primeiro login. Você pode criar chaves adicionais clicando em “+ Add New Key”.

página de gerenciamento de chaves da Novita AI

Passo 3: Adicionar Crédito

A Novita AI oferece aos novos usuários um voucher com alguns créditos para testar nossos produtos. Para adicionar mais crédito, visite Faturamento e Pagamentos e siga o guia em Métodos de Pagamento.

Conclusão

O MINDcraft representa um avanço significativo na pesquisa de IA dentro de ambientes de jogos. Ao aproveitar o poder dos LLMs, ele abre novas possibilidades para criatividade e interação no Minecraft. Conforme o projeto continua a evoluir, a participação da comunidade e o feedback desempenharão um papel crucial na definição de seus desenvolvimentos futuros. A natureza open-source do projeto incentiva a colaboração entre desenvolvedores e pesquisadores interessados em explorar a interseção entre IA e jogos.

Publicado originalmente em Novita AI

Novita AI é uma plataforma de nuvem de IA que oferece aos desenvolvedores uma maneira fácil de implantar modelos de IA usando nossa API simples, além de fornecer uma GPU em nuvem acessível e confiável para construir e escalar.

Posts relacionados