Greboca  

Suport technique et veille technologique

Suport technique et veille technologique

Aujourd’hui, les grandes entreprises et administrations publiques hésitent entre continuer à utiliser des logiciels propriétaires ou basculer vers les Logiciels Libres. Pourtant, la plupart des logiciels libres sont capables de bien traiter les données issues des logiciels propriétaire, et parfois avec une meilleur compatibilité.

C’est alors la barrière de la prise en main qui fait peur, et pourtant...

Les logiciels libres

L’aspect « Logiciel Libre » permet une évolution rapide et une plus grande participation des utilisateurs. Les aides et tutoriels foisonnent sur Internet ou sont directement inclus dans le logiciel lui-même.

Enfin, les concepteurs sont plus proches des utilisateurs, ce qui rend les logiciels libres plus agréable à utiliser et conviviaux.

Grâce à la disponibilité des logiciels libres, vous trouverez facilement des services de support techniques et la licence n’est plus un frein à l’utilisation de ces logiciels par votre personnel.

Notre support technique concerne essentiellement les logiciels libres, que ce soit sous forme de services ponctuels ou de tutoriels.

LinuxFr.org : les journaux  -  LLM auto-hébergés ou non : mon expérience

 -  29 mai - 

Sommaire

Introduction

En tant que grand utilisateur des LLM (Large Language Models), je trouve que ce sont d'excellents outils pour diverses tâches comme l'analyse de logs, l'aide à la programmation de scripts, etc. Cependant, une question cruciale se pose rapidement : faut-il les auto-héberger ou les utiliser via des services en ligne ? Dans cet article, je partage mon expérience sur ce sujet.

Catégories de LLM

Je classe les LLM en trois catégories principales :

1. Les petits modèles

Ces modèles peuvent tourner localement sur votre machine, lentement sur le CPU ou plus rapidement avec un GPU d'au moins 8 Go de mémoire (NVIDIA, AMD ou Mac). Ils fonctionnent en local, sans connexion internet, ce qui est idéal pour la confidentialité. Cependant, ils sont vite limités et conviennent mieux pour des tâches spécifiques comme le RAG (Retrieval Augmented Generation) ou s'ils ont été fine-tunés dans un domaine précis.

Exemples : LLaMA 3 8b, Mistral 7b, phi3 3b, et tous les modèles en dessous de 10 à 15 milliards de paramètres.

2. Les modèles moyens

Ces modèles peuvent également tourner localement si vous avez un bon GPU avec suffisamment de mémoire (32 Go, voire 16 Go pour certains modèles quantifiés sur 2 bits). Ils sont plus intelligents que les petits modèles, mais moins que les grands. Dans mon expérience, ils suffisent dans 95% des cas pour l'aide au codage et 100% pour la traduction ou la correction de texte.

Exemples : LLaMA 3 70b, Mistral 8x7b (celui que j'utilise au quotidien), Command-R (35b), et tous les modèles jusqu'à 100 milliards de paramètres.

3. Les grands modèles

Pour faire tourner ces modèles localement, il faut beaucoup d'argent. Ce sont généralement des modèles non ouverts ou des modèles ouverts de très grande taille.

Exemples : le futur LLaMA 3 400b, Mistral 8x22b, QWen 110b, Command-R-Plus, DBRX.

Auto-hébergement ou services en ligne

L'auto-hébergement peut se faire de manière complète (frontend et backend) ou hybride (frontend auto-hébergé et inférence sur un endpoint distant). Pour le frontend, j'utilise deux containers Docker chez moi : Chat UI de Hugging Face et Open Webui.

Pour le backend, on peut soit auto-héberger l'inférence avec des outils comme OLLaMa ou LLaMA.cpp, soit utiliser un endpoint externe via une API (OpenAI, Mistral AI, Together AI, Hugging Face, Groq, etc.). Ces endpoints offrent généralement des bibliothèques pour Python ou JavaScript, compatibles avec l'API OpenAI.

Bien que l'inférence sur un endpoint ne soit pas idéale pour la confidentialité, c'est tout de même mieux que rien, car on peut changer d'endpoint pour brouiller les pistes.

Ma configuration

J'ai acheté d'occasion un ordinateur Dell Precision 5820 avec 32 Go de RAM, un CPU Xeon W-2125, une alimentation de 900W et deux cartes NVIDIA Quadro P5000 de 16 Go de RAM chacune, pour un total de 646 CHF.

J'ai installé Ubuntu Server 22.4 avec Docker et les pilotes NVIDIA. Ma machine dispose donc de 32 Go de RAM GPU utilisables pour l'inférence. J'utilise OLLaMa, réparti sur les deux cartes, et Mistral 8x7b quantifié sur 4 bits (2 bits sur une seule carte, mais l'inférence est deux fois plus lente). En inférence, je fais environ 24 tokens/seconde. Le chargement initial du modèle (24 Go) prend un peu de temps. J'ai également essayé LLaMA 3 70b quantifié sur 2 bits, mais c'est très lent (3 tokens/seconde).

Consommation électrique

Au repos, mon infrastructure (1 serveur Proxmox, 1 serveur de sauvegarde Proxmox, 1 Synology DS218+, la machine d'inférence, le routeur, le switch et l'onduleur) consomme environ 260W.

En inférence, la consommation monte à environ 420W, soit une puissance supplémentaire de 200W. Sur 24h, cela représente une consommation de 6,19 kWh, soit un coût de 1,61 CHF/jour.

Pour réduire cette consommation et les coûts, plusieurs options sont possibles :

  1. Installer des panneaux solaires (trop cher pour moi actuellement, mais je vais brancher un panneau solaire de 600W maximum sur une prise, comme autorisé en Suisse).
  2. Arrêter la machine d'inférence la nuit.
  3. Faire l'inférence sur des endpoints (moins idéal pour la confidentialité).

Inférence sur des endpoints

Hugging Face permet de faire de l'inférence sur tous les modèles de moins de 10 Go de RAM et sur quelques gros modèles (LLaMA 3 70b, Mistral 8x22b, etc.). Il est possible de cloner Chat UI qui tourne sur Hugging Face et de le faire tourner dans un espace privé. Attention, cela peut parfois être lent le soir, même avec un abonnement à 9€/mois.

Together AI est une société américaine qui offre un crédit de 25$ à l'ouverture d'un compte. Les prix sont les suivants :

  • Mistral 8x7b : 0,60$/million de tokens
  • LLaMA 3 70b : 0,90$/million de tokens
  • Mistral 8x22b : 1,20$/million de tokens

Mistral AI est une société française qui propose des modèles Mistral, avec un paiement au million de tokens selon le poids du modèle.

Groq permet une inférence très rapide (300 à 500 tokens/seconde pour LLaMA 3 ou Mistral 8x7b). Lors de ma dernière utilisation, c'était gratuit car en phase de bêta.

Les modèles propriétaires comme ChatGPT sont généralement trop chers, bien qu'ils puissent résoudre certains problèmes que mes modèles ne parviennent pas à résoudre (et vice-versa).

Conclusion

En résumé, l'auto-hébergement des LLM offre un meilleur contrôle sur la confidentialité, mais nécessite des investissements en matériel et en consommation électrique. Les services en ligne sont une alternative intéressante, mais avec des compromis en termes de confidentialité et de coûts. Le choix dépendra de vos besoins spécifiques et de votre budget.

Commentaires : voir le flux Atom ouvrir dans le navigateur

par Ecran Plat

LinuxFr.org : les journaux

LinuxFr.org : Journaux

Nouvelle version de Grammalecte pour Firefox

 -  30 août - 

Grammalecte est un correcteur grammatical et typographique libre, pour la langue française. Il est bien connu sur LinuxFr.org (voir l’étiquette) : (...)


Taack-ui version 0.5.4

 -  23 août - 

Bonjour à toutes et tous,TaackUI est un framework (ou cadriciel) pour créer des applications d’entreprise (c.a.d. beaucoup de formulaires, aspect (...)


Fin d’OCSP chez Let’s Encrypt : quid ?

 -  15 août - 

Sommaire Contexte Certificat X.509 et autorité de certification Let’s Encrypt Validation du certificat OCSP - Online Certificate Status Protocol, (...)


Proxmox_GK : un utilitaire shell pour déployer vos invités LXC/QEMU, avec Cloud-init

 -  3 août - 

Sommaire Que peut-il faire ? Modes de déploiement flexible Customisation et templating Structure fonctionnelle Conclusion Aller plus loin : (...)


AES-XTS dans le noyau Linux 6.10

 -  23 juillet - 

Le dernier noyau Linux publié est le 6.10 et il incorpore le travail d'Eric Biggers qui a cherché à optimiser les performances de l'algorithme de (...)