🧩NVIDIA Nemotron 3 Nano - Guide d'exécution

Exécutez et affinez NVIDIA Nemotron 3 Nano localement sur votre appareil !

NVIDIA publie Nemotron 3 Nano, un modèle hybride MoE de 30 milliards de paramètres avec ~3,6 milliards de paramètres actifs - conçu pour des tâches de codage, de mathématiques et d'agentivité rapides et précises. Il dispose d'un fenêtre de contexte de 1M et est le meilleur de sa catégorie de taille sur SWE-Bench, GPQA Diamond, raisonnement, chat et débit.

Nemotron 3 Nano fonctionne sur 24 Go de RAM/VRAM (ou mémoire unifiée) et vous pouvez maintenant affiner l'exécuter localement. Merci à NVIDIA d'avoir fourni à Unsloth un support dès le jour zéro.

Tutoriel d'exécutionAffinage de Nano 3

NVIDIA Nemotron 3 Nano GGUF pour exécuter : unsloth/Nemotron-3-Nano-30B-A3B-GGUFarrow-up-right Nous avons également téléchargé BF16arrow-up-right et FP8arrow-up-right variantes.

⚙️ Guide d'utilisation

NVIDIA recommande ces paramètres pour l'inférence :

Chat/instructions générales (par défaut) :

  • temperature = 1.0

  • top_p = 1.0

Cas d'utilisation d'appel d'outils :

  • température = 0.6

  • top_p = 0.95

Pour la plupart des utilisations locales, définissez :

  • max_new_tokens = 32,768 en 262,144 pour les invites standard avec un maximum de 1M de tokens

  • Augmentez pour un raisonnement profond ou une génération longue selon ce que votre RAM/VRAM permet.

Le format de modèle de chat se trouve lorsque nous utilisons ce qui suit :

tokenizer.apply_chat_template([
    {"role" : "user", "content" : "What is 1+1?"},
    {"role" : "assistant", "content" : "2"},
    {"role" : "user", "content" : "What is 2+2?"}
    ], add_generation_prompt = True, tokenize = False,
)

Format de modèle de chat Nemotron 3 :

circle-info

Nemotron 3 utilise <think> avec l'ID de token 12 et </think> avec l'ID de token 13 pour le raisonnement. Utilisez --special pour voir les tokens pour llama.cpp. Vous pourriez aussi avoir besoin de --verbose-prompt pour voir <think> puisqu'il est préfixé.

🖥️ Exécuter Nemotron-3-Nano-30B-A3B

Selon votre cas d'utilisation, vous devrez utiliser des paramètres différents. Certains GGUF ont une taille similaire parce que l'architecture du modèle (comme gpt-oss) a des dimensions non divisibles par 128, donc certaines parties ne peuvent pas être quantifiées en bits inférieurs.

Tutoriel Llama.cpp (GGUF) :

Instructions pour exécuter dans llama.cpp (notez que nous utiliserons du 4 bits pour tenir sur la plupart des appareils) :

1

Obtenez le dernier llama.cpp sur GitHub iciarrow-up-right. Vous pouvez suivre les instructions de compilation ci-dessous également. Changez -DGGML_CUDA=ON en -DGGML_CUDA=OFF si vous n'avez pas de GPU ou si vous voulez simplement une inférence CPU.

2

Vous pouvez tirer directement depuis Hugging Face. Vous pouvez augmenter le contexte à 1M selon ce que votre RAM/VRAM permet.

Suivez ceci pour cas d'instruction généraux :

Suivez ceci pour appel d'outils généraux :

3

Téléchargez le modèle via (après avoir installé pip install huggingface_hub hf_transfer ). Vous pouvez choisir UD-Q4_K_XL ou d'autres versions quantifiées.

4

Ensuite, exécutez le modèle en mode conversation :

Ajustez également fenêtre de contexte selon les besoins. Assurez-vous que votre matériel peut gérer plus qu'une fenêtre de contexte de 256K. La définir à 1M peut déclencher un OOM CUDA et provoquer un crash, c'est pourquoi la valeur par défaut est 262 144.

5

Nemotron 3 utilise <think> avec l'ID de token 12 et </think> avec l'ID de token 13 pour le raisonnement. Utilisez --special pour voir les tokens pour llama.cpp. Vous pourriez aussi avoir besoin de --verbose-prompt pour voir <think> puisqu'il est préfixé.

circle-check

🦥 Affinage de Nemotron 3 Nano et RL

Unsloth prend désormais en charge l'affinage de tous les modèles Nemotron, y compris Nemotron 3 Nano. Le modèle 30B ne tient pas sur un GPU Colab gratuit ; cependant, nous avons tout de même préparé un notebook Colab avec une A100 80 Go pour que vous puissiez l'affiner. L'affinage LoRA en 16 bits de Nemotron 3 Nano utilisera environ 60 Go de VRAM:

Concernant l'affinage des MoE - ce n'est probablement pas une bonne idée d'affiner la couche de routeur, donc nous l'avons désactivée par défaut. Si vous voulez maintenir ses capacités de raisonnement (optionnel), vous pouvez utiliser un mélange de réponses directes et d'exemples de chaîne de pensée. Utilisez au moins 75 % de raisonnement et 25 % sans raisonnement dans votre jeu de données pour que le modèle conserve ses capacités de raisonnement.

Apprentissage par renforcement + NeMo Gym

Nous avons travaillé avec l'équipe open-source de NVIDIA NeMo Gymarrow-up-right pour permettre la démocratisation des environnements RL. Notre collaboration permet un entraînement RL en rollout à tour unique pour de nombreux domaines d'intérêt, y compris les mathématiques, le codage, l'utilisation d'outils, etc., en utilisant des environnements d'entraînement et des jeux de données de NeMo Gym :

circle-check

🎉Llama-server service et déploiement

Pour déployer Nemotron 3 en production, nous utilisons llama-server Dans un nouveau terminal, par exemple via tmux, déployez le modèle via :

Lorsque vous exécutez ce qui précède, vous obtiendrez :

Puis, dans un nouveau terminal, après avoir fait pip install openai, faites :

Ce qui affichera

Benchmarks

Nemotron-3-Nano-30B-A3B est le modèle le plus performant sur tous les benchmarks, y compris le débit.

Mis à jour

Ce contenu vous a-t-il été utile ?