Downloads · 30 days
7
30% of all-time downloads
abejarano/qwen25vl-container-defects-lora
qwen25vl-container-defects-lora is a image-text-to-text model from abejarano. Use it for the image-text-to-text task on the model card, and read the license before you ship it in a product. It is set up for peft. The card lists the license as other.
LoRA adapter for Qwen2.5-VL-3B-Instruct, fine-tuned to detect and classify visible defects on shipping containers (dents, rust, scratches, holes, frame damage) directly from a photo. Built for ContainerHub.
Downloads · 30 days
7
30% of all-time downloads
All-time downloads
23
Public
Repo size
340 MB
Likes
0
Public
Click a slice to open those files.
.safetensors329 MB · 95%
From the Hugging Face model README
LoRA adapter for Qwen2.5-VL-3B-Instruct, fine-tuned to detect and classify visible
defects on shipping containers (dents, rust, scratches, holes, frame damage) directly
from a photo. Built for ContainerHub.
Given a photo of a shipping container, the model returns a comma-separated list of
the visible defect labels (e.g. Dent, Rusty, Scratch). It is a LoRA adapter — load
it on top of the base vision-language model, not standalone.
Qwen/Qwen2.5-VL-3B-Instruct)Multi-label defect classification of shipping container photos, prompted as:
"What defect on the shipping container?" → free-text answer listing defect labels.
Not intended for defect severity grading, safety certification, or any decision where a missed or false defect classification has safety/financial consequences without human review. Not validated on container types, lighting conditions, or camera angles outside the training distribution.
Evaluate on a held-out set of container images before relying on this model for automated decisions. Keep a human in the loop for edge cases.
from unsloth import FastVisionModel
from PIL import Image
model, tokenizer = FastVisionModel.from_pretrained(
"abejarano/qwen25vl-container-defects-lora",
load_in_4bit=True,
)
FastVisionModel.for_inference(model)
image = Image.open("container.jpg").convert("RGB")
messages = [
{"role": "user", "content": [
{"type": "image", "image": image},
{"type": "text", "text": "What defect on the shipping container?"},
]}
]
inputs = tokenizer.apply_chat_template(
messages, add_generation_prompt=True, tokenize=True,
return_dict=True, return_tensors="pt",
).to("cuda")
output = model.generate(**inputs, max_new_tokens=150, do_sample=False)
print(tokenizer.decode(output[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))
abejarano/container-defects-qwen —
1,016 container images converted to Qwen conversational format, derived from
howell0123/shipping_container.
Labels: Dent, Rusty, Scratch, Hole, Deframe (multi-label, comma-separated).
Fine-tuned with Unsloth + LoRA on a single
RTX 4090 (RunPod, unsloth/unsloth:latest template).
Images decoded to PIL from the dataset's embedded bytes at load time; conversation
format {"role": ..., "content": [{"type": "image"/"text", ...}]} fed directly to
UnslothVisionDataCollator.
adapter_model.safetensors)Informal validation only: predictions (greedy decoding) were spot-checked against ground-truth labels on training examples. No dedicated held-out evaluation split exists yet — see Limitations above.
Qwen2.5-VL-3B-Instruct (vision-language transformer) with LoRA adapters, trained via supervised fine-tuning (SFT) framed as multi-label defect classification through free-text generation.
SFTTrainer), peft 0.18.1, torch 2.10.0+cu128