Qu’est-ce que LM Studio ?
LM Studio est un logiciel qui permet de faire tourner un grand nombre de LLM (Large Language Model) en utilisant les resources matériels de votre machine. Contrairement à certaines applications, LM Studio est doté d’une interface graphique simple de compréhension et d’utilisation. Cela vous permet de pouvoir interagir avec une IA de votre choix sans avoir besoin d’internet. Un grand nombre de LLM sont disponibles et certains sont open-source. On peut citer Mistral Nemo de Mistral AI, et ses dérivés Mathstral spécialisé dans les mathématiques et Codestral spécialisé dans les langages informatiques, mais également LLaMA de Meta et Hermes de NousResearch.
Quelques notions avant de commencer
Vous allez constater, au moment de choisir votre LLM, qu’il existe plusieurs options avec des tailles de fichiers différentes. Le premier choix va porter sur le nombre de paramètres. Vous verrez que certains LLM peuvent être disponibles avec un nombre B différents, soit le nombre de milliards de paramètres dont est capable l’intelligence artificielle.
Lors du choix d’un LLM pour un usage classique, le nombre de paramètres peut avoir une influence sur plusieurs aspects :
- Qualité des prédictions : Un modèle avec plus de paramètres peut généralement fournir des prédictions plus précises et plus cohérentes.
- Vitesse d’exécution : Un modèle avec moins de paramètres peut être plus rapide à exécuter, car il nécessite moins de calculs et de mémoire.
- Consommation de mémoire : Un modèle avec plus de paramètres nécessite généralement plus de mémoire pour être stocké et exécuté.

En général, il est souvent préférable de choisir un modèle avec un nombre de paramètres équilibré, qui offre une bonne qualité de prédictions sans consommer trop de ressources.
Le second choix va se porter sur la quantification (la lettre Q dans l’image ci-dessous), qu’il faut voir comme un indice de qualité des réponses que vous apportera l’IA, ainsi que la rapidité des réponses qui vous seront apportées.

Pour simplifier, plus le nombre est élevé, plus la réponse est précise mais nécessite plus de mémoire, de calcul et de temps pour analyser la demande et générer la réponse. Dans l’ordre décroissant de qualité de réponse, on a F32, puis F16, Q8, Q6, Q5, Q4… jusqu’à Q1.
Dernier point à aborder, le token. Dans le domaine de l’intelligence artificielle, le token est une unité de texte qui sert à traiter et générer du langage. Le découpage est assez variable car cela peut s’agir d’un mot entier, d’une partie de mot ou même d’une seule lettre. Les modèles d’IA, comme GPT, découpe les textes en tokens pour mieux comprendre et manipuler les données linguistiques. La tokenisation permet ainsi d’améliorer l’analyse et la génération de texte.
Vous verrez que le token est utilisé comme unité de traitement des informations par seconde (toks/s) ou pour un espace de stockage en RAM.
Points d’attention
⚠️ LM Studio étant en phase de développement, il est possible que certains passages de cet article ne soient plus valables à l’avenir.
Pour un fonctionnement optimal d’un LLM, il est conseillé de disposer d’un GPU récent. il est déconseillé d’utiliser les puces graphiques qui se trouvent intégrés dans les processeurs car leurs performances sont très mauvaises.
Je vous conseille de disposer au minimum de 32 Go de RAM, ou d’au moins 12 Go de VRAM. En effet, LM Studio va charger l’intégralité du LLM en mémoire RAM. Vous pourrez tout de même utiliser un LLM très grand, mais les performances seront très dégradées.

Installation et choix d’un premier LLM
LM Studio est disponible gratuitement sur Windows, MacOS (uniquement pour processeur Apple Silicon) et Linux.
Une fois l’installation réalisée, au premier démarrage, LM Studio vous invite à installer LLaMA comme premier LLM. Vous pouvez, si vous le souhaitez, refuser son installation.

Sur l’image ci-dessus, c’est la page principale, soit la partie chat. Dans le volet de gauche, de haut en bas, nous avons : le tchat, la partie « développer » où vous pouvez utiliser la partie API de LM Studio, « mes modèles » où se trouve la liste de vos différents LLM, et la partie paramétrage nommé « Discovery ».
La partie Discovery
On commence par la fin, c’est plutôt inhabituel mais c’est ici que vous allez pouvoir chercher et télécharger les LLM, ainsi que les différents moteurs d’exécutions. La page s’ouvre sur la recherche de modèle.

C’est ici que vous pouvez chercher un modèle, choisir la quantification et le télécharger.
Tous les modèles viennent du site Hugging Face.
LM Studio supporte depuis peu les LLM dit « image-text-to-text ». Cela signifie que c’est un LLM génératif mais qui a aussi la faculté d’analyser des images. Un petit symbole jaune représentant un oeil est visible sur ce type de LLM.
La seconde partie concerne l’exécution des LLM, c’est à dire sur quelle solution logicielle : CUDA pour exploiter votre GPU Nvidia, ou Vulkan pour l’ensemble des GPU du marché, etc… A vous de voir ce qui est le plus optimal pour vous. Généralement, les choix par défaut de LM Studio sont déjà optimisés pour votre machine.

Sur les Mac, il y a une deuxième option d’exécution nommée MLX.
Apple MLX est un framework dédié au Machine Learning et au Deep Learning, tirant parti de la mémoire unifiée pour éviter la duplication des données et opérant directement sur le processeur et le circuit graphique. Je vous recommande vivement, si vous êtes possesseur d’un Mac, d’utiliser les modèles s’exécutant sur MLX. Les gains de performances sont de l’ordre de 60 à 80 % supérieur par rapport à GGUF s’appuyant sur Metal.
Lors de la recherche d’un LLM, décochez GGUF pour rechercher les modèles tournant sur MLX.
La partie Hardware résume les caractéristiques techniques de votre machine.
Et tout en bas se trouve la partie paramétrages de l’application, avec le choix du langage, le thème, etc…
La partie Chat
Assez classiquement, cela ressemble à ChatGPT. Vous avez vos différentes conversations situées sur la gauche, où vous pouvez créer des dossiers si vous en avez besoin.
Au centre, votre conversation actuelle et les configurations avancées sur la droite.

Après avoir choisi le LLM que vous souhaitez utiliser, il y a une partie paramétrage.

Avant de commencer à converser, vous devez choisir quel LLM vous souhaitez exécuter, suivi d’une phase de paramétrage. Sans tout détailler, il y 3 options assez importantes.
La première concerne la longueur du contexte. Le contexte, c’est la conversation que vous avez avec le LLM, et quand vous définissez sa longueur, vous définissez en fait la capacité en mémoire RAM où sera stockée la conversation. Cela permettra à l’IA de ne pas devoir à chaque nouvelle question ré-analyser chaque question et réponse précédentes. Mais si vous arrivez à dépasser la capacité allouée au contexte, l’intelligence artificielle ré-analysera toute la conversation à chaque question car il ne sera plus en capacité de stocker les dernières questions et réponses. Deux options s’offrent à vous : soit re-charger le LLM avec un contexte plus grand, ou commencer une nouvelle conversation.
Les deux autres options concernent l’utilisation de votre processeur, c’est-à-dire le nombre de cœurs à utiliser, et la capacité que vous souhaitez utiliser sur votre puce graphique. Ces deux options ne sont pas disponibles si le LLM s’exécute à l’aide de MLX.
Une fois votre LLM chargé, sur le volet de droite, il y a une nouvelle partie de configuration avancée qui peut être changée à chaud.
Dans la partie Prompt System, vous pouvez préciser une information qui sera transmise à l’IA sans devoir le préciser à chacun de vos messages. Par exemple, vous pouvez demander : « Only answers in French » ou « Utilise uniquement les assertions d’AssertJ ». De plus, vous pouvez choisir la variabilité et la créativité des réponses en agissant sur le paramètre « Température ».

Lors de vos conversations avec les LLM, vous allez constater que, parfois, les réponses apportées ne sont pas cohérentes par rapport à votre demande. Vous avez un ensemble de boutons dédié pour la génération d’une nouvelle réponse, continuer la réponse (en cas de blocage), si vous la trouvez incomplète, la copier ou la supprimer.

La partie développeur
Cette partie permet d’activer l’API proposée par LM Studio. Cela vous permet de faire tourner LM Studio en tant que back-end et développer et/ou utiliser une IHM. De plus, il est possible de lancer LM Studio en headless, c’est à dire sans interface, et donc en arrière plan sur la machine.

Il y a 4 routes proposées :
GET /v1/models : cette route permet de connaitre les LLM disponibles. A savoir qu’une option, nommée « Just-in-Time Model Loading », permet de rendre disponible tous les LLM stockés sur la machine. Si cette option est désactivée, seuls les LLM déjà présents en RAM seront remontés via cette route.
POST /v1/chat/completions : cette route est celle où vous conversez avec un LLM. C’est cette route qui sera la plus utilisée sur les 4 proposées par l’application. Cette route est disponible en mode « Stream », c’est à dire que la réponse de l’IA est envoyée au fur et à mesure qu’il construit le texte.
POST /v1/completions : Cette route permet une autocomplétion du texte que vous envoyez.
POST /v1/embeddings : Vous fournissez un texte et une représentation du texte sous forme de vecteur d’intégration est renvoyée.
Mes modèles

C’est sur cette page que vous verrez l’ensemble des LLM stockés sur votre machine.
Conclusion
Que peut-on dire sur LM Studio ?
❌ En points négatifs :
- certains auront remarqué que l’on peut envoyer des documents à l’IA dans la partie Chat. Cette fonctionnalité est supportée pour l’instant que par les LLM dit « image-text-to-text ».
- Comme dit plus haut, il faut une machine qui soit récente et véloce. Ce type de machine est généralement assez coûteux.
✅ En points positifs, on peut noter :
- Bien que le logiciel soit en plein développement, il y a des mises à jour régulières, aussi bien du logiciel que des runtimes, ajoutant de nouvelles fonctionnalités et corrections de bugs. De plus, le logiciel est extrêmement stable malgré sa jeunesse.
- La confidentialité des données est un atout majeur de cette solution. En effet, toutes vos données sont traitées en local sur votre machine. Les LLM ne communiquent pas avec Internet car ils n’en ont pas besoin, et les différentes conversations que vous avez sur LM Studio sont cloisonnées. Donc si vous êtes amenés à travailler avec des données confidentielles, LM Studio est un bon choix.
- Vous pouvez tester plein de modèles, pour pouvoir les comparer, les tester sans limite et le tout gratuitement.