Comment déployer votre LLM privé sur votre propre serveur ?

Pourquoi c'est important:

  • Tu peux créer, fine-tuner et déployer des modèles LOCALEMENT sur ton hébergement
  • Tu n'es plus dépendant des API cloud pour les gros modèles
  • La data est maitrisée et reste chez toi, pas dans les serveurs d'une Big Tech
  • L'IA devient vraiment personnelle et non standardisée
  • Crée votre propre interface avec Open WebUI

D'abord quelques notions:

C'est quoi un LLM ?

Un LLM, ou Large Language Model (modèle de langage de grande taille), est une forme avancée d'intelligence artificielle conçue pour comprendre et générer du texte de manière autonome.
Ces modèles sont entraînés sur de vastes quantités de données textuelles pour apprendre les structures et les significations du langage humain.
 
Ils peuvent répondre à des questions, traduire des langues, résumer des textes, et même générer des histoires, des articles ou du code pour les développeurs.

Les LLM peuvent être propriétaire et opensource et se multiplient de facon exponentiels.
Vous pourrez les selectionner en fonction de votre besoin, de vos affinités, de leur pertinance ou du pays qui le produit.

 

C'est quoi une IA ou AI en anglais ? 

L'Intelligence Artificielle ou IA est dans toutes les bouches actuellement et ce n'est que le début.
Disons que c'est la capacité d'une machine à répondre de manière autonome et logique à une demande particulière.

Vaste débat mais nous sommes encore dans une phase assez mécanique où les réponses nous semblent peut imaginative, mais ça se développe au fur et à mesure des versions de LLM qui apparaissent et bientot nous parlerons de conscience artificielle pour caractèriser une intelligence aboutie.

 

C'est quoi un Chatbot ? 

Un Chatbot est un programme informatique qui simule une conversation.
Il vient s'interfacer avec le LLM de votre choix pour plus de pertinance et mieux agencer les réponses attentues
Nous utilisons Open Webui car il est à ce jour celui qui offre le plus de fonctionnalité.

 

A quoi correspond une IA privée ou un LLM privé ? 

Avec le développement des IA comme OpenAI, Deepseek, ou Gemini pour n'en citer que quelques uns, il devient primordial de maitriser la données gérer par les moteurs LLM.

Les principes mêmes des Chatbot publiques, est d'exploiter vos données pour renforcer les modèles et surtout pour vous utiliser comme produit.

Lorsque vous déployez une IA en local ou sur une machine privée, vous avez la possibilité de cloisonner votre moteur IA et vous gardez la maitrise des données utilisés.

Votre LLM sera toujours capable de créativité ou de vous informez mais il pourra être utilisé de manière fiable et sécurisé avec vos propres données personnelles.

C'est sans doute une des meilleurs options dans le cadre d'une utilisation en entreprise ou dans une administration public.

 

 LLM privé Mistral AI

 

Pour la mise en place de notre IA, nous utilisons Ollama qui est un gestionnaire d'IA qui permet à la fois d'installer les prérequis au déploiement d'un LLM mais aussi d'administrer vos LLM

Si je demande à Mistral AI, ça donne:

Ollama est une plateforme permettant de déployer et d'utiliser des modèles de langage de grande taille (LLM) localement. Elle facilite l'intégration de l'IA dans des applications via une API REST et offre divers plugins pour des logiciels comme Obsidian et VSCode.

Ollama permet d'exploiter la puissance de calcul locale, améliorant ainsi les performances et réduisant les coûts liés aux services cloud.

 

Partant du principe que vos environnements sont préconfigurés et dispose d'un GPU associé, nous ne revenons pas sur l'installation de votre serveur, le notre à les configurations suivantes:

  • Debian 12
  • 90 Go de Ram, 16 Coeurs CPU
  • 400 Go de disque
  • 2 cartes graphiques Tesla V100

 

Quoi il y a une commande magique ? 
Oui

curl -fsSL https://ollama.com/install.sh | sh

Le script fournit par Ollama est plutôt bien fait et installe aussi bien les pilotes Nvidia/AMD pour votre carte graphique, que tout l'environnement pour faire tourner vos LLM.

Et il ne plante pas, ce qui est assez rare pour le signaler.

On valide l'installation

ollama -v

 

Il ne reste plus qu'a déployer votre LLM favori, dans notre cas Mistral AI

ollama run mistral

 

Une fois terminé, vous arrivez sur un prompt qui permet de communiquer avec le LLM

>>> Send a message (/? for help)
ollama run mistral


Soit vous interragissez avec lui, soit vous pouvez le quitter sans souci, il n'y a pas d'impact

/bye

 

Il existe un grand nombre de modèles, dont voici ceux directement accessible via ollama run
https://ollama.com/library


Ce n'est pas restrictif, vous pouvez déployer d'autres LLM non listé en les téléchargeant vous même, par exemple pour déployer le LLM Lucie voici un tuto:
https://huggingface.co/OpenLLM-France/Lucie-7B-Instruct-v1.1

 

 LLM privé Mistral AI

 

Comment requêter le modèle LLM ?

Maintenant que vous savez installer vos LLM, il faut pouvoir les interroger.

Pour le requêter, vous pouvez tout simplement utiliser la commande suivante :

ollama run mistral 'raconte moi une blague'


Il est possible d'intéroger le modèle à travers son Webservice exposé sur le port 11434 de la machine :

curl -X POST https://localhost:11434/api/generate -d '{
  "model": "mistral",
  "prompt":"Comment poussent les carottes  ? "
}'
 

Cette API REST est un bon moyen d'intégrer le service dans votre écosystème.

Le port par défaut d'Ollama est le 11434 sur le localhost, il est possible de spécifier l'interface réseau d'écoute en définissant la variable système : OLLAMA_HOST

OLLAMA_HOST=0.0.0.0 ollama serve
 

Sous Linux, on modifie directement dans systemd pour que le paramètre soit pris en compte au démarrage

echo 'Environment="OLLAMA_HOST=0.0.0.0:12600"' >>/etc/systemd/system/ollama.service.d/environment.conf

Attention tout fois à ne pas exposer votre service sans restriction, sinon n'importe qui exploitera vos LLMs

 

Ollama est un outil puissant qui permet de facilement déployer de nouveaux modèles LLMs.


Seul la puissance de votre machine pourra vous limitez.
La consommation des ressources est un vrai sujet d'inquiétude, car les modèles sont souvent gourmands en ressource système.
 
Pour une surveillance en temps réel, je vous conseille htop et surtout nvtop
apt install nvtop
 
 
 LLM privé Mistral AI

 

Cet outil d'analyse de votre carte graphique et donc de l'utilisation de votre GPU va permettre de mieux comprendre l'utilisation des ressources. 

Et pour plus d'informations, contactez-nous sur contact@greenhoster.fr ou sur notre page de contact.