Image par auteur
L’exécution locale de grands modèles de langage (LLM) peut s’avérer très utile, que vous souhaitiez jouer avec les LLM ou créer des applications plus puissantes en les utilisant. Mais configurer votre environnement de travail et faire fonctionner les LLM sur votre machine n’est pas anodin.
Alors, comment exécuter des LLM localement sans aucun problème ? Entre Ollama, une plate-forme qui facilite le développement local avec de grands modèles de langage open source. Avec Ollama, tout ce dont vous avez besoin pour exécuter un LLM (les poids du modèle et toute la configuration) est regroupé dans un seul fichier modèle. Pensez Docker pour les LLM.
Dans ce didacticiel, nous verrons comment démarrer avec Ollama pour exécuter de grands modèles de langage localement. Alors passons directement aux étapes !
Étape 1 : Téléchargez Ollama pour commencer
Dans un premier temps, vous devez télécharger Ollama sur votre ordinateur. Ollama est pris en charge sur toutes les principales plates-formes : MacOS, Windows et Linux.
Pour télécharger Ollama, vous pouvez soit visiter le dépôt officiel GitHub et suivez les liens de téléchargement à partir de là. Ou visitez le site officiel et téléchargez le programme d’installation si vous êtes sur un Mac ou une machine Windows.
Je suis sous Linux : distribution Ubuntu. Donc, si vous êtes un utilisateur Linux comme moi, vous pouvez exécuter la commande suivante pour exécuter le script d’installation :
$ curl -fsSL https://ollama.com/install.sh | sh
Le processus d’installation prend généralement quelques minutes. Pendant le processus d’installation, tous les GPU NVIDIA/AMD seront automatiquement détectés. Assurez-vous que les pilotes sont installés. Le mode CPU uniquement fonctionne également très bien. Mais cela pourrait être beaucoup plus lent.
Étape 2 : Obtenez le modèle
Ensuite, vous pourrez visiter le bibliothèque de modèles pour vérifier la liste de toutes les familles de modèles actuellement prises en charge. Le modèle téléchargé par défaut est celui avec le latest
étiqueter. Sur la page de chaque modèle, vous pouvez obtenir plus d’informations telles que la taille et la quantification utilisée.
Vous pouvez effectuer une recherche dans la liste des balises pour localiser le modèle que vous souhaitez exécuter. Pour chaque famille de modèles, il existe généralement des modèles de base de différentes tailles et variantes adaptées aux instructions. Je souhaite exécuter le modèle Gemma 2B à partir du Famille Gemma de modèles légers de Google DeepMind.
Vous pouvez exécuter le modèle en utilisant le ollama run
commande pour extraire et commencer à interagir directement avec le modèle. Cependant, vous pouvez également d’abord installer le modèle sur votre machine, puis l’exécuter. Ceci est très similaire à la façon dont vous travaillez avec les images Docker.
Pour Gemma 2B, l’exécution de la commande pull suivante télécharge le modèle sur votre machine :
Le modèle est de taille 1,7B et le tirage devrait prendre une minute ou deux :
Étape 3 : Exécuter le modèle
Exécutez le modèle en utilisant le ollama run
commande comme indiqué :
Cela lancera un Ollama REPL dans lequel vous pourrez interagir avec le modèle Gemma 2B. Voici un exemple :
Pour une simple question sur la bibliothèque standard Python, la réponse semble plutôt correcte. Et comprend les modules les plus fréquemment utilisés.
Étape 4 : Personnaliser le comportement du modèle avec les invites du système
Vous pouvez personnaliser les LLM en définissant des invites système pour un comportement spécifique souhaité, comme suit :
- Définissez l’invite système pour le comportement souhaité.
- Enregistrez le modèle en lui donnant un nom.
- Quittez le REPL et exécutez le modèle que vous venez de créer.
Supposons que vous souhaitiez que le modèle explique toujours les concepts ou réponde aux questions dans un anglais simple et avec le moins de jargon technique possible. Voici comment procéder :
>>> /set system For all questions asked answer in plain English avoiding technical jargon as much as possible
Set system message.
>>> /save ipe
Created new model 'ipe'
>>> /bye
Exécutez maintenant le modèle que vous venez de créer :
Voici un exemple :
Étape 5 : Utiliser Ollama avec Python
Exécuter le client de ligne de commande Ollama et interagir avec les LLM localement sur Ollama REPL est un bon début. Mais souvent, vous souhaiterez utiliser des LLM dans vos applications. Vous pouvez exécuter Ollama en tant que serveur sur votre machine et exécuter des requêtes cURL.
Mais il existe des moyens plus simples. Si vous aimez utiliser Python, vous souhaitez créer des applications LLM et voici quelques façons de le faire :
- Utilisation de la bibliothèque officielle Ollama Python
- Utiliser Ollama avec LangChain
Extrayez les modèles que vous devez utiliser avant d’exécuter les extraits des sections suivantes.
Utilisation de la bibliothèque Ollama Python
Vous pouvez utiliser la bibliothèque Ollama Python, vous pouvez l’installer en utilisant pip comme ceci :
Il existe également une bibliothèque JavaScript officielle, que vous pouvez utiliser si vous préférez développer avec JS.
Une fois que vous avez installé la bibliothèque Ollama Python, vous pouvez l’importer dans votre application Python et travailler avec de grands modèles de langage. Voici l’extrait d’une tâche de génération de langage simple :
import ollama
response = ollama.generate(model="gemma:2b",
prompt="what is a qubit?")
print(response['response'])
Utiliser LangChain
Une autre façon d’utiliser Ollama avec Python consiste à utiliser LangChaîne. Si vous avez des projets existants utilisant LangChain, il est facile de les intégrer ou de passer à Ollama.
Assurez-vous que LangChain est installé. Sinon, installez-le en utilisant pip :
Voici un exemple :
from langchain_community.llms import Ollama
llm = Ollama(model="llama2")
llm.invoke("tell me about partial functions in python")
L’utilisation de LLM comme celui-ci dans les applications Python facilite le basculement entre différents LLM en fonction de l’application.
Emballer
Avec Ollama, vous pouvez exécuter localement de grands modèles de langage et créer des applications basées sur LLM avec seulement quelques lignes de code Python. Ici, nous avons exploré comment interagir avec les LLM de l’Ollama REPL ainsi qu’à partir des applications Python.
Nous essaierons ensuite de créer une application en utilisant Ollama et Python. D’ici là, si vous souhaitez approfondir vos connaissances en LLM, consultez 7 étapes pour maîtriser les grands modèles de langage (LLM).
Bala Priya C est un développeur et rédacteur technique indien. Elle aime travailler à l’intersection des mathématiques, de la programmation, de la science des données et de la création de contenu. Ses domaines d’intérêt et d’expertise incluent le DevOps, la science des données et le traitement du langage naturel. Elle aime lire, écrire, coder et prendre le café ! Actuellement, elle travaille à l’apprentissage et au partage de ses connaissances avec la communauté des développeurs en créant des didacticiels, des guides pratiques, des articles d’opinion, etc. Bala crée également des aperçus de ressources attrayants et des didacticiels de codage.