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
-
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
(651)
this model