[RPM] Exécution locale de Deepseek R1 671b Large Models sur un serveur EPYC de 2000$.
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-1 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/78984d5c0694467.png)
Construction d'un serveur local d'inférence AI Deepseek
Digital Spaceport a obtenu d'excellentes performances sur la plateforme AMD EPYC Rome qu'ils ont utilisée pour la revue précédente :😁 : Cette configuration est un classique ! Ceux d'entre vous qui utilisent cette configuration ont de bonnes nouvelles aujourd'hui, car ils tournent de 4,25 à 3,5 pcs/sec avec le modèle Q4 671b complet ! Jeton (TPS). C'est important, car ces modèles "allégés" ne jouent pas du tout dans la même catégorie. Ils sont loin d'être aussi performants, et d'autres modèles les surpassent facilement. Pour obtenir une expérience vraiment importante, utilisez un modèle complet, de préférence avec une grande fenêtre contextuelle (16K+). Le modèle complet fonctionne même si vous ne l'exécutez que sur le CPU, vous pouvez donc le laisser tourner pendant que vous exécutez des modèles plus petits, comme des modèles de reconnaissance d'images, sur le GPU. Encore une fois, vous ne pouvez pas faire tourner la version complète sur la seule mémoire du GPU, à moins que vous n'ayez une machine très sophistiquée ! Deepseek Digital Spaceport vous apprendra toutes sortes d'astuces pour le faire fonctionner. Ce n'est pas vraiment "facile", mais c'est amusant si vous aimez bricoler avec la technologie.
Rectificatif (2024/02/01)
- Consommation d'énergie en mode veille : 60W (inférieure à celle prévue par Digital Spaceport, et ce sans que le GPU soit branché)
- Consommation électrique à pleine charge : 260 W
- Digital Spaceport Fréquence de la mémoire actuelle : 2400MHz (3200MHz pourrait être mieux)
Serveur AI local Matériel CPU
Si vous avez déjà vu le guide de configuration du serveur graphique quad 3090 de Digital Spaceport, vous avez de la chance. Digital Spaceport recommande un meilleur processeur, car le prix est maintenant à peu près le même et l'augmentation des performances est significative. Cependant, les résultats de cet article ont été obtenus avec le processeur 7702 de Digital Spaceport, et la carte mère MZ32-AR0 était une bonne recommandation à l'époque, car elle dispose de 16 emplacements de mémoire qui fonctionnent à la fréquence maximale de 3200 MHz, ce qui vous aidera à réduire le coût de l'acquisition d'une mémoire de 512 Go à 1 To. Digital Spaceport utilise des barrettes de mémoire DDR4 à 2400 MHz, mais si vous utilisez des barrettes de mémoire DDR4 ECC à 3200 MHz, vous devriez pouvoir augmenter les performances. 16 barrettes de 32 Go vous donneront 512 Go de mémoire, et 16 barrettes de 64 Go vous donneront 1 To.Remarque : les barrettes de mémoire LRDIMM et RDIMM ne peuvent pas être mélangées ! (LRDIMM et RDIMM sont deux types différents de barrettes de mémoire pour serveur et ne doivent pas être mélangés, sinon l'ordinateur risque de ne pas démarrer.)
Liste des composants de la plate-forme du serveur local d'IA
- Porte-bagages 55
- Carte mère MZ32-AR0 $500
- CPU refroidie par eau 420mm Corsair h170i elite capellix xt $170
- Support de tête de refroidisseur d'eau pour CPU EPYC
- AMD EPYC 7702 64 cœurs 650 $ ou AMD EPYC 7V13 64 cœurs 599 $ ou AMD EPYC 7C13 64 cœurs 735 $.
- 512GB 2400 ECC memory $400
- 1TB NVMe SSD - Samsung 980 Pro $75
- Alimentation 850W $80 (Si vous n'utilisez que le CPU, 850W est suffisant. Pour l'utilisation de GPU, il est recommandé de commencer par une alimentation de 1500W ou 1600W)
(Les prix sont ceux du 29 janvier 2025)
Coût total : environ 2 000* Si vous utilisez 512 Go de RAM 2400 et un processeur EPYC 7702, Digital Spaceport recommande d'acheter un processeur 7C13 ou 7V13 plutôt que d'augmenter la fréquence de la mémoire. La mise à niveau vers 768 Go de RAM est le deuxième choix, la RAM à 3200 MHz étant la dernière à envisager. Avec le CPU haut de gamme (7C13 ou 7V13) et 1TB de RAM 2400MHz, le prix total serait d'environ $2500. **.
Assemblage du support de gréement
Le processus d'assemblage est le même que dans la vidéo précédente, toujours sans le GPU et la carte d'extension. Si vous souhaitez ajouter un GPU plus tard, Digital Spaceport recommande de prendre une alimentation de 1500W ou 1600W dès le départ. Après avoir ajouté le GPU et la carte d'extension, le reste de l'unité reste le même. Vous pouvez regarder cette vidéo pour apprendre à l'assembler. (Il s'agit de la vidéo de configuration du serveur graphique quadruple 3090 mentionnée ci-dessus.) Ignorez la partie concernant le GPU dans la vidéo, le reste des étapes est le même.
Il est également conseillé d'installer un mur de petits ventilateurs, attachés avec des attaches zip, qui soufflent de l'air sur les barrettes de mémoire pour aider à dissiper la chaleur. Les barrettes de mémoire ne fusionnent pas thermiquement, mais si elles deviennent trop chaudes, la protection contre la surchauffe se déclenche, ce qui réduit les performances et affecte la vitesse de traitement des données.Digital Spaceport utilise quatre petits ventilateurs de 80 mm. (Paroi de ventilateurs : plusieurs ventilateurs sont montés côte à côte pour former une paroi d'air, offrant ainsi une plus grande capacité de refroidissement.)
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-2 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/5f6e73be26caea4.jpg)
Conseils pour la mise à niveau de la carte mère
Si vous souhaitez utiliser le processeur AMD EPYC 7V13, il est préférable d'acheter la version V3 de la carte mère MZ32-AR0 directement au lieu d'acheter la version V1 et de la mettre à jour ensuite. La version V1 peut ne pas prendre en charge les processeurs d'architecture Milan en usine, et vous devez utiliser la version V3, de sorte que vous devrez peut-être mettre à jour le BIOS de la carte mère avec la version V2 des processeurs en premier lieu.Le BIOS est l'équivalent de "l'âme" de la carte mère de l'ordinateur, contrôlant le démarrage et le fonctionnement du matériel. La mise à jour du BIOS permet à la carte mère de prendre en charge du matériel plus récent.) Digital Spaceport ne peut pas dire avec certitude si la version V1 ne supporte pas les CPU Milan, mais Digital Spaceport pense que c'est très probable. D'après l'expérience de Digital Spaceport, vous pouvez mettre à jour la carte mère V1 vers la dernière version V3 en flashant la mise à jour du BIOS. Tout d'abord, vous devez flasher une version antérieure du BIOS V3, puis vous devez flasher la dernière version V3 du BIOS. La dernière version du BIOS est M23_R40 (Données au moment de la rédaction).
Installation d'un logiciel local d'IA auto-hébergé
Cette partie de l'installation du logiciel est légèrement plus compliquée que les tutoriels précédents de Digital Spaceport. Oui, vous pouvez installer Ollama directement sur un système Proxmox dépouillé.Proxmox est un logiciel de gestion de la virtualisation des serveurs qui vous permet d'exécuter plusieurs machines virtuelles sur un seul serveur physique.) Cependant, Digital Spaceport suggère qu'il est préférable de ne pas le faire. Vous avez maintenant deux options, et Digital Spaceport parlera d'abord de l'une d'entre elles. Digital Spaceport a besoin de tester l'impact sur les performances avant de décider de recommander ou non l'autre option. L'autre option consiste à exécuter Ollama dans un conteneur LXC autonome ou une machine virtuelle (VM).Les conteneurs LXC et les machines virtuelles sont deux technologies de virtualisation qui isolent l'environnement dans lequel le logiciel s'exécute.) Si vous avez déjà vu les tutoriels LXC et Docker de Digital Spaceport, vous pouvez continuer à utiliser LXC, mais Digital Spaceport suggère qu'il est préférable de l'installer dans une machine virtuelle (VM) pour l'instant. Digital Spaceport essaiera d'élaborer une solution plus unifiée pour que tout soit heureusement autonome dans notre petit serveur d'IA, mais cela prendra du temps.
Ubuntu 24.04 ou VM Proxmox ?
Si vous souhaitez minimiser les tracas inutiles d'une nouvelle installation à partir de zéro, installez le logiciel sur un serveur Ubuntu 24.04 à l'état brut. Vous pouvez également vous référer au précédent tutoriel Proxmox. (Se réfère au tutoriel d'installation de Proxmox publié précédemment par Digital Spaceport.) C'est à vous de décider ce que vous voulez faire, à vos risques et périls. Vous pouvez également installer un environnement de bureau si vous le souhaitez, mais ce n'est pas nécessaire, et Digital Spaceport n'en fait pas la démonstration. Nous faisons fonctionner un service sur un serveur, alors n'ayez pas peur de l'interface de ligne de commande (CLI).
Réglage de la BMC de la carte mère MZ32-AR0
Connectez les ports Ethernet et BMC de la carte mère MZ32-AR0 au câble réseau. (BMC (Baseboard Management Controller) Contrôleur de gestion de la carte mère qui peut gérer à distance le matériel du serveur.) Si vous utilisez un routeur pare-feu, tel que opnsense ou pfsense, vous pouvez vérifier la liste ARP du routeur pour voir si le port de la BMC est affiché. Trouvez l'adresse IP de la BMC. Pour Digital Spaceport, l'adresse de la BMC est https://192.168.1.XX. Ouvrez cette adresse dans votre navigateur, et une boîte de connexion avec nom d'utilisateur et mot de passe apparaîtra. Le nom d'utilisateur par défaut est admin, et le mot de passe se trouve sur l'autocollant de la carte mère, sous le logo MZ32-AR0. L'autocollant de la carte mère de Digital Spaceport est montré dans l'image. C'est l'autocollant avec le code-barres. Le mot de passe est probablement le mot de passe initial en supprimant les 3 premiers caractères de "3/C/" et ensuite les 6 ou 11 caractères suivants. Une fois que vous avez réussi à vous connecter à l'interface de gestion BMC, allez sur
Accueil > Paramètres > Réseau > Paramètres IP du réseau
Définissez l'adresse IP statique de la carte mère. Si vous utilisez des serveurs DNS et NTP locaux, configurez-les également. (Serveurs DNS pour la résolution des noms de domaine et serveurs NTP pour la synchronisation du tempsL'interface de gestion BMC sera très souvent utilisée à l'avenir, c'est donc une bonne idée de la mettre en signet.
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-3 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/d37b3e8946ea4d3.jpg)
Ensuite, cliquez sur "remote control" dans la barre latérale. La page affichera l'option "HTML5 viewer". Digital Spaceport recommande d'utiliser une connexion filaire, car vous allez télécharger une image ISO de 2,5 Go de votre système Ubuntu 24.04 sur le réseau pour l'installer ultérieurement. (Le fichier image ISO est une sauvegarde complète du disque ou du disque dur.) Allez sur le site web d'Ubuntu pour télécharger Image ISO pour Ubuntu 24.04 version serveurLe La taille de l'image ISO est d'environ 2,5 Go. Dans le visualiseur HTML5 de l'interface d'administration BMC, cliquez sur le coin supérieur droit et chargez cette image ISO.
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-4 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/79acc75cfa407c7.png)
Lorsque le chargement est terminé, appuyez sur "Start (démarrer)". Si vous n'avez pas encore activé le serveur, faites-le maintenant. Une fois le serveur allumé, l'interface de visualisation HTML5 commencera à afficher la progression du téléchargement, et les chiffres augmenteront lentement. Cliquez avec la souris dans la fenêtre "screen" et attendez que le Gigabyte boot лого apparaisse. Une fois que vous voyez лого, appuyez sur DEL sur votre clavier pour entrer dans la configuration du BIOS. Dans le BIOS, chargez les valeurs par défaut, puis enregistrez et redémarrez. Après le redémarrage de l'ordinateur, entrez à nouveau dans le BIOS et modifiez cette fois-ci certains paramètres. Tout d'abord, définissez le disque de démarrage. Le mode de démarrage peut être UEFI ou Legacy, ce dernier étant probablement moins problématique et moins susceptible de causer des problèmes. (UEFI et Legacy sont deux modes de démarrage différents du BIOS, UEFI étant le plus moderne et le plus avancé.)
Vous trouverez ci-dessous les éléments de configuration du BIOS qui doivent être trouvés et modifiés :
- NPS est fixé à 1 (NPS (Nodes Per Socket) Nombre de nœuds par socket, affecte le mode d'accès à la mémoire de l'unité centrale.)
- CCD réglé sur Auto (CCD (Core Complex Die) CPU Core Complex, la conception modulaire des CPU AMD)
- SMT Off (SMT (Simultaneous Multithreading), la version d'AMD de l'Hyper-Threading, est désactivé pour des performances plus stables avec un seul cœur.)
- SVM désactivé (peut être activé si vous utilisez Proxmox VM, les performances seront légèrement dégradées) (SVM (Secure Virtual Machine) Mode Secure Virtual Machine, technologie de virtualisation Accélération matérielle)
- IOMMU désactivé (peut être activé si vous utilisez Proxmox VM, les performances seront légèrement dégradées) (IOMMU (Input-Output Memory Management Unit) Unité de gestion de la mémoire d'entrée-sortie, matériel accéléré par la technologie de virtualisation.)
- cTDP ajusté à 200W (pour le CPU EPYC 7702) (cTDP (Configurable TDP) TDP configurable pour ajuster la puissance et les performances du CPU)
- Réglez le contrôle déterministe sur manuel et tirez le curseur vers la performance.
- politique d'alimentation rapide réglée sur la performance
- BoostFMax est réglé sur manuel (Réglage de la limite de fréquence d'accélération de l'unité centrale BoostFMax)
- boostFmax est fixé à 3400 (pour le processeur EPYC 7702) (Fixer la limite supérieure de la fréquence d'accélération du CPU à 3,4 GHz)
Après avoir modifié les paramètres BIOS ci-dessus, sauvegardez et redémarrez à nouveau. Lors de ce redémarrage, appuyez sur F12/11/10 (Digital Spaceport ne se souvient pas de la touche, elle est indiquée en bas de la page de démarrage) pour accéder au menu de démarrage. Sélectionnez l'option "AMI Virtual CD" pour démarrer à partir du lecteur de CD-ROM virtuel. Si vous disposez d'une connexion Internet câblée, vous devriez pouvoir accéder à l'écran d'installation d'Ubuntu en un rien de temps. L'étape suivante du processus d'installation d'Ubuntu consiste à configurer votre système Ubuntu. Définissez un nom d'utilisateur et un mot de passe, assurez-vous de vous en souvenir. Cochez l'option "Configurer un serveur ssh" pour faciliter la connexion à distance une fois l'installation terminée. (SSH (Secure Shell) Protocole Secure Shell pour la connexion et la gestion à distance des serveurs) Attendez la fin de l'installation du système. Le système redémarre une fois l'installation terminée et vous invite à appuyer sur la touche Entrée pour continuer. Après avoir appuyé sur Entrée, le système redémarre à nouveau, puis entre dans le terminal de ligne de commande et est invité à entrer un nom d'utilisateur. Saisissez le nom d'utilisateur et le mot de passe que vous avez définis pour vous connecter. Après avoir réussi à vous connecter, entrez la commande
ip a
Souvenez-vous de l'adresse IP affichée. Vous pouvez maintenant retourner sur votre ordinateur Windows/macOS/Linux et fermer la fenêtre du visualiseur HTML5 dans l'interface d'administration BMC. Dans le logiciel Terminal de votre ordinateur, tapez (mettez) username
Remplacez-le par votre nom d'utilisateur, le ipaddress
Remplacez-la par l'adresse IP dont vous venez de vous souvenir).
ssh username@ipaddress
Installation des logiciels les plus courants
Voici une grande liste de commandes, il suffit de les copier et de les coller dans le terminal et de les exécuter. Les étapes relatives au GPU sont omises ici, si vous avez une carte graphique NVIDIA, vous pouvez installer les pilotes après avoir complété les étapes suivantes.
sudo apt update && sudo apt upgrade -y && sudo apt install -y htop git glances nano lsof unzip
sudo apt update
Mise à jour de la liste des sources de logiciels pour s'assurer que les derniers paquets peuvent être téléchargés.sudo apt upgrade -y
Mise à jour de tous les paquets installés vers la dernière version.-y
indique que toutes les opérations sont confirmées automatiquement.sudo apt install -y htop git glances nano lsof unzip
Installation de quelques logiciels Linux courants.htop
Gestionnaire de processus plus convivial qui permet de visualiser en temps réel l'utilisation des ressources du système.git
: Outil de versionnement du code pour le téléchargement et la gestion du code.glances
Un outil de surveillance du système plus puissant que l'outil de surveillance de l'environnement.htop
Fonctionnalité plus riche.nano
Le logiciel d'édition de fichiers : éditeur de texte facile à utiliser pour l'édition des fichiers de configuration.lsof
: Outil de visualisation des fichiers ouverts qui peut être utilisé pour résoudre des problèmes tels que l'occupation des ports.unzip
: Un outil pour décompresser les fichiers ZIP.
Définition d'une adresse IP statique
Tapez dans la ligne de commande du terminal :
sudo netplan generate
Cette commande génère un fichier de configuration réseau par défaut. Utilisez ensuite la commande nano
L'éditeur ouvre le fichier de configuration :
sudo nano /etc/netplan/50-cloud-init.yaml
Le contenu du fichier de configuration par défaut ressemble à peu près à ceci. Nous devons modifier le fichier eno1
la configuration de la carte réseau.eno1
Correspond au port réseau physique sur la carte mère. Ignorer enp65s0np0
Il s'agit d'une carte réseau externe.
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-5 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/4fb406f2b2362d6.png)
Utilisez les touches fléchées du clavier pour déplacer le curseur et modifier le fichier de configuration comme suit. utilisez votre adresse IP actuelle pour l'adresse IP, afin de faciliter l'utilisation et d'éviter de compliquer les choses. digital spaceport définissez l'IP statique ici à 192.168.1.200
La passerelle du routeur est 192.168.1.1
Il s'agit d'une configuration de réseau domestique très courante.
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-6 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/06fa71a8d0ab646.png)
Lorsque la modification est terminée, appuyez sur Ctrl+X
annuler nano
l'éditeur, lorsque l'on vous demande d'enregistrer, appuyez sur Y
pour confirmer.
Lorsque vous revenez au terminal, entrez la commande pour appliquer la nouvelle configuration du réseau :
sudo netplan apply
Votre serveur est maintenant configuré avec une adresse IP statique. Vous pouvez redémarrer le serveur et vous connecter à distance à l'aide de SSH pour vous assurer que les paramètres IP statiques sont bien appliqués.
Installer Ollama
installation suivante Ollama Cadre d'exécution des grands modèles.
curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz
sudo tar -C /usr -xzf ollama-linux-amd64.tgz
sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
sudo usermod -a -G ollama $(whoami)
curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz
Télécharger le paquet d'installation d'Ollama.curl
est un outil de téléchargement en ligne de commande.-L
indique un lien de redirection.-o
spécifie le nom du fichier à enregistrer.sudo tar -C /usr -xzf ollama-linux-amd64.tgz
Extraire le paquet d'installation d'Ollama à l'adresse suivante/usr
Catalogue.tar
est un outil de compression/décompression populaire pour les systèmes Linux.-C /usr
Spécifiez le répertoire de décompression comme/usr
(math.) genre-xzf
pour décompresser un fichier tar compressé par gzip.sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama
Création d'un fichier nomméollama
utilisateur du système pour l'exécution du service Ollama.sudo useradd
Commande de création d'un utilisateur : Commande de création d'un utilisateur.-r
Pour créer un utilisateur système, l'UID et le GID sont automatiquement attribués.-s /bin/false
Interdire aux utilisateurs de se connecter au système.-U
Créer un groupe d'utilisateurs portant le même nom : Créer un groupe d'utilisateurs portant le même nom.-m
: crée automatiquement le répertoire personnel de l'utilisateur.-d /usr/share/ollama
: Spécifier le répertoire personnel de l'utilisateur comme suit/usr/share/ollama
.ollama
: Nom d'utilisateur.
sudo usermod -a -G ollama $(whoami)
: Ajouter l'utilisateur actuel à la liste des utilisateurs de laollama
Groupes d'utilisateurs.sudo usermod
Commande de modification des informations sur l'utilisateur : Commande de modification des informations sur l'utilisateur.-a
Ajouter au groupe d'utilisateurs au lieu d'ignorer.-G ollama
: Ajouter à la listeollama
Groupes d'utilisateurs.$(whoami)
: Obtenir le nom de l'utilisateur actuel.
Cette commande crée également un fichier appelé ollama
et installez Ollama dans le répertoire /usr/share/ollama
répertoire. Par défaut, les fichiers de modèles sont placés dans le répertoire /usr/share/ollama/.ollama/models/
Catalogue.
Configuration des variables d'environnement et des services
Il est maintenant nécessaire de définir certaines variables d'environnement qui seront utilisées au démarrage d'Ollama. Ceci est essentiel pour résoudre les problèmes de traitement parallèle.
sudo nano /etc/systemd/system/ollama.service
dépense ou frais nano
L'éditeur ouvre le fichier de configuration du service systemd d'Ollama. Nous devons ajouter des variables d'environnement au fichier de configuration. Ci-dessous se trouve une liste de toutes les variables d'environnement qui peuvent être configurées, nous n'avons pas besoin de toutes les utiliser, elles sont juste listées pour référence.
Variables d'environnement :
-OLLAMA_DEBUG
: Affiche plus d'informations de débogage (par ex.OLLAMA_DEBUG=1
)-OLLAMA_HOST
adresse IP sur laquelle le serveur Ollama écoute (par défaut)127.0.0.1:11434
)-OLLAMA_KEEP_ALIVE
: durée pendant laquelle le modèle reste chargé en mémoire (par défaut"5m"
(5 minutes)-OLLAMA_MAX_LOADED_MODELS
Nombre maximum de modèles autorisés à être chargés par GPU-OLLAMA_MAX_QUEUE
Longueur maximale de la file d'attente des demandes-OLLAMA_MODELS
Répertoire où sont stockés les fichiers du modèle-OLLAMA_NUM_PARALLEL
Nombre maximal de requêtes parallèles-OLLAMA_NOPRUNE
Nettoyage du cache du modèle : Pas de nettoyage du cache du modèle au démarrage-OLLAMA_ORIGINS
une liste de sources séparées par des virgules qui autorisent les requêtes inter-domaines-OLLAMA_SCHED_SPREAD
: si le modèle doit être réparti uniformément sur tous les GPU-OLLAMA_FLASH_ATTENTION
: activation ou non de l'accélération de l'attention de Flash (Flash Attention est une optimisation Transformateur Techniques de modélisation de l'efficacité des calculs)-OLLAMA_KV_CACHE_TYPE
Type de quantification du cache K/V (par défaut)f16
) (Le cache K/V est un élément clé du modèle Transformer utilisé pour accélérer l'inférence, et la quantification réduit l'empreinte mémoire mais peut perdre en précision.)-OLLAMA_LLM_LIBRARY
Les bibliothèques LLM : Spécifier les bibliothèques LLM pour contourner la détection automatique (Les bibliothèques LLM sont les bibliothèques informatiques sous-jacentes utilisées pour exécuter de grands modèles tels quellama.cpp
,exllama
et al. (et autres auteurs))-OLLAMA_GPU_OVERHEAD
Espace mémoire réservé par GPU (octets)-OLLAMA_LOAD_TIMEOUT
Délai d'attente pour le chargement du modèle (par défaut)"5m"
(5 minutes)
Le contenu du fichier de configuration de Digital Spaceport est le suivant. Remarque : à moins que vous ne disposiez d'une carte GPU, vous n'avez pas besoin (et ne devriez pas) de remplir les variables d'environnement liées au GPU.
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-7 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/1e14c2db3bae2cd.png)
presse Ctrl+X
puis appuyez sur Y
Enregistrez le fichier de configuration. Exécutez ensuite la commande suivante :
sudo systemctl daemon-reload
sudo systemctl start ollama
nproc
sudo systemctl daemon-reload
Pour plus d'informations, veuillez consulter la page suivante : Rechargez le fichier de configuration du service systemd pour que les modifications soient prises en compte.sudo systemctl start ollama
: Démarrageollama.service
le cadre du grand modèle d'Ollama.nproc
Affichage du nombre de cœurs de l'unité centrale.
Les variables d'environnement sont maintenant configurées. nproc
La commande doit indiquer le nombre 64
Si la sortie n'est pas un cœur de CPU complet, cela signifie qu'il y a 64 cœurs de CPU. Si la sortie 128
Cela signifie que l'hyperthreading SMT n'est pas désactivé, vous devez donc le désactiver dans le BIOS. Si la sortie 32
peut-être 96
Si les sorties ne sont pas dans le même état que les sorties, vérifiez les réglages NPS et CCD dans le BIOS. Si les sorties 64
Si le nombre de cœurs de processeur est correct, vous pouvez passer à l'étape suivante (LFG = Let's Fucking Go).
Télécharger le modèle Deepseek 671b
Téléchargez maintenant le grand modèle Deepseek 671b. Ce modèle occupe environ 400 Go d'espace disque, il faut donc espérer que votre SSD NVMe est suffisamment grand.
ollama pull deepseek-r1:671b
ollama pull deepseek-r1:671b
Téléchargement à l'aide du client Ollamadeepseek-r1:671b
Modèles.pull
pour télécharger le modèle.deepseek-r1:671b
est le nom et la version du modèle.
Le processus de téléchargement sera lent, soyez patient. Au passage, nous déplorons les coûts faramineux du trafic de données... (Le téléchargement de modèles volumineux consomme beaucoup de trafic sur le réseau, en particulier à partir de serveurs étrangers, et peut entraîner des coûts de trafic élevés.)
Installation d'OpenWEBUI
Nous avons besoin d'utiliser Docker ou Python pour exécuter OpenWEBUI. Ici, Digital Spaceport utilise Docker pour le déploiement. Assurez-vous que vous n'avez pas d'autres logiciels liés à Docker installés sur votre système pour éviter les conflits.
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
Cycle de désinstallation des paquets liés à Docker qui peuvent être installés afin d'éviter les conflits.for pkg in ... ; do ... ; done
: une instruction de boucle for qui parcourt la liste des paquets.docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc
Docker : liste des paquets liés à Docker qui peuvent être installés.sudo apt-get remove $pkg
Désinstaller le paquet : Désinstaller le paquet.apt-get remove
est la commande pour désinstaller les paquets sur les systèmes Debian/Ubuntu.$pkg
est une variable de boucle représentant le nom du paquet actuellement parcouru.
Installez les sources officielles de Docker :
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
- Cette commande permet d'ajouter les dépôts officiels de Docker pour faciliter l'installation de la dernière version de Docker.
- La première partie ajoute la clé GPG officielle de Docker, qui est utilisée pour vérifier l'intégrité et l'origine du paquet.
- La deuxième partie ajoute les sources Docker à la liste des sources APT (Advanced Package Tool).
- ultime
sudo apt-get update
Mettre à jour la liste des sources logicielles pour activer les sources Docker nouvellement ajoutées.
Installer le moteur Docker :
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
Installation du moteur Docker et des composants associés.docker-ce
Le moteur de Docker Community Edition.docker-ce-cli
: client de ligne de commande Docker.containerd.io
Les dépendances : les dépendances sous-jacentes de Docker au moment de l'exécution du conteneur.docker-buildx-plugin
: plugin Docker Buildx pour la construction d'images Docker multi-architectures.docker-compose-plugin
Docker Compose : plugin Docker Compose pour la gestion d'applications Docker multi-conteneurs.-y
: Confirme automatiquement toutes les opérations.
Installer le gestionnaire de conteneurs Dockge Docker.
Le répertoire de données de Dockge se trouve par défaut dans le répertoire /opt/dockge
et les données relatives à Docker se trouvent également dans le répertoire /opt
Le catalogue est facile à gérer.
sudo mkdir -p /opt/stacks /opt/dockge
cd /opt/dockge
sudo curl https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml –output compose.yaml
docker compose up -d
sudo mkdir -p /opt/stacks /opt/dockge
Création d'un catalogue : Création d'un catalogue/opt/stacks
répondre en chantant/opt/dockge
Il est utilisé pour stocker les fichiers liés à Dockge.-p
signifie que si le répertoire parent n'existe pas, il sera également créé.cd /opt/dockge
: changer le répertoire de travail en cours en/opt/dockge
.sudo curl https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml –output compose.yaml
Télécharger l'ouvrage de Dockgecompose.yaml
Documentation.compose.yaml
est un fichier de configuration pour Docker Compose qui définit la configuration du conteneur Docker.docker compose up -d
Démarrer le conteneur Dockge à l'aide de Docker Compose.up
pour démarrer le conteneur.-d
indique un fonctionnement en arrière-plan.
Vous pouvez maintenant accéder à l'interface d'administration de Dockge via un navigateur pour réaliser les étapes restantes de la gestion des conteneurs Docker. Si vous ne connaissez pas l'adresse IP du serveur, vous pouvez vérifier les paramètres réseau du serveur. L'adresse d'accès du navigateur est http://服务器IP:5001
Par exemple, l'IP du serveur de Digital Spaceport est la même que celle du serveur de Digital Spaceport. Par exemple, l'IP du serveur de Digital Spaceport est la suivante 192.168.1.200
L'adresse d'accès est alors http://192.168.1.200:5001
. Lors de votre première visite, vous devrez définir un nom d'utilisateur et un mot de passe. L'étape suivante consiste à créer le OpenwebUI du conteneur Docker.
Collez ce qui suit dans l'éditeur Compose de Dockge en tant que configuration Compose pour OpenwebUI :
version: “3.3”
services:
open-webui:
ports:
– 7000:8080
volumes:
– open-webui:/app/backend/data
container_name: open-webui
restart: always
image: ghcr.io/open-webui/open-webui:latest
volumes:
open-webui: {}
networks:
dockge_default:
external: true
- Cette configuration Compose définit un fichier appelé
open-webui
Conteneur Docker pour l'exécution d'OpenWEBUI.version: "3.3"
Version du fichier Docker Compose.services
Définir la liste des services.open-webui
Nom du service.ports
Port mapping : mappage du port 8080 du conteneur au port 7000 de l'hôte.volumes
Le volume de données monte le disque dur de l'hôte.open-webui
Le volume est monté dans le répertoire/app/backend/data
pour le stockage permanent des données d'OpenWEBUI.container_name
Nom du conteneur : nom du conteneur, fixé àopen-webui
.restart: always
Le conteneur est toujours redémarré automatiquement.image: ghcr.io/open-webui/open-webui:latest
: L'image Docker utilisée.ghcr.io/open-webui/open-webui:latest
est la dernière image Docker pour OpenWEBUI.
volumes
Définir le volume de données.open-webui: {}
Création d'un fichier nomméopen-webui
du volume de données.
networks
: Définir les réseaux.dockge_default
Nom du réseau.external: true
Utilisation de réseaux externesdockge_default
Par défaut, Dockge crée un fichier appelédockge_default
du réseau.
Cliquez sur "save" et "run". La première exécution sera lente car vous devez télécharger l'image Docker. Pour mettre à jour l'image OpenWEBUI plus tard, il suffit de cliquer sur le bouton "update" dans l'interface Docker. Une fois le conteneur démarré, visitez la page http://服务器IP:7000
Vous pourrez ouvrir l'interface OpenWEBUI. Par exemple, l'IP du serveur de Digital Spaceport est la suivante 192.168.1.200
L'adresse d'accès est alors http://192.168.1.200:7000
. Lors de votre première visite, vous devrez définir un nom d'utilisateur et un mot de passe, qu'il est important de ne pas oublier. Il est important de s'en souvenir. dès maintenant C'est presque terminé ! Ouf !Ouf !)
Connecter OpenWEBUI à Ollama
Sur la page "/admin/settings" -> "connections" de l'interface d'administration OpenWEBUI, cliquez sur le signe "+" pour ajouter une nouvelle connexion serveur. Remplissez l'adresse du serveur 服务器IP:11434
. Par exemple.192.168.1.200:11434
(Notez la substitution de l'adresse IP de votre propre serveur). (Veillez à la remplacer par l'adresse IP de votre propre serveur). Si la connexion est réussie, l'interface OpenWEBUI affichera un message vert "connexion réussie".
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-8 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/d1b092da0f515cb.png)
Une fois connecté, cliquez sur l'icône "Connection Manager" pour voir les serveurs Ollama connectés. Si le modèle Deepseek a déjà été téléchargé, vous le verrez dans le menu déroulant "Supprimer le modèle". deepseek-r1:671b
Modèles.
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-9 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/239a455d17f0f2e.png)
Félicitations, c'est presque terminé ! Mais Ne quittez pas précipitamment la page des paramètres !
Réglage des paramètres avancés
Cliquez sur l'icône Modifier (stylo).
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-10 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/16089d903a6de21.png)
Les paramètres avancés peuvent désormais être modifiés. N'oubliez pas de cliquer sur "ENREGISTRER" lorsque vous avez terminé.
- Nombre de GPU (GPU)Si vous n'avez pas de carte GPU, remplacez ce paramètre par
0
. - Effort de raisonnement: Facultatif
low
(bas)medium
(M) ouhigh
(élevé), la valeur par défaut estmedium
(au centre). - Contexte Longueur: Réglé sur
16364
La longueur de contexte de 16 000 n'est pas un problème. Les contextes plus longs nécessitent plus de mémoire ou de mémoire vive du GPU. - Nombre de fils (num_thread): Réglé sur
62
En outre, le système dispose de 2 cœurs de CPU réservés au système. - Activer le verrouillage de la mémoire (use_mlock)( ) : Cette option peut être activée pour éviter que les données de la mémoire ne soient transférées sur le disque et n'affectent les performances. (Le verrouillage de la mémoire (mlock) empêche les pages de mémoire d'être transférées sur le disque par le système d'exploitation, ce qui améliore l'efficacité de l'application, mais augmente l'empreinte mémoire.)
Les autres paramètres peuvent être réglés conformément aux instructions figurant sur la carte du modèle. Note : N'essayez pas d'utiliser la longueur totale du contexte de 160K à moins que vous ne disposiez de 2TB de RAM ! Même si elle fonctionne, la vitesse beaucoup Lent.
IMPORTANT : N'oubliez pas d'appuyer sur "SAUVEGARDER".
Configuration des paramètres de l'utilisateur
Cliquez sur "Paramètres utilisateur" pour modifier les préférences de l'utilisateur. Il est recommandé de régler le paramètre "garder en vie" sur une période plus longue, par exemple 3 heures. Cliquez sur "Enregistrer" après avoir modifié les paramètres.
![[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型-1 [转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型](https://aisharenet.com/wp-content/uploads/2025/02/6c74468621bc976.jpg)
Les paramètres de l'utilisateur se confondent quelque peu avec les paramètres précédents de l'administrateur, il faut donc veiller à les distinguer.
Effectuer un test.
Mon Dieu, je n'arrive pas à croire que tu sois arrivé jusqu'ici ! C'est fantastique, Digital Spaceport vous admire ! Cliquez sur "new chat" dans le coin supérieur gauche de l'interface OpenWEBUI. La liste des modèles devrait déjà contenir deepseek-r1:671b
Oui, c'est vrai. Essayez d'envoyer un "hello" au hasard. Ça a marché !
Test de performance du Deepseek R1 671b
Félicitations pour l'installation et le fonctionnement réussis du service de modèle local à grande échelle Ollama + OpenWEBUI ! Digital Spaceport pense qu'il y a beaucoup d'autres excellentes solutions pour l'exécution de grands modèles locaux, telles que llama.cpp
, exo
répondre en chantant vLLM
Les tutoriels seront publiés lorsque Digital Spaceport aura approfondi le sujet. Les tutoriels seront publiés lorsque Digital Spaceport aura approfondi ses connaissances. llama.cpp
Il pourrait être le prochain, Digital Spaceport a récemment compilé, testé et exécuté l'application llama.cpp
Le résultat est très bon ! Mais il y a trop de paramètres à régler. vLLM
C'est un peu compliqué.exo
C'est assez simple, mais il continue à planter après le lancement et je n'ai pas encore eu le temps de le déboguer. Quoi qu'il en soit, comme on dit... Restez à l'écoute ! (BIENTÔT !)
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Postes connexes
Pas de commentaires...