Recherche de site Web

Comment exécuter des dizaines de modèles d'IA sur votre Mac ou PC - aucun cloud tiers n'est nécessaire


L'exécution de LLM avancés comme Meta's Llama 3.1 sur votre système Mac, Windows ou Linux vous offre la confidentialité des données, la personnalisation et des économies de coûts. Voici comment procéder.

Avec les progrès rapides de l'intelligence artificielle (IA), l'exécution locale de modèles sophistiqués tels que Meta's Llama 3.1 sur des ordinateurs personnels devient de plus en plus populaire. L'exécution d'un LLM sur votre PC ou Mac local fournit un bac à sable pour l'expérimentation et le développement sans compromettre la confidentialité des données et permet une plus grande flexibilité dans l'utilisation du modèle.

Voici un guide rapide pour vous aider à configurer et à exécuter Llama 3.1 -- ainsi que de nombreux autres modèles tels que Google Gemma2 -- sur Mac, Linux et Windows. Je discuterai également des avantages des modèles hébergés en privé.

Pourquoi développer et tester différents modèles open source ?

Llama 3.1 8b fonctionnant sur Ollama/Open WebUI

Le développement et les tests sur divers modèles open source que vous hébergez et exécutez en privé offrent plusieurs avantages par rapport au recours uniquement aux grands modèles de langage (LLM) hébergés publiquement par des fournisseurs tels qu'OpenAI, Microsoft CoPilot, Meta AI et Google Gemini.

Confidentialité des données : les LLM hébergés publiquement nécessitent l'envoi de données sur Internet, ce qui peut soulever des problèmes de confidentialité et de sécurité. L'exécution de modèles localement garantit que les données sensibles restent sur votre propre matériel.

Personnalisation : les modèles open source permettent une plus grande personnalisation. Les développeurs peuvent affiner les modèles, ajuster les hyperparamètres et modifier l'architecture pour mieux répondre à des cas d'utilisation spécifiques.

Contrôle des coûts : les services d'IA basés sur le cloud peuvent être coûteux, en particulier pour les applications à grande échelle. L'hébergement local des modèles peut réduire considérablement l'utilisation continue des API et les dépenses de transfert de données.

Capacité hors ligne : les modèles locaux peuvent être utilisés sans connexion Internet, ce qui est essentiel pour les applications nécessitant une haute disponibilité ou dans les zones où l'accès à Internet n'est pas fiable.

Flexibilité et expérimentation : héberger vos propres modèles vous permet d'expérimenter différents algorithmes et configurations, conduisant à des solutions innovantes et à une compréhension plus approfondie des technologies d'IA.

Libre des politiques d'utilisation : l'exécution de LLM localement signifie que les politiques d'utilisation d'entreprises comme OpenAI, Microsoft, Meta et Google ne vous limitent pas. Vous pouvez utiliser les invites de votre choix et employer des LLM modifiés avec des restrictions levées, formés sur les données que ces services pourraient restreindre.

Introduction à Ollama

Ollama est une plate-forme open source polyvalente sous licence MIT conçue pour aider les développeurs et les chercheurs à exécuter et gérer facilement des modèles d'apprentissage automatique localement sur leur propre matériel. Il a été développé par une équipe de passionnés et d'ingénieurs de l'IA qui visent à fournir des outils garantissant la confidentialité des données, la flexibilité et le contrôle des applications d'IA. Ollama prend en charge divers modèles d'IA, ce qui en fait une ressource précieuse pour ceux qui cherchent à explorer et à utiliser les technologies d'IA sans recourir à des services cloud tiers.

Voici quelques exemples de modèles téléchargeables :

ModelParametersSizeDownload
Llama 3.18B4.7GBollama run llama3.1
Llama 3.170B40GBollama run llama3.1:70b
Llama 3.1405B231GBollama run llama3.1:405b
Phi 3 Mini3.8B2.3GBollama run phi3
Phi 3 Medium14B7.9GBollama run phi3:medium
Gemma 22B1.6GBollama run gemma2:2b
Gemma 29B5.5GBollama run gemma2
Gemma 227B16GBollama run gemma2:27b
Mistral7B4.1GBollama run mistral
Moondream 21.4B829MBollama run moondream
Neural Chat7B4.1GBollama run neural-chat
Starling7B4.1GBollama run starling-lm
Code Llama7B3.8GBollama run codellama
Llama 2 Uncensored7B3.8GBollama run llama2-uncensored
LLaVA7B4.5GBollama run llava
Solar10.7B6.1GBollama run solar

Selon la page GitHub d'Ollama, vous devez disposer d'au moins 8 Go de RAM disponible pour exécuter les modèles 7B, 16 Go pour exécuter les modèles 13B et 32 Go pour exécuter les modèles 33B.

Nos systèmes de tests

J'ai testé Ollama sur des Mac M1 Pro et M1 Ultra dotés de 32 Go et 64 Go de RAM, qui sont en retard de quelques générations sur les modèles actuels de MacBook Pro. Malgré cela, en utilisant uniquement l'assistance du processeur, nous avons exécuté avec succès des modèles de paramètres 8B-10B de Meta's Llama 3.1 et de Google's Gemma2, ainsi que diverses variantes spécifiquement entraînées sur le site Web d'Ollama, avec des performances meilleures qu'acceptables.

Cependant, j'ai rencontré des problèmes de performances importants avec la variante de paramètre 70B utilisant ces systèmes. Je suis convaincu que le matériel plus récent peut gérer ces modèles encore plus efficacement, en particulier avec les PC Linux équipés des GPU Nvidia et AMD.

Configuration étape par étape

Téléchargez et installez Ollama

  • Accédez à la page de téléchargement d'Ollama et téléchargez le programme d'installation adapté à votre système d'exploitation (MacOS, Linux, Windows).
  • Suivez les instructions d'installation fournies pour votre système d'exploitation spécifique.

Charger le paramètre 8B Modèle Llama 3.1

L'interface de ligne de commande Ollama avec fonctionnalité de chat.

  • Accédez à la page de la bibliothèque Llama 3.1 sur Ollama et copiez la commande permettant de charger le modèle 8B Llama 3.1 : ollama run llama3.1:8b
  • Ouvrez un terminal (MacOS, Linux) ou une invite de commande/PowerShell (Windows), collez la commande ci-dessus et appuyez sur .
  • Cette commande lancera l’exécution de Llama 3.1. Dans le terminal, vous pouvez ensuite émettre des requêtes de chat au modèle pour tester sa fonctionnalité.

Gérer les modèles installés

  • Liste des modèles : utilisez la commande ollama list pour voir tous les modèles installés sur votre système.
  • Supprimer des modèles : pour supprimer un modèle, utilisez la commande ollama rm . Par exemple, pour supprimer le paramètre 8B Llama 3.1, vous utiliserez ollama rm llama3.1:8b
  • Ajouter de nouveaux modèles : pour ajouter un nouveau modèle, parcourez la bibliothèque Ollama, puis utilisez la commande ollama run appropriée pour le charger dans votre système.

Ajout d'une interface Web

Installer le bureau Docker

  • Visitez la page de démarrage de Docker et téléchargez Docker Desktop pour votre système d'exploitation (MacOS, Linux, Windows).
  • Suivez les instructions d'installation correspondant à votre système d'exploitation spécifique et démarrez Docker après l'installation.

Installer l'interface Web ouverte

Ouvrez un terminal (MacOS, Linux) ou une invite de commande/PowerShell (Windows) et exécutez la commande suivante pour installer Open WebUI :
docker run -d -p 3000:8080 --add-host=host.docker .internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart toujours ghcr.io/open-webui/open-webui:main

Accédez à l'interface Web ouverte

Ouvrez WebUI exécuté sur Docker Desktop

  • Ouvrez Docker Desktop et accédez au tableau de bord.
  • Recherchez le conteneur Open WebUI et cliquez sur le lien sous Port pour ouvrir le WebUI dans votre navigateur.

Créez et connectez-vous à votre compte Open WebUI

Sélection d'un modèle dans Open WebUI

  • Si vous n'avez pas encore de compte Open WebUI, créez-en un.
  • Connectez-vous à votre compte via le WebUI.

Intégration avec les IDE et les API

Ollama peut être intégré à divers environnements de développement intégrés (IDE) à l'aide d'API, ce qui améliore le flux de travail de développement en offrant une interaction transparente avec les modèles d'IA. Un outil puissant pour cette intégration est Continue, un assistant de code open source qui exploite l'API Ollama.

Utilisation de Continue pour l'intégration de l'EDI

  • Assurez-vous qu’Ollama est opérationnel et accessible.
  • Suivez les instructions du blog Ollama Continue pour installer Continue dans votre IDE préféré.
  • Avec Continue et l'API Ollama, vous pouvez directement exploiter les fonctionnalités basées sur l'IA telles que les suggestions de code, les complétions et l'assistance au débogage au sein de votre environnement de développement.

Mise à l'échelle avec des GPU puissants

Pour les applications plus exigeantes, en particulier celles nécessitant des modèles plus grands comme les modèles Llama 3.1 à paramètres 70B et 405B, exécuter Ollama sur un système Linux équipé de GPU puissants est recommandé. Cette configuration peut gérer la charge de calcul et fournir des temps de réponse plus rapides, ce qui la rend adaptée aux applications d'IA au niveau de l'entreprise.

Pour utiliser des GPU pour exécuter Ollama, procédez comme suit :

Pour les GPU NVIDIA :

  • Suivez les instructions de la documentation NVIDIA CUDA pour installer CUDA et cuDNN sur votre système.
  • Après avoir installé CUDA et cuDNN, assurez-vous que votre environnement est correctement configuré, puis exécutez la commande suivante :
    ollama run llama3.1:70b --use-gpu

Pour les GPU AMD :

  • Suivez les instructions de la documentation ROCm pour installer ROCm sur votre système.
  • Après avoir installé ROCm, assurez-vous que votre environnement est correctement configuré, puis exécutez la commande suivante :
    ollama run llama3.1:70b --use-gpu

Ces commandes garantissent qu'Ollama peut utiliser les GPU disponibles sur votre système, fournissant ainsi la puissance de calcul nécessaire à l'exécution de grands modèles. Pour des instructions plus détaillées, reportez-vous à la documentation du GPU Ollama.

Exécuter Ollama dans un conteneur Docker

Vous pouvez toujours tirer parti de la prise en charge du GPU si vous préférez exécuter Ollama dans un conteneur. Veuillez noter que ces instructions s'appliquent uniquement à Linux pour le moment.

Pour les GPU NVIDIA avec Docker

  • Comme indiqué dans la section précédente, installez CUDA et cuDNN sur votre système. Suivez ensuite les instructions de la documentation NVIDIA Docker pour installer NVIDIA Container Engine sur votre système.
  • Utilisez la commande suivante pour exécuter Ollama avec la prise en charge du GPU NVIDIA dans un conteneur Docker :
    docker run --gpus all -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v ollama:/app/backend/data --name ollama --restart toujours ollama/ollama:latest

Pour les GPU AMD avec Docker

  • Suivez les instructions de la documentation ROCm pour installer ROCm sur votre système.
  • Utilisez la commande suivante pour exécuter Ollama avec la prise en charge de ROCm dans un conteneur Docker :
    docker run -d --device /dev/kfd --device /dev/dri -v ollama:/root/.ollama -p 11434:11434 --nom ollama ollama/ollama:rocm

Ces commandes garantissent que le conteneur Docker peut accéder à tous les GPU disponibles sur votre système, fournissant ainsi la puissance de calcul nécessaire pour exécuter de grands modèles. Pour plus d'informations sur l'utilisation des GPU avec Docker et Ollama, reportez-vous à la page Docker sur l'utilisation des GPU avec Ollama.

Conclusion

L'exécution de modèles d'IA tels que Meta's Llama 3.1 localement sur votre Mac ou PC offre de nombreux avantages, notamment une meilleure confidentialité des données, une plus grande personnalisation et des économies de coûts. En suivant les étapes de ce guide, vous pouvez utiliser des modèles d'IA avancés et tester différentes configurations pour répondre à vos besoins. Que vous soyez développeur, chercheur ou passionné d'IA, la possibilité d'exécuter des modèles complexes localement ouvre de nombreuses opportunités.

Articles connexes