[RPM] Exécution locale de Deepseek R1 671b Large Models sur un serveur EPYC de 2000$.

[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型

 

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 大模型

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 大模型

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 大模型

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 updateMise à jour de la liste des sources de logiciels pour s'assurer que les derniers paquets peuvent être téléchargés.
  • sudo apt upgrade -yMise à 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 unzipInstallation de quelques logiciels Linux courants.
    • htopGestionnaire 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.
    • glancesUn outil de surveillance du système plus puissant que l'outil de surveillance de l'environnement. htop Fonctionnalité plus riche.
    • nanoLe 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 enp65s0np0Il s'agit d'une carte réseau externe.

[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型

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.200La passerelle du routeur est 192.168.1.1Il s'agit d'une configuration de réseau domestique très courante.

[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型

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.tgzTé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.tgzExtraire 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 ollamaCréation d'un fichier nommé ollama utilisateur du système pour l'exécution du service Ollama.
    • sudo useraddCommande de création d'un utilisateur : Commande de création d'un utilisateur.
    • -rPour créer un utilisateur système, l'UID et le GID sont automatiquement attribués.
    • -s /bin/falseInterdire aux utilisateurs de se connecter au système.
    • -UCré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 la ollama Groupes d'utilisateurs.
    • sudo usermodCommande de modification des informations sur l'utilisateur : Commande de modification des informations sur l'utilisateur.
    • -aAjouter au groupe d'utilisateurs au lieu d'ignorer.
    • -G ollama: Ajouter à la liste ollama 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_HOSTadresse 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_MODELSNombre maximum de modèles autorisés à être chargés par GPU
  • -OLLAMA_MAX_QUEUELongueur maximale de la file d'attente des demandes
  • -OLLAMA_MODELSRépertoire où sont stockés les fichiers du modèle
  • -OLLAMA_NUM_PARALLELNombre maximal de requêtes parallèles
  • -OLLAMA_NOPRUNENettoyage du cache du modèle : Pas de nettoyage du cache du modèle au démarrage
  • -OLLAMA_ORIGINSune 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_TYPEType 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_LIBRARYLes 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 que llama.cppexllama et al. (et autres auteurs))
  • -OLLAMA_GPU_OVERHEADEspace mémoire réservé par GPU (octets)
  • -OLLAMA_LOAD_TIMEOUTDé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 大模型

presse Ctrl+Xpuis 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-reloadPour 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émarrage ollama.service le cadre du grand modèle d'Ollama.
  • nprocAffichage du nombre de cœurs de l'unité centrale.

Les variables d'environnement sont maintenant configurées. nproc La commande doit indiquer le nombre 64Si 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 128Cela 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 96Si 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 64Si 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:671bTéléchargement à l'aide du client Ollama deepseek-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; doneCycle 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 runcDocker : liste des paquets liés à Docker qui peuvent être installés.
    • sudo apt-get remove $pkgDé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 -yInstallation du moteur Docker et des composants associés.
    • docker-ceLe moteur de Docker Community Edition.
    • docker-ce-cli: client de ligne de commande Docker.
    • containerd.ioLes 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-pluginDocker 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/dockgeCréation d'un catalogue : Création d'un catalogue /opt/stacks répondre en chantant /opt/dockgeIl 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.yamlTélécharger l'ouvrage de Dockge compose.yaml Documentation.compose.yaml est un fichier de configuration pour Docker Compose qui définit la configuration du conteneur Docker.
  • docker compose up -dDé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:5001Par 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.200L'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.
    • servicesDéfinir la liste des services.
      • open-webuiNom du service.
        • portsPort mapping : mappage du port 8080 du conteneur au port 7000 de l'hôte.
        • volumesLe 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_nameNom du conteneur : nom du conteneur, fixé à open-webui.
        • restart: alwaysLe 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.
    • volumesDé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_defaultNom du réseau.
        • external: trueUtilisation de réseaux externes dockge_defaultPar 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.200L'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 大模型

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 大模型

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 大模型

Les paramètres avancés peuvent désormais être modifiés. N'oubliez pas de cliquer sur "ENREGISTRER" lorsque vous avez terminé.
[转]用 2000 美元 EPYC 服务器本地跑起 Deepseek R1 671b 大模型

  • 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) ou high (élevé), la valeur par défaut est medium (au centre).
  • Contexte Longueur: Réglé sur 16364La 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 62En 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 大模型

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.cppexo répondre en chantant vLLMLes 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.cppLe 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

Postes connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...