Tu codes avec l’IA ?
Outils, agents et nouveautés dev IA décryptés, chaque soir en 5 min. Gratuit.
Inclus dès l'inscription : notre sélection des meilleurs guides & comparatifs IA.
Choisis ton rythme
Gratuit · Pas de spam · Désabonnement en 1 clic
Dans un monde où l'accès aux modèles de langage avancés peut souvent être coûteux, une nouvelle méthode émerge pour démocratiser cette technologie. Grâce à Ollama, il est désormais possible d'exécuter des modèles de langage localement, tels que Llama 3, Mistral et Gemma, sans avoir à payer pour des appels API.
Pour démarrer, il est essentiel d'installer Ollama sur votre machine. Une fois installé, vous pouvez télécharger des modèles open-source populaires. Par exemple, pour obtenir Llama 3, il suffit d'exécuter la commande suivante dans votre terminal :
ollama run llama3
Des alternatives comme Mistral ou Gemma peuvent aussi être téléchargées de manière similaire. Une fois le modèle en cours d'exécution, il est prêt à recevoir des appels API locaux. Pour garder le modèle actif en arrière-plan, il suffit de taper "/bye" dans le terminal.
Il est recommandé d'utiliser un IDE pour exécuter ce tutoriel, car cela facilite l'interaction avec Ollama. Avant d'exécuter le code Python, assurez-vous d'avoir installé les bibliothèques nécessaires :
pip install scikit-learn pandas scikit-llm
Si vous rencontrez une erreur "Module not found" lors de l'exécution du code Python, essayez d'installer les dépendances une par une.
La bibliothèque Scikit-LLM joue un rôle crucial en permettant de rediriger les requêtes vers ce serveur local. Cela se fait en configurant Scikit-LLM pour utiliser le port par défaut d'Ollama, éliminant ainsi le besoin de clés API coûteuses. Scikit-LLM a besoin d'une clé par défaut pour passer des vérifications internes, mais cette chaîne sera ignorée en pratique avec Ollama.
SKLLMConfig.set_gpt_url("http://localhost:11434/v1")
SKLLMConfig.set_openai_key("local-ollama-is-free")
Avec cette configuration, il est possible de construire un classificateur de texte en zero-shot. Ce processus utilise la classe ZeroShotGPTClassifier de Scikit-LLM.
Pour illustrer ce processus, un ensemble de données est préparé avec des avis d'utilisateurs et leurs catégories correspondantes. Le modèle est ensuite entraîné et testé sur ces données, démontrant comment un modèle de langage local peut être utilisé pour des tâches de classification sans frais supplémentaires.
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.4, random_state=42)
clf = ZeroShotGPTClassifier(model="custom_url::llama3")
clf.fit(X_train, y_train)
predictions = clf.predict(X_test)
Pour afficher les résultats d'inférence du modèle, le code suivant peut être utilisé :
for review, prediction in zip(X_test, predictions):
print(f"Texte de l'avis : '{review}'")
print(f"Tag prédit : {prediction}")
print("-" * 50)
Les résultats montrent que même avec un petit ensemble de données, il est possible d'obtenir des prédictions de classification efficaces. Cette approche offre une alternative économique et accessible pour utiliser des modèles de langage avancés dans des applications de machine learning.
Pour exécuter le script Python, vous pouvez le lancer depuis votre terminal. Par exemple, si vous l'avez nommé local_classification.py, utilisez la commande suivante :
python local_classification.py
En suivant toutes ces étapes, vous pouvez utiliser des modèles de langage avancés localement et gratuitement, ce qui représente une avancée significative pour les développeurs et chercheurs cherchant à réduire leurs coûts.

