internvl3-1b-walk-v1-full-checkpoint

⚠️ This is a Full Checkpoint Backup

This repository contains the complete training checkpoint from InternVL fine-tuning, including:

  • Full model weights with embedded LoRA layers
  • Training checkpoints (checkpoint-900, checkpoint-950)
  • Tokenizer files
  • Training configs and states

Files Included

├── checkpoint-900/          # Training checkpoint at step 900
├── checkpoint-950/          # Training checkpoint at step 950
├── model-00001-of-00002.safetensors  # Full model weights (part 1)
├── model-00002-of-00002.safetensors  # Full model weights (part 2)
├── model.safetensors.index.json
├── config.json
├── generation_config.json
├── tokenizer files...
├── trainer_state.json
├── training_args.bin
└── train_results.json

How to Use This Checkpoint

Option 1: Load and Merge LoRA (Recommended)

import torch
import glob
from transformers import AutoModel, AutoTokenizer
from safetensors.torch import load_file

BASE_MODEL = "OpenGVLab/InternVL3-1B"
CHECKPOINT = "path/to/downloaded/checkpoint"

# Load base model
model = AutoModel.from_pretrained(BASE_MODEL, torch_dtype=torch.bfloat16, trust_remote_code=True, device_map="auto")
tokenizer = AutoTokenizer.from_pretrained(BASE_MODEL, trust_remote_code=True)

# Load checkpoint weights
safetensor_files = sorted(glob.glob(f"{CHECKPOINT}/model*.safetensors"))
all_weights = {}
for sf in safetensor_files:
    all_weights.update(load_file(sf))

# Separate and merge LoRA weights
model_state = model.state_dict()
for key, value in all_weights.items():
    if '.base_layer.' in key:
        # Find LoRA weights
        lora_a_key = key.replace('.base_layer.', '.lora_A.default.')
        lora_b_key = key.replace('.base_layer.', '.lora_B.default.')
        model_key = key.replace('base_model.model.', '').replace('.base_layer', '')
        
        if lora_a_key in all_weights and lora_b_key in all_weights:
            lora_a = all_weights[lora_a_key].float()
            lora_b = all_weights[lora_b_key].float()
            merged = value.float() + torch.matmul(lora_b, lora_a)
            if model_key in model_state:
                model_state[model_key] = merged.to(value.dtype)

model.load_state_dict(model_state)
print("✅ Model loaded with merged LoRA weights")

Option 2: Use Our PEFT Adapter (Easier)

For easier loading, use our converted PEFT adapter:

from peft import PeftModel
model = PeftModel.from_pretrained(base_model, "blind-assist/internvl2-5-4b-walk-lora-v2-100")

Training Details

Related Repositories

License

Same as base model (OpenGVLab/InternVL3-1B)

Downloads last month
3
Safetensors
Model size
1B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for blind-assist/internvl3-1b-walk-v1-full-checkpoint

Dataset used to train blind-assist/internvl3-1b-walk-v1-full-checkpoint