--- base_model: nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-BF16 library_name: peft license: other tags: - lora - peft - adapter - adaption --- # adaption_adventure_travel_assistant ## Model Training A LORA adapter for `nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-BF16`. This model was trained with SFT using [Adaption](https://adaptionlabs.ai)'s AutoScientist on the adventure_travel_assistant dataset. ![Training metrics](training-metrics.png) ### AutoScientist Config ```json { "job_id": "a1440533-e5fa-414f-86c6-bb263cf70568", "training_experiment_id": "1f1428e7-5c64-4e8f-9b1d-87dd40d124ca", "original_model_name": "nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-BF16", "trained_model_name": "adaption_adventure_travel_assistant", "training_method": "sft", "training_type": "lora", "data_format": "chat", "hyperparams": { "lora": "true", "lora_r": 8, "n_evals": 5, "n_epochs": 1, "batch_size": "max", "lora_alpha": 8, "lora_dropout": 0, "min_lr_ratio": 0.1, "warmup_ratio": 0.1, "weight_decay": 0, "learning_rate": 0.0001, "max_grad_norm": 2, "base_model_size": "120B", "train_on_inputs": "false", "training_method": "sft", "lr_scheduler_type": "cosine", "scheduler_num_cycles": 0.5, "lora_trainable_modules": "q_proj,v_proj" } } ``` ## Training Data The model was trained on 8,724 rows of adapted data with the following domain distribution: travel (56%), geography (6%), code (4%), fitness-sports (4%), culture (3%), math (3%), academic-education (3%), corporate-business (3%), cooking (3%), history (3%), writing-editing-communication (3%), animal-nature (3%), transportation (2%), how-to (1%), science (0%), entertainment (0%), sports (0%), governance (0%), technology (0%), language (0%), medical (0%), religion (0%), product-advice (0%), personal-finance (0%), architecture-design (0%), games (0%), legal (0%), music (0%), career-workplace (0%), news (0%), marketing (0%), art (0%), social (0%), agriculture (0%), dating (0%), literature (0%), fashion-beauty (0%), parenting-family (0%), data-analysis-visualization (0%). ## Model Evaluation The model was evaluated on an in-distribution held-out test set as well as a broader domain-specific test set to measure generalization. ![Win rates](win-rates.png) | Domain | Win rate vs. base model | | --- | --- | | travel | 89% | ## How to use ```bash pip install torch transformers peft ``` ```python import torch from transformers import AutoModelForCausalLM, AutoTokenizer from peft import PeftModel BASE = "nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-BF16" ADAPTER = "" device = "cuda" if torch.cuda.is_available() else "cpu" dtype = torch.float32 if device == "cpu" else torch.bfloat16 base = AutoModelForCausalLM.from_pretrained(BASE, dtype=dtype).to(device) model = PeftModel.from_pretrained(base, ADAPTER) # Optional: merge the LoRA weights into the base for faster inference model = model.merge_and_unload() model.eval() tokenizer = AutoTokenizer.from_pretrained(BASE) messages = [{"role": "user", "content": "Hello!"}] text = tokenizer.apply_chat_template( messages, tokenize=False, add_generation_prompt=True) inputs = tokenizer(text, return_tensors="pt").to(device) with torch.inference_mode(): out = model.generate(**inputs, max_new_tokens=512) print(tokenizer.decode(out[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True)) ```