Text Generation
Transformers
Safetensors
nemotron_h
nvidia
nemotron
nemotron-3.5
antislop
ftpo
creative-writing
mamba
Mixture of Experts
conversational
custom_code
Instructions to use thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO", trust_remote_code=True) messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO", trust_remote_code=True) model = AutoModelForCausalLM.from_pretrained("thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO", trust_remote_code=True, 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=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO
- SGLang
How to use thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO 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 "thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO" \ --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": "thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO", "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 "thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO" \ --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": "thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO with Docker Model Runner:
docker model run hf.co/thoughtworks/Nemotron-3.5-30B-A3B-Antislop-FTPO
| from vllm.reasoning.abs_reasoning_parsers import ReasoningParserManager | |
| from vllm.reasoning.deepseek_r1_reasoning_parser import DeepSeekR1ReasoningParser | |
| class UltraV3ReasoningParser(DeepSeekR1ReasoningParser): | |
| def extract_reasoning(self, model_output, request): | |
| reasoning_content, final_content = super().extract_reasoning( | |
| model_output, request | |
| ) | |
| if ( | |
| hasattr(request, "chat_template_kwargs") | |
| and request.chat_template_kwargs | |
| and ( | |
| request.chat_template_kwargs.get("enable_thinking") is False | |
| or request.chat_template_kwargs.get("force_nonempty_content") is True | |
| ) | |
| and final_content is None | |
| ): | |
| """ | |
| The original `deepseek_r1` reasoning parser this inherits from will automatically put everything in the reasoning content when it cannot parse out reasoning. This was fine for the DeepSeek R1 model that was not intended to be used without reasoning. | |
| 1. Since the Nemotron 3 Nano and Super both have thinking off modes modulated by "enable_thinking=false" in the chat template kwargs, this change instead which will properly place the content in cases where there is no thinking enabled via config. | |
| 2. There are rare cases where the model will output only reasoning without an end-think token `</think>` (e.g. reasoning exceeds max length), which results in empty content returned. End users may want to unilaterally avoid such cases and always have a content response even if the model does not finish its reasoning. | |
| """ | |
| # Put all nonempty content into the content, rather than return content | |
| reasoning_content, final_content = None, reasoning_content | |
| return reasoning_content, final_content |