Instructions to use nvidia/Riva-Translate-4B-Instruct-v2 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use nvidia/Riva-Translate-4B-Instruct-v2 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="nvidia/Riva-Translate-4B-Instruct-v2") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("nvidia/Riva-Translate-4B-Instruct-v2") model = AutoModelForCausalLM.from_pretrained("nvidia/Riva-Translate-4B-Instruct-v2", device_map="auto") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=256) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use nvidia/Riva-Translate-4B-Instruct-v2 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "nvidia/Riva-Translate-4B-Instruct-v2" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nvidia/Riva-Translate-4B-Instruct-v2", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/nvidia/Riva-Translate-4B-Instruct-v2
- SGLang
How to use nvidia/Riva-Translate-4B-Instruct-v2 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/Riva-Translate-4B-Instruct-v2" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nvidia/Riva-Translate-4B-Instruct-v2", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'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/Riva-Translate-4B-Instruct-v2" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nvidia/Riva-Translate-4B-Instruct-v2", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use nvidia/Riva-Translate-4B-Instruct-v2 with Docker Model Runner:
docker model run hf.co/nvidia/Riva-Translate-4B-Instruct-v2
Download chat_template.jinja from nvidia/Riva-Translate-4B-Instruct-v2: direct link, hf CLI and curl.
- Browser
- Download file 5.51 kB
-
https://huggingface.co/nvidia/Riva-Translate-4B-Instruct-v2/resolve/main/chat_template.jinja
- Command line
-
hf download hf://nvidia/Riva-Translate-4B-Instruct-v2/chat_template.jinja
-
curl -L -o chat_template.jinja https://huggingface.co/nvidia/Riva-Translate-4B-Instruct-v2/resolve/main/chat_template.jinja
5.51 kB
| {%- set language_pairs = {'en-zh-cn': {'source': 'English', 'target': 'Simplified Chinese'}, 'en-zh': {'source': 'English', 'target': 'Simplified Chinese'}, 'en-zh-tw': {'source': 'English', 'target': 'Traditional Chinese'}, 'en-ar': {'source': 'English', 'target': 'Arabic'}, 'en-de': {'source': 'English', 'target': 'German'}, 'en-es': {'source': 'English', 'target': 'European Spanish'}, 'en-es-es': {'source': 'English', 'target': 'European Spanish'}, 'en-es-us': {'source': 'English', 'target': 'Latin American Spanish'}, 'en-fr': {'source': 'English', 'target': 'French'}, 'en-ja': {'source': 'English', 'target': 'Japanese'}, 'en-ko': {'source': 'English', 'target': 'Korean'}, 'en-ru': {'source': 'English', 'target': 'Russian'}, 'en-pt': {'source': 'English', 'target': 'Brazilian Portuguese'}, 'en-pt-br': {'source': 'English', 'target': 'Brazilian Portuguese'}, 'en-pt-pt': {'source': 'English', 'target': 'European Portuguese'}, 'zh-en': {'source': 'Simplified Chinese', 'target': 'English'}, 'zh-cn-en': {'source': 'Simplified Chinese', 'target': 'English'}, 'zh-tw-en': {'source': 'Traditional Chinese', 'target': 'English'}, 'ar-en': {'source': 'Arabic', 'target': 'English'}, 'de-en': {'source': 'German', 'target': 'English'}, 'es-en': {'source': 'European Spanish', 'target': 'English'}, 'es-es-en': {'source': 'European Spanish', 'target': 'English'}, 'es-us-en': {'source': 'Latin American Spanish', 'target': 'English'}, 'fr-en': {'source': 'French', 'target': 'English'}, 'ja-en': {'source': 'Japanese', 'target': 'English'}, 'ko-en': {'source': 'Korean', 'target': 'English'}, 'ru-en': {'source': 'Russian', 'target': 'English'}, 'pt-en': {'source': 'Brazilian Portuguese', 'target': 'English'}, 'pt-br-en': {'source': 'Brazilian Portuguese', 'target': 'English'}, 'en-it': {'source': 'English', 'target': 'Italian'}, 'it-en': {'source': 'Italian', 'target': 'English'}, 'en-nl': {'source': 'English', 'target': 'Dutch'}, 'nl-en': {'source': 'Dutch', 'target': 'English'}, 'en-pl': {'source': 'English', 'target': 'Polish'}, 'pl-en': {'source': 'Polish', 'target': 'English'}, 'en-cs': {'source': 'English', 'target': 'Czech'}, 'cs-en': {'source': 'Czech', 'target': 'English'}, 'en-sv': {'source': 'English', 'target': 'Swedish'}, 'sv-en': {'source': 'Swedish', 'target': 'English'}, 'en-da': {'source': 'English', 'target': 'Danish'}, 'da-en': {'source': 'Danish', 'target': 'English'}, 'en-fi': {'source': 'English', 'target': 'Finnish'}, 'fi-en': {'source': 'Finnish', 'target': 'English'}, 'en-no': {'source': 'English', 'target': 'Norwegian'}, 'no-en': {'source': 'Norwegian', 'target': 'English'}, 'en-hu': {'source': 'English', 'target': 'Hungarian'}, 'hu-en': {'source': 'Hungarian', 'target': 'English'}, 'en-ro': {'source': 'English', 'target': 'Romanian'}, 'ro-en': {'source': 'Romanian', 'target': 'English'}, 'en-bg': {'source': 'English', 'target': 'Bulgarian'}, 'bg-en': {'source': 'Bulgarian', 'target': 'English'}, 'en-uk': {'source': 'English', 'target': 'Ukrainian'}, 'uk-en': {'source': 'Ukrainian', 'target': 'English'}, 'en-sk': {'source': 'English', 'target': 'Slovak'}, 'sk-en': {'source': 'Slovak', 'target': 'English'}, 'en-hr': {'source': 'English', 'target': 'Croatian'}, 'hr-en': {'source': 'Croatian', 'target': 'English'}, 'en-sl': {'source': 'English', 'target': 'Slovenian'}, 'sl-en': {'source': 'Slovenian', 'target': 'English'}, 'en-et': {'source': 'English', 'target': 'Estonian'}, 'et-en': {'source': 'Estonian', 'target': 'English'}, 'en-lv': {'source': 'English', 'target': 'Latvian'}, 'lv-en': {'source': 'Latvian', 'target': 'English'}, 'en-lt': {'source': 'English', 'target': 'Lithuanian'}, 'lt-en': {'source': 'Lithuanian', 'target': 'English'}, 'en-el': {'source': 'English', 'target': 'Greek'}, 'el-en': {'source': 'Greek', 'target': 'English'}, 'en-tr': {'source': 'English', 'target': 'Turkish'}, 'tr-en': {'source': 'Turkish', 'target': 'English'}, 'en-id': {'source': 'English', 'target': 'Indonesian'}, 'id-en': {'source': 'Indonesian', 'target': 'English'}, 'en-vi': {'source': 'English', 'target': 'Vietnamese'}, 'vi-en': {'source': 'Vietnamese', 'target': 'English'}, 'en-th': {'source': 'English', 'target': 'Thai'}, 'th-en': {'source': 'Thai', 'target': 'English'}, 'en-hi': {'source': 'English', 'target': 'Hindi'}, 'hi-en': {'source': 'Hindi', 'target': 'English'} } -%}{%- set system_message = '' -%}{%- set source_lang = '' -%}{%- set target_lang = '' -%}{%- if messages[0]['role'] == 'system' -%}{%- set lang_pair = messages[0]['content'] | trim -%}{%- set messages = messages[1:] -%}{%- if lang_pair in language_pairs -%}{%- set source_lang = language_pairs[lang_pair]['source'] -%}{%- set target_lang = language_pairs[lang_pair]['target'] -%}{%- set system_message = '' -%}{%- else -%}{%- set system_message = 'You are a translation expert.' -%}{%- endif -%}{%- endif -%}{{- '<s>System | |
| ' + system_message + '</s> | |
| ' -}}{%- for message in messages -%}{%- if (message['role'] in ['user']) != (loop.index0 % 2 == 0) -%}{{- raise_exception('Conversation roles must alternate between user and assistant') -}}{%- elif message['role'] == 'user' -%}{%- set user_content = (target_lang and 'Translate this into ' + target_lang + ': ' + message['content'] | trim or message['content'] | trim) -%}{{- '<s>User | |
| ' + user_content + '</s> | |
| ' -}}{%- elif message['role'] == 'assistant' -%}{{- '<s>Assistant | |
| ' + message['content'] | trim + '</s> | |
| ' -}}{%- endif -%}{%- endfor -%}{%- if add_generation_prompt -%}{{ '<s>Assistant | |
| ' }}{%- endif -%} |