Comment télécharger et installer Llama 2 localement



Meta a rendu public Llama 2 durant l’été 2023. Cette nouvelle itération de Llama a bénéficié d’un entraînement amélioré avec 40 % de tokens supplémentaires par rapport au modèle Llama initial. Elle double aussi la longueur de son contexte et surpasse largement les autres modèles open source disponibles. Pour une prise en main rapide et aisée de Llama 2, l’utilisation d’une API via une plateforme en ligne est envisageable. Cependant, afin d’obtenir la meilleure expérience possible, il est recommandé de procéder à l’installation et au chargement de Llama 2 directement sur votre machine.

Dans cette optique, nous avons élaboré un guide pas à pas expliquant comment utiliser Text-Generation-WebUI pour charger localement un modèle LLM Llama 2 quantifié sur votre ordinateur.

Pourquoi opter pour une installation locale de Llama 2 ?

Les raisons qui poussent à exécuter Llama 2 en local sont multiples. Certains privilégient la confidentialité, d’autres la personnalisation, et d’autres encore le fonctionnement hors ligne. Si vos projets impliquent la recherche, le peaufinage ou l’intégration de Llama 2, l’accès via une API pourrait ne pas être optimal. L’avantage d’exécuter un LLM directement sur votre PC réside dans la réduction de la dépendance aux outils d’IA tiers et la possibilité d’exploiter l’IA n’importe quand et n’importe où, sans craindre une potentielle fuite de données sensibles vers des entreprises ou autres entités.

Ceci étant dit, commençons ce guide d’installation locale de Llama 2.

Pour simplifier les opérations, nous allons utiliser un programme d’installation en un clic pour Text-Generation-WebUI, l’outil qui permet de charger Llama 2 via une interface graphique. Toutefois, ce programme nécessite au préalable le téléchargement de l’outil de génération Visual Studio 2019 et l’installation de ses ressources.

Télécharger : Visual Studio 2019 (Gratuit)

  • Téléchargez la version Community du logiciel.
  • Installez Visual Studio 2019 puis lancez le. Dans l’interface, cochez la case « Développement de bureau avec C++ » et cliquez sur Installer.

Une fois le développement de bureau avec C++ installé, il est temps de télécharger le programme d’installation en un clic de Text-Generation-WebUI.

Étape 2 : Installation de Text-Generation-WebUI

Le programme d’installation en un clic de Text-Generation-WebUI est un script qui crée automatiquement les dossiers nécessaires, configure l’environnement Conda et installe les dépendances requises pour l’exécution d’un modèle d’IA.

Pour installer le script, téléchargez le programme en un clic en cliquant sur « Code » puis sur « Télécharger ZIP ».

Télécharger : Programme d’installation de Text-Generation-WebUI (Gratuit)

  • Une fois téléchargé, décompressez le fichier ZIP à l’emplacement de votre choix et ouvrez le dossier décompressé.
  • Dans ce dossier, recherchez le script de démarrage correspondant à votre système d’exploitation. Lancez ce script en double-cliquant dessus.
    • Pour Windows, sélectionnez le fichier batch « start_windows ».
    • Pour macOS, choisissez le script shell « start_macos ».
    • Pour Linux, sélectionnez le script shell « start_linux ».
  • Votre antivirus peut émettre une alerte, ce qui est normal. Il s’agit d’un faux positif lié à l’exécution d’un fichier batch ou d’un script. Cliquez sur « Exécuter » malgré l’avertissement.
  • Un terminal va s’ouvrir et initialiser la configuration. À un moment donné, le processus s’arrêtera pour vous demander quel GPU vous utilisez. Indiquez le type de GPU installé sur votre ordinateur et appuyez sur Entrée. Si vous n’avez pas de carte graphique dédiée, choisissez « Aucun (Je souhaite exécuter des modèles en mode CPU) ». Veuillez noter que l’exécution en mode CPU est bien plus lente qu’avec un GPU dédié.
  • Une fois la configuration terminée, vous pouvez lancer Text-Generation-WebUI en local. Ouvrez votre navigateur web et saisissez l’adresse IP indiquée dans l’URL.
  • L’interface web est maintenant prête à l’emploi.
  • Cependant, le programme n’est qu’un chargeur de modèles. Il faut donc télécharger Llama 2 pour que le chargeur puisse être utilisé.

    Étape 3 : Téléchargement du modèle Llama 2

    Le choix de l’itération de Llama 2 dépend de plusieurs facteurs : les paramètres, la quantification, l’optimisation matérielle, la taille et l’utilisation. Ces informations sont généralement indiquées dans le nom du modèle.

    • Paramètres : Nombre de paramètres utilisés pour l’entraînement du modèle. Plus il y a de paramètres, plus le modèle est performant, mais au détriment des performances.
    • Utilisation : Le modèle peut être standard ou dédié au chat. Un modèle de chat est optimisé pour une utilisation en tant que chatbot tel que ChatGPT, tandis qu’un modèle standard est un modèle brut.
    • Optimisation matérielle : Indique le matériel sur lequel le modèle fonctionne le mieux. GPTQ signifie que le modèle est optimisé pour un GPU dédié, tandis que GGML est optimisé pour un CPU.
    • Quantification : Définit la précision des poids et des activations dans un modèle. Pour l’inférence, une précision de q4 est généralement optimale.
    • Taille : Fait référence à la taille du modèle.

    Notez que certains modèles peuvent avoir une nomenclature différente, voire ne pas afficher les mêmes informations. Toutefois, cette convention de nommage est fréquente dans la bibliothèque de modèles HuggingFace et il est important de la comprendre.

    Dans cet exemple, le modèle est un modèle Llama 2 de taille moyenne, entraîné sur 13 milliards de paramètres, optimisé pour l’inférence de chat avec un processeur dédié.

    Si vous utilisez un GPU dédié, optez pour un modèle GPTQ ; si vous utilisez un CPU, choisissez GGML. Pour une utilisation de type chatbot comme ChatGPT, sélectionnez un modèle de chat. Pour expérimenter le modèle avec toutes ses capacités, choisissez le modèle standard. En ce qui concerne le nombre de paramètres, sachez que plus il y en a, plus les résultats seront précis, mais les performances seront réduites. Je vous recommande de commencer avec un modèle 7B. Pour la quantification, optez pour q4, qui est idéale pour l’inférence.

    Télécharger : GGML (Gratuit)

    Télécharger : GPTQ (Gratuit)

    Une fois que vous savez quelle itération de Llama 2 correspond à vos besoins, téléchargez le modèle souhaité.

    Dans mon cas, j’utilise un ultrabook, je vais donc opter pour un modèle GGML affiné pour le chat : « llama-2-7b-chat-ggmlv3.q4_K_S.bin ».

    Une fois le téléchargement terminé, placez le fichier du modèle dans le dossier « text-generation-webui-main > models ».

    Le modèle est téléchargé et placé dans le bon dossier, il est donc temps de configurer le chargeur de modèles.

    Étape 4 : Configuration de Text-Generation-WebUI

    Passons à la phase de configuration.

    • Ouvrez Text-Generation-WebUI en exécutant le fichier « start_(votre système d’exploitation) » (voir les étapes précédentes ci-dessus).
    • Dans les onglets en haut de l’interface, cliquez sur « Modèle ». Dans le menu déroulant du modèle, cliquez sur « Actualiser » et sélectionnez votre modèle.
    • Ensuite, dans le menu déroulant du chargeur de modèles, choisissez « AutoGPTQ » si vous utilisez un modèle GTPQ ou « ctransformers » si vous utilisez un modèle GGML. Enfin, cliquez sur « Charger » pour charger votre modèle.
    • Pour utiliser le modèle, ouvrez l’onglet « Chat » et commencez à le tester.

    Félicitations, vous avez réussi à charger Llama2 sur votre ordinateur en local !

    Explorez d’autres LLM

    Maintenant que vous savez comment exécuter Llama 2 directement sur votre ordinateur avec Text-Generation-WebUI, vous devriez également pouvoir faire fonctionner d’autres LLM. Gardez à l’esprit les conventions de nommage des modèles et que seules les versions quantifiées des modèles (précision q4 en général) peuvent être chargées sur des PC classiques. De nombreux LLM quantifiés sont disponibles sur HuggingFace. Si vous souhaitez explorer d’autres modèles, recherchez « TheBloke » dans la bibliothèque de modèles de HuggingFace. Vous y trouverez une multitude de modèles disponibles.