Instructions to use nvidia/Nemotron-Mini-4B-Instruct with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use nvidia/Nemotron-Mini-4B-Instruct with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="nvidia/Nemotron-Mini-4B-Instruct")# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("nvidia/Nemotron-Mini-4B-Instruct", dtype="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps
- vLLM
How to use nvidia/Nemotron-Mini-4B-Instruct with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "nvidia/Nemotron-Mini-4B-Instruct" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nvidia/Nemotron-Mini-4B-Instruct", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/nvidia/Nemotron-Mini-4B-Instruct
- SGLang
How to use nvidia/Nemotron-Mini-4B-Instruct with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "nvidia/Nemotron-Mini-4B-Instruct" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nvidia/Nemotron-Mini-4B-Instruct", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "nvidia/Nemotron-Mini-4B-Instruct" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nvidia/Nemotron-Mini-4B-Instruct", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use nvidia/Nemotron-Mini-4B-Instruct with Docker Model Runner:
docker model run hf.co/nvidia/Nemotron-Mini-4B-Instruct
Update tokenizer_config.json
Hi @andrewwa-nvidia , thanks for creating this change.
I gave this a try, and noticed that the template doesn't terminate the string with eos_token.
I tried fine-tuning with your template, and the model does generate the expected output, but keeps going on and on after that until it hits the maximum number of generation tokens.
In LLaMa 3.1 template for example, they always add a <|eot_id|> at the end of each turn. So I made a minor modification to your template just to try, and this seems to fix the issue:
{%- if add_generation_prompt -%}{{ '<extra_id_1>Assistant\n' }}{%- else -%}{{- eos_token }}{%- endif -%}
Let me know what you think about this.
My concern is possible downstream effects on model accuracy (since I do not know if the model was trained with eos_token ending each turn, like Llama 3.1, or if there was some different format it was trained on. Let's see what the training team says about this..