Reupload
Tester mon PC
Retour à l'accueil

IA locale · Google AI Developers Blog & Official Documentation

Gemma 2 : guide complet du modèle à poids ouverts

Gemma 2 : guide complet du modèle à poids ouverts

Photo: Growtika sur Unsplash

Gemma 2 est la famille de grands modèles de langage librement téléchargeables de Google, disponible en tailles de 2B, 9B et 27B paramètres. Distillés de Gemini et entraînés par distillation de connaissances, ces modèles offrent des performances compétitives face à des modèles plusieurs fois plus grands tout en fonctionnant efficacement sur du matériel grand public. Disponibles sous une licence permissive et compatibles avec Ollama, LM Studio et d'autres outils d'inférence locale.

Qu'est-ce que Gemma 2 ?

Gemma 2 est la famille de grands modèles de langage ouverts de Google, offrant des tailles de 2B, 9B et 27B paramètres. Ces modèles ouverts légers et à la pointe de l'art offrent les meilleures performances pour leur taille, et proposent même des alternatives compétitives à des modèles 2 à 3 fois plus grands.

Gemma 2 2B est un modèle de langage compact à poids ouverts développé par Google pour des déploiements en périphérie et mobiles à ressources limitées, distillés à partir d'architectures Gemini plus grandes. Gemma 2 est disponible sous une licence Gemma favorable au commerce, donnant aux développeurs et aux chercheurs la capacité de partager et de commercialiser leurs innovations.

Tailles et variantes disponibles

Gemma 2 est disponible en tailles de 2B, 9B et 27B paramètres. Chaque taille existe en deux variantes :

  • Modèle de base : Pré-entraîné, adapté à l'ajustement fin et à la recherche
  • Ajusté aux instructions (IT) : Optimisé pour les tâches conversationnelles et les interactions avec les utilisateurs

Spécifications techniques

  • Longueur de contexte : Tous les modèles prennent en charge une longueur de séquence de 8 192 tokens.
  • Taille du vocabulaire : 256 128 tokens (nettement plus grande que les modèles concurrents)
  • Architecture : Transformer dense de conception décodeur uniquement
  • Données d'entraînement : Le corpus d'entraînement du modèle 9B était constitué de 8 billions de tokens, principalement issus de documents web, de code et de contenus mathématiques.

Configuration matérielle requise

Besoins en mémoire (pleine précision FP16)

Gemma 2 2B : 5,76 Go de VRAM à 1K tokens, 6,16 Go de VRAM à 8K tokens. Une seule RTX 4090 ou équivalent gère cela confortablement.

Gemma 2 9B : Nécessite généralement 18-20 Go de VRAM en pleine précision. Des GPU comme la NVIDIA A100 40 Go ou la RTX 4090 avec 24 Go de VRAM peuvent ajuster finement Gemma 2 2B avec des tailles de lot réduites.

Gemma 2 27B : En pleine précision (FP16) avec 8 192 tokens, nécessite 61,44 Go de VRAM, adapté à 1x NVIDIA A100 80 Go, 3x RTX 4090 24 Go, ou 1x Apple M3 Max 128 Go.

Options de quantification

  • Quantification INT8 : Réduit la mémoire de moitié (environ)
  • Quantification INT4 : Réduit encore à 1/4 de la taille d'origine, permet l'inférence sur ordinateur portable
  • Format GGUF : Optimisé pour l'inférence sur CPU avec Ollama et des outils similaires

Gemma 2B en quantification Q4 (environ 1,4 Go) peut tourner sur un Raspberry Pi 4 avec 4 Go de RAM, délivrant environ 3-5 tokens par seconde.

Points forts des benchmarks

Les modèles Gemma 2 démontrent des performances exceptionnelles par rapport à leur nombre de paramètres sur de multiples cadres d'évaluation.

LMSYS Chatbot Arena (évaluation humaine)

Gemma 27B (Elo 1218) s'est classé plus haut que Llama 3 70B (Elo 1206), Gemma 9B (Elo 1187) similaire à GPT-4-0314 (Elo 1186), Gemma 2.6B (Elo 1126) s'est classé plus haut que GPT-3.5-Turbo-0613 (Elo 1116).

Benchmarks académiques

Sur le benchmark MMLU, Gemma 2 2B obtient 52,2 %, Gemma 2 9B obtient 71,3 % et Gemma 2 27B obtient 75,2 %. Scores supplémentaires :

  • GSM8K (mathématiques) : Gemma 2 9B : 68,6 %, Gemma 2 27B : 74,0 %
  • HumanEval (code) : Gemma 2 9B : 68,2 %, Gemma 2 27B : 74,9 %
  • BBH (raisonnement) : Gemma 2 9B : 68,2 %, Gemma 2 27B : 74,9 %

Réalisation clé

Le modèle 27B a rapidement grimpé dans le classement LMSYS Chatbot Arena, surpassant même des modèles populaires plus de deux fois plus grands dans des conversations engageantes et réelles, tandis que le modèle Gemma 2 2B surpasse tous les modèles GPT-3.5 sur le Chatbot Arena à une taille exécutable sur des appareils en périphérie.

Comment l'exécuter localement

Avec Ollama (méthode la plus simple)

Gemma 2 est compatible avec les principaux frameworks d'IA, notamment Hugging Face Transformers, JAX, PyTorch, TensorFlow via Keras 3.0, vLLM, Gemma.cpp, Llama.cpp et Ollama.

Installation et utilisation :

  1. Installez Ollama depuis ollama.com
  2. Exécutez l'une de ces commandes :
  • 2B paramètres : ollama run gemma2:2b
  • 9B paramètres : ollama run gemma2
  • 27B paramètres : ollama run gemma2:27b

Outils alternatifs

D'autres plateformes populaires d'inférence locale prennent également en charge Gemma 2 :

  • LM Studio : Téléchargeable depuis lmstudio.ai, fournit une interface graphique pour la gestion des modèles
  • Jan : Alternative open source avec des fonctionnalités similaires
  • GPT4All : Interface conviviale pour débutants avec des modèles préconfigurés
  • Msty : Application de bureau multiplateforme pour l'inférence LLM locale

Tous ces outils vous permettent de télécharger des versions quantifiées de Gemma 2 depuis leurs catalogues de modèles intégrés et de les exécuter hors ligne.

Meilleurs cas d'usage

Gemma 2 9B convient à la création de contenu comme la poésie, la rédaction publicitaire et la génération de code, les variantes ajustées aux instructions étant particulièrement efficaces pour les agents conversationnels et les chatbots, prenant en charge des tâches comme les questions-réponses et le résumé.

Applications idéales :

  • Appareils en périphérie et mobiles : Le modèle 2B tourne efficacement sur téléphones et systèmes embarqués
  • Génération et assistance de code : Bonnes performances sur HumanEval et les benchmarks de codage
  • Résumé de documents : Résumé abstractif et extractif de haute qualité
  • Chatbots de service client : Les variantes ajustées aux instructions excellent dans le dialogue orienté utilisateur
  • Déploiements locaux axés sur la confidentialité : Contrôle total des données sans appels API externes
  • Outils éducatifs : Systèmes de questions-réponses enseignant/élève et applications de tutorat
  • Inférence économique : Un déploiement sur un seul GPU ou CPU réduit les coûts opérationnels

FAQ

Gemma 2 peut-il tourner entièrement sur mon ordinateur portable sans GPU ?

La taille relativement petite de Gemma 2 permet de les déployer dans des environnements à ressources limitées, comme un ordinateur portable, un ordinateur de bureau ou votre propre infrastructure cloud. Le modèle 2B peut tourner sur CPU, bien que les vitesses soient lentes (quelques tokens par seconde). La quantification au format INT4 réduit encore les besoins en mémoire.

Quelle est la différence entre Gemma 2 de base et les modèles ajustés aux instructions ?

Les modèles de base sont pré-entraînés et optimisés pour l'ajustement fin sur des tâches personnalisées. Les variantes ajustées aux instructions (IT) suivent un entraînement supplémentaire pour suivre les instructions des utilisateurs et engager un dialogue, ce qui les rend immédiatement utilisables comme chatbots sans entraînement supplémentaire.

Gemma 2 est-il vraiment open source ?

Les modèles Gemma sont « à poids ouverts » plutôt que totalement open source - les poids sont librement disponibles mais les données d'entraînement et le code ne le sont pas. La licence permissive permet toutefois l'usage commercial et la redistribution des poids du modèle.

Comment Gemma 2 se compare-t-il à Llama 3 ?

Le modèle Gemma 2 9B offre des performances de premier ordre, surpassant Llama 3 8B et d'autres modèles ouverts de sa catégorie de taille. La variante 27B atteint des performances compétitives face à des modèles Llama 3 bien plus grands malgré une taille inférieure.

Envie de savoir si votre ordinateur peut faire tourner une IA en local ?

Sources & crédits

Source originale: Google AI Developers Blog & Official Documentation