Aller au contenu principal

Aperçu

Runtime Local LLM Documentation

Runtime Local LLM est un plugin qui exécute des modèles de langage volumineux entièrement sur l'appareil en utilisant llama.cpp, sans aucune connexion Internet requise lors de l'exécution. Il prend en charge les fichiers de modèle GGUF et fournit une API Blueprint complète pour charger des modèles, envoyer des messages et recevoir des réponses token par token, le tout sur un thread d'arrière-plan avec des rappels du thread de jeu.

Le plugin prend en charge Windows, Mac, Linux, Android (y compris Meta Quest et d'autres plateformes basées sur Android) et iOS.

Fonctionnalités clés

  • Inférence hors ligne complète : Aucun service cloud ni clé d'API au moment de l'exécution
  • Prise en charge des modèles GGUF : Chargez n'importe quel modèle au format GGUF (Llama, Mistral, Phi, Gemma, Qwen, etc.)
  • llama.cpp à jour : Mis à jour régulièrement sur Fab pour suivre les versions de llama.cpp, afin que les derniers formats de modèles GGUF soient toujours pris en charge
  • Accélération GPU : Utilise Vulkan sur Windows et Linux, Metal sur Mac et iOS, ainsi que CPU + intrinsèques sur Android et Meta Quest
  • Plusieurs méthodes de chargement de modèles :
    • Charger depuis un chemin de fichier local
    • Charger par nom de modèle (sélection déroulante dans les Blueprints)
    • Télécharger depuis une URL et charger automatiquement
    • Téléchargement uniquement pour la mise en cache préalable des modèles
  • Flux de jetons token par token : Recevoir chaque jeton au fur et à mesure de sa génération pour un affichage en temps réel
  • Nœuds Blueprint asynchrones : Nœuds avec des délégués de sortie pour le chargement, l'envoi de messages et le téléchargement
  • Paramètres d'inférence configurables : Température, Top-P, Top-K, pénalité de répétition, déschargement des couches GPU, taille du contexte, graine, nombre de threads et prompt système
  • Gestion des conversations : Conversations multi-tours avec réinitialisation du contexte, sauvegarde/chargement sur disque, instantanés en mémoire et résumé automatique pour les chats de longue durée
  • Gestionnaire de modèles dans l'éditeur : Parcourir, télécharger, importer, supprimer et tester les modèles directement dans les paramètres du projet
  • Emballage multiplateforme : Les modèles sont livrés avec votre projet via le staging NonUFS

Comment cela fonctionne

  1. Gérer les modèles dans l'éditeur : Utilisez le panneau de paramètres du plugin pour parcourir un catalogue de modèles prédéfinis, les télécharger ou importer vos propres fichiers GGUF
  2. Charger un modèle à l'exécution : Appelez l'une des fonctions de chargement (par fichier, par nom, par URL ou par métadonnées) avec vos paramètres d'inférence
  3. Envoyer des messages : Transmettez un message utilisateur à l'instance LLM ; les tokens sont diffusés via des délégations au fur et à mesure que le modèle génère une réponse
  4. Utiliser la réponse : Affichez les tokens dans une interface de chat, pilotez les dialogues des PNJ, générez du contenu dynamique ou alimentez d'autres systèmes

Toutes les exécutions d'inférence s'exécutent sur un fil de fond dédié. Les rappels (génération de jetons, achèvement, erreurs) se déclenchent sur le fil du jeu, vous permettant ainsi de mettre à jour en toute sécurité l'interface utilisateur et l'état du jeu depuis ceux-ci.

Cas d'utilisation courants

  • Chatbots et assistants en jeu : FAQ, systèmes d'aide, tutoriels dynamiques
  • Dialogues des PNJ : PNJ conversationnels avec une mémoire persistante par personnage utilisant des instantanés de conversation
  • Systèmes de jeu de rôle et narratifs à long terme : La synthèse automatique maintient les conversations de plusieurs heures dans les limites du contexte sans perdre les faits clés
  • Contenu procédural : Générer des descriptions de quêtes, la lore des objets et des arbres de dialogue à la volée
  • Applications hors ligne : Tout ce qui nécessite des capacités LLM sans connexion réseau

Stockage et emballage des modèles

Les modèles sont stockés sous forme de fichiers .gguf dans le répertoire Content/RuntimeLocalLLM/Models de votre projet. Le plugin configure automatiquement Répertoires supplémentaires non-actifs à copier (DirectoriesToAlwaysStageAsNonUFS) afin que les fichiers de modèles soient inclus avec votre projet packagé et restent accessibles via une E/S de fichier standard au moment de l'exécution.

Chaque modèle possède également un fichier latéral .json qui stocke ses métadonnées (nom d'affichage, famille, variante, description, nombre de paramètres).

Modèles pris en charge

Le plugin fonctionne avec tout modèle au format GGUF. L'éditeur propose un catalogue de modèles pré-définis populaires pour un téléchargement en un clic, et vous pouvez importer n'importe quel fichier GGUF personnalisé. Les familles de modèles courantes incluent :

  • Llama (Meta) — 1B, 3B, 8B et plus
  • Mistral / Mixtral — 7B et plus
  • Phi (Microsoft) — 2B, 3B, 4B
  • Gemma (Google) — 2B, 7B
  • Qwen (Alibaba) — 1.5B, 7B et plus
  • TinyLlama — 1.1B
  • Et bien d'autres modèles communautaires

Quantification

Les modèles existent à différents niveaux de quantification qui font un compromis entre qualité, taille et vitesse :

QuantificationQualitéSizeVitesse
Q2_KFaiblePlus petitPlus rapide
Q4_K_MGoodMoyenneFast
Q5_K_MMeilleurePlus grandModérée
Q8_0HighGrandPlus lent
F16 / F32La plus élevéeLe plus grandLe plus lent

Pour les appareils mobiles et VR, des quantifications plus petites (Q2_K à Q4_K_M) avec des modèles compacts (1B–3B paramètres) sont recommandées. Pour le bureau, vous pouvez utiliser des modèles plus grands et des niveaux de quantification plus élevés en fonction de la RAM disponible et des ressources CPU/GPU.

Ressources supplémentaires

Join our Discord
online · support