Views
No views yet

This is a fully merged model — the LoRA adapter weights have been merged directly into the base model weights.✅ No adapter loading needed. Load directly withtransformers,vLLM, orSGLang.💾 Size: ~17 GB (4 safetensor shards)🔌 Lightweight adapter version: E27085921/HIKARI-Antares-8B-SkinCaption-STS-LoRA (~1.2 GB)
⭐ E27085921/HIKARI-Vega-8B-SkinCaption-Fused — BLEU-4: 29.33, same merged-init without STS
w_ans × w_reason) to emphasize diagnostic tokens, combined with IBR regularization (β × ||LoRA||²) to prevent overfitting.| Property | Value |
|---|---|
| Task | Clinical caption generation + STS ablation (Stage 3) |
| Base model | Qwen/Qwen3-VL-8B-Thinking |
| Init strategy | Merged-Init (same as Vega) |
| STS | Selective Token Supervision + IBR regularization (β-weighted) |
| BLEU-4 | 0.61 (collapsed) |
| ROUGE-1 | 15.68 |
| Model type | Merged full model |
| Experiment | Init | STS | BLEU-4 | ROUGE-1 | Result |
|---|---|---|---|---|---|
| Way 1 — HIKARI-Rigel | checkpoint | ✗ | 9.82 | 38.90 | Catastrophic forgetting |
| Way 2 — HIKARI-Vega | merged | ✗ | 29.33 | 53.55 | Best ✅ |
| Way 1 + STS | checkpoint | ✓ | 0.00 | 5.03 | Complete collapse ❌ |
| Way 2 + STS (this model) | merged | ✓ | 0.61 | 15.68 | Collapse ❌ |
transformers1from transformers import Qwen3VLForConditionalGeneration, AutoProcessor
2import torch
3from PIL import Image
4
5model_id = "E27085921/HIKARI-Antares-8B-SkinCaption-STS"
6
7processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)
8model = Qwen3VLForConditionalGeneration.from_pretrained(
9 model_id, torch_dtype=torch.bfloat16, device_map="auto", trust_remote_code=True
10)
11
12image = Image.open("skin_lesion.jpg").convert("RGB")
13
14PROMPT = (
15 "Describe this skin lesion image in detail. Include information about its "
16 "appearance, possible diagnosis, and recommended examinations."
17)
18
19messages = [{"role": "user", "content": [
20 {"type": "image", "image": image},
21 {"type": "text", "text": PROMPT},
22]}]
23text = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
24inputs = processor(text=[text], images=[image], return_tensors="pt").to(model.device)
25
26with torch.no_grad():
27 out = model.generate(**inputs, max_new_tokens=256, temperature=0.0, do_sample=False)
28
29print(processor.batch_decode(out[:, inputs["input_ids"].shape[1]:], skip_special_tokens=True)[0].strip())
30# Note: output quality is poor due to STS-induced training collapse1from peft import PeftModel
2from transformers import Qwen3VLForConditionalGeneration
3import torch
4
5base = Qwen3VLForConditionalGeneration.from_pretrained(
6 "Qwen/Qwen3-VL-8B-Thinking", torch_dtype=torch.bfloat16, device_map="auto"
7)
8model = PeftModel.from_pretrained(base, "E27085921/HIKARI-Antares-8B-SkinCaption-STS-LoRA")1@misc{hikari2026,
2 title = {HIKARI: RAG-in-Training for Skin Disease Diagnosis
3 with Cascaded Vision-Language Models},
4 author = {Watin Promfiy and Pawitra Boonprasart},
5 year = {2026},
6 institution = {King Mongkut's Institute of Technology Ladkrabang,
7 Department of Information Technology, Bangkok, Thailand}
8}