UHR-BAT2-8B-20K

English | 简体中文

Hugging Face · ModelScope · Evaluation details

A full-weight Qwen3-VL-8B fine-tune for remote-sensing visual question answering.

This checkpoint keeps the native Qwen3-VL architecture and loads directly with Transformers. Training used a 20,000-record GeoLLaVA manifest, with the vision encoder frozen and the merger and LLM trainable. The original final export is qwen3vl-8b-geollava-ft3-quota20k-1gpu.

Model and training

Item Value
Base Qwen/Qwen3-VL-8B-Instruct
Data GeoLLaVA-Data, 20,000 training records
Weights Full BF16 safetensors, 4 file(s)
Observed endpoint 1,250 optimizer steps, epoch 1
Optimizer / learning rate Adafactor / 1e-05
Per-device batch / accumulation 1 / 16
Image budget / maximum sequence length 784–1,310,720 pixels / 8,192 tokens (launcher settings)

The trainer state records one completed epoch. This is the final checkpoint; no validation-selected best checkpoint was recorded. Details are in training_config.json and training_state_summary.json. The original subset manifest is not included; its historical source path is currently unavailable, so the exact selection recipe has not been reconstructed.

Archived evaluation results

The following results were recounted from existing prediction records on 2026-10-14. They use greedy answer generation and the archived answer parsers. They were not rerun for this release. The existing 8B 10K UHR-BAT2 card uses a different corrected candidate-logit/strict-option scoring protocol, so the tables should not be combined into a controlled comparison.

Dataset Archived accuracy Correct / Total
RSHR-Bench 50.10% 968 / 1,932
MME-RealWorld Remote Sensing 55.89% 2,089 / 3,738

MME covers the full 3,738-record remote-sensing subset. Legacy XLRS and LRS-VQA results, category counts and source hashes are in EVALUATION.md and evaluation_results.json. The legacy XLRS single-letter parser does not support strict multi-select option-set scoring.

Quick start

Use Python 3.10+ and a CUDA-enabled PyTorch installation.

pip install -r requirements.txt
python inference.py --model FelixKAI/UHR-BAT2-8B-20K --image /path/to/image.jpg --question "Describe this remote-sensing image."
from transformers import AutoProcessor, Qwen3VLForConditionalGeneration
model_id = "FelixKAI/UHR-BAT2-8B-20K"
processor = AutoProcessor.from_pretrained(model_id)
model = Qwen3VLForConditionalGeneration.from_pretrained(
    model_id, dtype="auto", device_map="auto", attn_implementation="sdpa"
).eval()

For ModelScope, download the same package and use its local path with Transformers or inference.py --model:

pip install modelscope
from modelscope import snapshot_download
local_path = snapshot_download("KAIWANG/UHR-BAT2-8B-20K")

Loading and short image-generation checks are recorded in validation.json; file hashes and tensor metadata are in release_manifest.json.

Limitations and attribution

Images are resized within the pixel budget. These archived results do not establish native full-resolution performance or geographic-disjoint generalization. The exact training selection and overlap have not been fully reconstructed. There is no controlled improvement claim over the unfine-tuned base model or between the 20K and 10K versions. Counting, small-object recognition and spatial reasoning can fail.

Released under Apache-2.0, following the base model license. See NOTICE. Training and evaluation datasets are not redistributed. We acknowledge the Qwen team, GeoLLaVA contributors and the benchmark authors.

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

Model tree for FelixKAI/UHR-BAT2-8B-20K

Finetuned
(668)
this model