Comment exécuter Deepseek V3 0324 en local (avec étapes)

Dans ce tutoriel, je vous guide pour exécuter DeepSeek V3 0324, un modèle linguistique puissant de 671 milliards de paramètres, sur votre machine.

Louis Dupont

Louis Dupont

5 June 2025

Comment exécuter Deepseek V3 0324 en local (avec étapes)

Bienvenue ! Dans ce tutoriel, je vais vous guider à travers l'exécution de DeepSeek V3 0324, un puissant modèle de langage de 671 milliards de paramètres, sur votre machine locale. Nous couvrirons tout, de la préparation à l'exécution de vos premières invites en utilisant des techniques de quantification dynamique qui équilibrent la précision du modèle avec les exigences de mémoire.

DeepSeek V3 0324 : Dans quelle mesure est-il bon ?

La mise à jour de mars 2024 de DeepSeek apporte des améliorations significatives des performances par rapport au modèle V3 précédent :

Le modèle original est un modèle massif de 671 milliards de paramètres, ce qui signifie que nous avons besoin de techniques de quantification efficaces pour l'exécuter sur du matériel grand public.

Voici les options de quantification disponibles pour équilibrer l'espace disque et la précision :

Type de bits MoE Taille du disque Précision Détails
1.78bit (IQ1_S) 173 Go Correct 2.06/1.56bit
1.93bit (IQ1_M) 183 Go Correct 2.5/2.06/1.56
2.42bit (IQ2_XXS) 203 Go Suggéré 2.5/2.06bit
2.71bit (Q2_K_XL) 231 Go Suggéré 3.5/2.5bit
3.5bit (Q3_K_XL) 320 Go Excellent 4.5/3.5bit
4.5bit (Q4_K_XL) 406 Go Meilleur 5.5/4.5bit

Le modèle float8 d'origine prend 715 Go, ces versions quantifiées offrent donc des économies d'espace importantes !

Tutoriel étape par étape : Exécution de DeepSeek V3 0324 dans llama.cpp

Avant de commencer, comprenons les paramètres optimaux pour DeepSeek V3 0324 :

Étape 1 : Configurer llama.cpp

Tout d'abord, nous devons obtenir et compiler llama.cpp :

# Mettre à jour les paquets et installer les dépendances requises
apt-get update
apt-get install pciutils build-essential cmake curl libcurl4-openssl-dev -y

# Cloner le dépôt llama.cpp
git clone <https://github.com/ggml-org/llama.cpp>

# Construire avec le support CUDA pour le GPU (utiliser -DGGML_CUDA=OFF pour le CPU uniquement)
# Remarque : la construction avec CUDA peut prendre environ 5 minutes
cmake llama.cpp -B llama.cpp/build \\\\
  -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON -DLLAMA_CURL=ON

# Construire les outils nécessaires
cmake --build llama.cpp/build --config Release -j --clean-first --target llama-quantize llama-cli llama-gguf-split

# Copier les outils construits pour un accès facile
cp llama.cpp/build/bin/llama-* llama.cpp/

Étape 2 : Télécharger le modèle quantifié

Installez les paquets Python requis et téléchargez le modèle :

pip install huggingface_hub hf_transfer

# Configurer l'environnement pour des téléchargements plus rapides
import os
os.environ["HF_HUB_ENABLE_HF_TRANSFER"] = "1"

# Télécharger le modèle (ici, nous utilisons la quantification dynamique de 2,7 bits pour l'équilibre)
from huggingface_hub import snapshot_download
snapshot_download(
  repo_id = "unsloth/DeepSeek-V3-0324-GGUF",
  local_dir = "unsloth/DeepSeek-V3-0324-GGUF",
  allow_patterns = ["*UD-Q2_K_XL*"],  # Dynamique 2.7bit (230GB)
  # Utiliser "*UD-IQ_S*" pour Dynamique 1.78bit (151GB) si l'espace est limité
)

Étape 3 : Exécuter une invite de test

Testons le modèle avec une invite lui demandant de créer un jeu Flappy Bird :

./llama.cpp/llama-cli \\\\
  --model unsloth/DeepSeek-V3-0324-GGUF/UD-Q2_K_XL/DeepSeek-V3-0324-UD-Q2_K_XL-00001-of-00006.gguf \\\\
  --cache-type-k q8_0 \\\\
  --threads 20 \\\\
  --n-gpu-layers 2 \\\\
  -no-cnv \\\\
  --prio 3 \\\\
  --temp 0.3 \\\\
  --min_p 0.01 \\\\
  --ctx-size 4096 \\\\
  --seed 3407 \\\\
  --prompt "<|User|>Créez un jeu Flappy Bird en Python. Vous devez inclure ces éléments :
1. Vous devez utiliser pygame.
2. La couleur d'arrière-plan doit être choisie au hasard et est une nuance claire. Commencez par une couleur bleu clair.
3. Appuyer plusieurs fois sur ESPACE accélérera l'oiseau.
4. La forme de l'oiseau doit être choisie au hasard comme un carré, un cercle ou un triangle. La couleur doit être choisie au hasard comme une couleur foncée.
5. Placez en bas une terre de couleur marron foncé ou jaune choisie au hasard.
6. Faites un score affiché en haut à droite. Incrémentez si vous passez des tuyaux et ne les touchez pas.
7. Faites des tuyaux espacés au hasard avec suffisamment d'espace. Colorez-les au hasard en vert foncé ou marron clair ou une nuance de gris foncé.
8. Lorsque vous perdez, affichez le meilleur score. Mettez le texte à l'intérieur de l'écran. Appuyer sur q ou Échap quittera le jeu. Redémarrer consiste à appuyer à nouveau sur ESPACE.
Le jeu final doit se trouver à l'intérieur d'une section markdown en Python. Vérifiez votre code pour les erreurs et corrigez-les avant la section markdown finale.<|Assistant|>"

Voici les explications des paramètres :

Tester Deepseek V3 0324 avec le « Heptagon Challenge »

Vous pouvez tester davantage les capacités de votre modèle en exécutant le « Heptagon Challenge », qui demande au modèle de créer une simulation physique complexe avec des balles rebondissant à l'intérieur d'un heptagone en rotation :

./llama.cpp/llama-cli \\\\
  --model unsloth/DeepSeek-V3-0324-GGUF/UD-Q2_K_XL/DeepSeek-V3-0324-UD-Q2_K_XL-00001-of-00006.gguf \\\\
  --cache-type-k q8_0 \\\\
  --threads 20 \\\\
  --n-gpu-layers 2 \\\\
  -no-cnv \\\\
  --prio 3 \\\\
  --temp 0.3 \\\\
  --min_p 0.01 \\\\
  --ctx-size 4096 \\\\
  --seed 3407 \\\\
  --prompt "<|User|>Écrivez un programme Python qui montre 20 balles rebondissant à l'intérieur d'un heptagone en rotation :
- Toutes les balles ont le même rayon.
- Toutes les balles ont un numéro dessus de 1 à 20.
- Toutes les balles tombent du centre de l'heptagone au démarrage.
- Les couleurs sont : #f8b862, #f6ad49, #f39800, #f08300, #ec6d51, #ee7948, #ed6d3d, #ec6800, #ec6800, #ee7800, #eb6238, #ea5506, #ea5506, #eb6101, #e49e61, #e45e32, #e17b34, #dd7a56, #db8449, #d66a35
- Les balles doivent être affectées par la gravité et le frottement, et elles doivent rebondir sur les murs en rotation de manière réaliste. Il devrait également y avoir des collisions entre les balles.
- Le matériau de toutes les balles détermine que leur hauteur de rebond d'impact ne dépassera pas le rayon de l'heptagone, mais sera supérieure au rayon de la balle.
- Toutes les balles tournent avec frottement, les numéros sur la balle peuvent être utilisés pour indiquer la rotation de la balle.
- L'heptagone tourne autour de son centre, et la vitesse de rotation est de 360 degrés toutes les 5 secondes.
- La taille de l'heptagone doit être suffisamment grande pour contenir toutes les balles.
- N'utilisez pas la bibliothèque pygame ; implémentez vous-même les algorithmes de détection de collision et la réponse aux collisions, etc. Les bibliothèques Python suivantes sont autorisées : tkinter, math, numpy, dataclasses, typing, sys.
- Tous les codes doivent être placés dans un seul fichier Python.<|Assistant|>"

Optimisation des performances de Deepseek V3 0324

Flash Attention : Pour un décodage plus rapide, utilisez Flash Attention lors de la compilation de llama.cpp :

-DGGML_CUDA_FA_ALL_QUANTS=ON

Architecture CUDA : Définissez votre architecture CUDA spécifique pour réduire les temps de compilation :

-DCMAKE_CUDA_ARCHITECTURES="80"  # Ajuster pour votre GPU

Ajustement des paramètres :


Vous avez maintenant DeepSeek V3 0324 qui s'exécute localement ! Pour récapituler :

  1. Nous avons configuré llama.cpp avec la prise en charge de CUDA
  2. Téléchargé une version quantifiée du modèle (quantification dynamique de 2,7 bits)
  3. Exécuté des invites de test pour vérifier les capacités du modèle
  4. Appris les paramètres optimaux et les conseils de performance

La quantification dynamique de 2,7 bits offre un excellent équilibre entre l'espace disque (231 Go) et la précision du modèle, ce qui vous permet d'exécuter ce modèle de 671 milliards de paramètres efficacement sur votre propre matériel.

N'hésitez pas à expérimenter différentes invites et paramètres pour tirer le meilleur parti de ce puissant modèle !

Tester l'API DeepSeek avec Apidog

Si vous développez des applications qui utilisent DeepSeek via son API plutôt que de l'exécuter localement, Apidog fournit des outils puissants pour le développement, les tests et le débogage d'API.

Configuration d'Apidog pour les tests d'API DeepSeek

Étape 1 : Télécharger et installer Apidog

  1. Visitez https://apidog.com/download/ pour télécharger le client Apidog pour votre système d'exploitation.
button

2. Installez et lancez Apidog, puis créez un compte ou connectez-vous avec Google/Github.

3. Lorsque vous y êtes invité, sélectionnez votre rôle (par exemple, « Développeur fullstack ») et votre mode de travail préféré (par exemple, « Conception d'API d'abord »).

Étape 2 : Créer un nouveau projet d'API pour DeepSeek

  1. Créez un nouveau projet HTTP dans Apidog pour vos tests d'API DeepSeek.
  2. Ajoutez vos points de terminaison d'API DeepSeek au projet.

Débogage des réponses en streaming de DeepSeek

DeepSeek et de nombreux autres modèles d'IA utilisent les événements envoyés par le serveur (SSE) pour les réponses en streaming. Apidog (version 2.6.49 ou supérieure) prend en charge le débogage SSE :

  1. Créez et configurez votre point de terminaison d'API DeepSeek dans Apidog.
  2. Envoyez la requête à votre API DeepSeek.
  3. Si la réponse inclut l'en-tête Content-Type: text/event-stream, Apidog la traite automatiquement comme un événement SSE.
  4. Affichez les réponses en streaming en temps réel dans la vue Chronologie du panneau de réponse.

Apidog prend en charge les formats de modèles d'IA populaires, notamment :

Pour DeepSeek en particulier, Apidog peut afficher le processus de réflexion du modèle dans la chronologie, fournissant ainsi un aperçu du raisonnement de l'IA.

Personnalisation de la gestion des réponses SSE pour DeepSeek

Si le format de réponse de DeepSeek ne correspond pas aux règles de reconnaissance intégrées d'Apidog, vous pouvez :

Configurer les règles d'extraction JSONPath pour les réponses SSE au format JSON :

Utiliser des scripts de post-traitement pour les messages SSE non JSON :

Création de tests automatisés pour les API DeepSeek

Une fois que vous avez configuré votre point de terminaison d'API DeepSeek, vous pouvez créer des tests automatisés dans Apidog pour vous assurer qu'il fonctionne correctement :

  1. Créez des scénarios de test pour différents types d'invites dans le module Tests.
  2. Ajoutez la validation et les assertions pour vérifier la structure et le contenu de la réponse.
  3. Configurez le scénario de test pour qu'il s'exécute avec différents environnements (par exemple, développement, production).
  4. Configurez des exécutions par lots pour tester plusieurs scénarios à la fois.

Pour l'intégration CI/CD, Apidog CLI vous permet d'exécuter ces tests dans le cadre de votre pipeline :

# Installer Apidog CLI
npm install -g apidog-cli

# Exécuter le scénario de test
apidog run test-scenario -c <collection-id> -e <environment-id> -k <api-key>

Vous pouvez en savoir plus sur le fonctionnement d'apidog-cli dans la Documentation officielle.

Tests de performance de l'API DeepSeek

Apidog offre également des capacités de test de performance pour évaluer les performances de votre API DeepSeek sous charge :

Créez un scénario de test qui inclut des appels à votre API DeepSeek.

Configurez les paramètres du test de performance :

Exécutez le test de performance pour voir les mesures clés telles que :

Ceci est particulièrement utile pour comprendre comment votre déploiement DeepSeek gère plusieurs requêtes simultanées.

Conclusion

Vous avez maintenant DeepSeek V3 0324 qui s'exécute localement et les connaissances nécessaires pour tester efficacement les API DeepSeek à l'aide d'Apidog ! Pour récapituler :

La quantification dynamique de 2,7 bits offre un excellent équilibre entre l'espace disque (231 Go) et la précision du modèle, ce qui vous permet d'exécuter ce modèle de 671 milliards de paramètres efficacement sur votre propre matériel. Pendant ce temps, Apidog vous offre des outils puissants pour développer, tester et déboguer les implémentations d'API DeepSeek, en particulier avec ses capacités de débogage SSE pour les réponses en streaming.

N'hésitez pas à expérimenter différentes options de quantification et fonctionnalités d'Apidog pour trouver la configuration qui convient le mieux à vos besoins spécifiques !

button

Explore more

Fathom-R1-14B : Modèle de raisonnement IA avancé d'Inde

Fathom-R1-14B : Modèle de raisonnement IA avancé d'Inde

L'IA en expansion rapide. Fathom-R1-14B (14,8 milliards de paramètres) excelle en raisonnement mathématique et général, conçu par Fractal AI Research.

5 June 2025

Mistral Code : L'assistant de codage le plus personnalisable basé sur l'IA pour les entreprises

Mistral Code : L'assistant de codage le plus personnalisable basé sur l'IA pour les entreprises

Découvrez Mistral Code, l'IA d'aide au code la plus personnalisable pour les entreprises.

5 June 2025

Comment Claude Code transforme le codage de l'IA en 2025

Comment Claude Code transforme le codage de l'IA en 2025

Découvrez Claude Code en 2025 : codage IA révolutionné. Fonctionnalités, démo, et pourquoi il gagne du terrain après Windsurf d'Anthropic. Indispensable !

5 June 2025

Pratiquez le Design-first d'API dans Apidog

Découvrez une manière plus simple de créer et utiliser des API