Pular para o conteúdo principal

Visão geral

Runtime Local LLM Documentation

Runtime Local LLM é um plugin que executa modelos de linguagem grandes inteiramente no dispositivo usando llama.cpp, sem necessidade de conexão com a internet em tempo de execução. Ele suporta arquivos de modelo GGUF e fornece uma API completa do Blueprint para carregar modelos, enviar mensagens e receber respostas token por token, tudo em uma thread de fundo com callbacks da thread do jogo.

O plugin suporta Windows, Mac, Linux, Android (incluindo Meta Quest e outras plataformas baseadas em Android) e iOS.

Principais Funcionalidades

  • Inferência offline completa: Sem serviços em nuvem ou chaves de API em tempo de execução
  • Suporte a modelos GGUF: Carregue qualquer modelo no formato GGUF (Llama, Mistral, Phi, Gemma, Qwen, etc.)
  • llama.cpp atualizado: Atualizado regularmente na Fab para acompanhar os lançamentos do llama.cpp, garantindo que os formatos mais recentes de modelos GGUF sejam sempre suportados
  • Aceleração por GPU: Usa Vulkan no Windows e Linux, Metal no Mac e iOS, e CPU + intrínsecas no Android e Meta Quest
  • Múltiplos métodos de carregamento de modelos:
    • Carregar a partir de um caminho de arquivo local
    • Carregar por nome do modelo (seleção em dropdown nos Blueprints)
    • Baixar a partir de URL e carregar automaticamente
    • Apenas download para pré-carregamento dos modelos
  • Transmissão token a token: Receba cada token conforme é gerado para exibição em tempo real
  • Nós de Blueprint assíncronos: Nós com delegados de saída para carregamento, envio de mensagens e download
  • Parâmetros de inferência configuráveis: Temperatura, Top-P, Top-K, penalidade de repetição, descarregamento de camadas na GPU, tamanho do contexto, seed, contagem de threads e prompt do sistema
  • Gerenciamento de conversas: Conversas multivoltas com reinicialização de contexto, salvar/carregar no disco, instantâneos em memória e sumarização automática para chats de longa duração
  • Gerenciador de modelos do Editor: Navegue, baixe, importe, exclua e teste modelos diretamente nas configurações do projeto
  • Empacotamento multiplataforma: Os modelos são enviados junto com seu projeto via staging NonUFS

Como Funciona

  1. Gerenciar modelos no editor: Use o painel de configurações do plugin para navegar em um catálogo de modelos pré-definidos, baixá-los ou importar seus próprios arquivos GGUF
  2. Carregar um modelo em tempo de execução: Chame uma das funções de carregamento (por arquivo, por nome, por URL ou por metadados) com seus parâmetros de inferência
  3. Enviar mensagens: Passe uma mensagem do usuário para a instância do LLM; os tokens retornam em fluxo através de delegados conforme o modelo gera uma resposta
  4. Usar a resposta: Exiba os tokens em uma interface de chat, conduza diálogos de NPCs, gere conteúdo dinâmico ou alimente outros sistemas

Todas as execuções de inferência ocorrem em uma thread dedicada em segundo plano. Os callbacks (geração de tokens, conclusão, erros) são disparados na thread do jogo, permitindo que você atualize com segurança a interface do usuário e o estado do jogo a partir deles.

Casos de uso comuns

  • Chatbots e assistentes no jogo: Perguntas e respostas, sistemas de ajuda, tutoriais dinâmicos
  • Diálogo de NPCs: NPCs conversacionais com memória persistente por personagem usando instantâneos de conversa
  • Sistemas de roleplay e narrativa de longa duração: Resumo automático mantém conversas de várias horas dentro dos limites de contexto sem perder fatos-chave
  • Conteúdo procedural: Gerar descrições de missões, lore de itens e árvores de diálogo sob demanda
  • Aplicações offline-first: Qualquer coisa que precise de capacidades de LLM sem conexão de rede

Armazenamento e Empacotamento de Modelos

Os modelos são armazenados como arquivos .gguf no diretório Content/RuntimeLocalLLM/Models do seu projeto. O plugin configura automaticamente Diretórios Não de Ativos Adicionais para Copiar (DirectoriesToAlwaysStageAsNonUFS) para que os arquivos dos modelos sejam incluídos no seu projeto empacotado e permaneçam acessíveis por meio de E/S de arquivo padrão em tempo de execução.

Cada modelo também possui um arquivo sidecar .json que armazena seus metadados (nome de exibição, família, variante, descrição e quantidade de parâmetros).

Modelos Suportados

O plugin funciona com qualquer modelo no formato GGUF. O editor fornece um catálogo de modelos pré-definidos populares para download com um clique, e você pode importar qualquer arquivo GGUF personalizado. As famílias de modelos comuns incluem:

  • Llama (Meta) — 1B, 3B, 8B e maiores
  • Mistral / Mixtral — 7B e maiores
  • Phi (Microsoft) — 2B, 3B, 4B
  • Gemma (Google) — 2B, 7B
  • Qwen (Alibaba) — 1.5B, 7B e maiores
  • TinyLlama — 1.1B
  • E muitos outros modelos da comunidade

Quantização

Os modelos vêm em vários níveis de quantização que equilibram qualidade com tamanho e velocidade:

QuantizaçãoQualidadeSizeVelocidade
Q2_KBaixaMenorMais rápida
Q4_K_MGoodMédiaFast
Q5_K_MMelhorMaiorModerada
Q8_0HighGrandeMais lenta
F16 / F32Mais altaMaiorMais lenta

Para dispositivos móveis e VR, são recomendadas quantizações menores (Q2_K a Q4_K_M) com modelos compactos (1B–3B parâmetros). Para desktop, você pode usar modelos maiores e níveis de quantização mais altos, dependendo da RAM e dos recursos de CPU/GPU disponíveis.

Recursos Adicionais

Join our Discord
online · support