Views
No views yet
Qwen/Qwen2.5-VL-7B-Instruct, fine-tuned on wet-lab supervision prompts for protocol monitoring, step prediction, pipette mistake detection, spatial grounding, protocol generation, and protocol VQA over egocentric and third-person lab videos; it was trained on the prompt families included in this repository, so it should work best with the same JSON-style monitoring and benchmark prompts and should be expected to generalize less reliably to prompts outside that distribution.Qwen/Qwen2.5-VL-7B-Instruct32640.05q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, and down_projcheckpoint-750lab_supervision_25k_train.jsonl / lab_supervision_25k_val.jsonl2.08 GPUs (global_world_size=8)1432 examples per optimizer step11e-40.03adamw_torch_fused0.1(0.9, 0.95)1.0bfloat164096freeze_vit=true)freeze_aligner=true)250 steps250 steps1swift infer \
2 --model Qwen/Qwen2.5-VL-7B-Instruct \
3 --adapters labos1/labos-vlm-7b \
4 --infer_backend pt1swift infer \
2 --model Qwen/Qwen2.5-VL-7B-Instruct \
3 --adapters /data/david/models/release/labos-vlm-7b \
4 --infer_backend pt1from peft import PeftModel
2from transformers import Qwen2_5_VLForConditionalGeneration, AutoProcessor
3
4base_model = "Qwen/Qwen2.5-VL-7B-Instruct"
5adapter = "labos1/labos-vlm-7b"
6
7processor = AutoProcessor.from_pretrained(base_model)
8model = Qwen2_5_VLForConditionalGeneration.from_pretrained(
9 base_model,
10 torch_dtype="auto",
11 device_map="auto",
12)
13model = PeftModel.from_pretrained(model, adapter)1You are a real-time lab assistant monitoring a scientist's wet-lab procedure from short video windows.
2
3The current protocol state/history is provided below. Watch the current window and update the state.
4
5Report protocol errors only when supported by the visible time window or state.
6
7Ignore irrelevant unknown keys in the state JSON.
8
9Compare the protocol order, prior history, and watched window.
10
11Identify the main protocol step being performed in this watched video window.
12
13STATE:
14{"equipment":["P20 pipette","sterile tips","microcentrifuge tube rack"],"history":[{"step":"1","tas":20,"tds":20}],"objects":{},"on":"2","protocol":[{"desc":"Place the tubes in a clean rack.","order":1,"step":"1"},{"desc":"Attach a new sterile pipette tip.","order":2,"step":"2"},{"desc":"Aspirate reagent without touching the tube wall.","order":3,"step":"3"}],"protocol_summary":"Demonstration of aseptic pipetting technique.","reagents":["sample buffer"]}
15
16Return strict JSON only.
17
18## Response Format
19{
20 "explanation": "string",
21 "observed_step_id": "string or null"
22}
23
24## Question
25Which protocol step is being performed in this video window?python generate_monitoring_prompts.py from this folder to print example monitoring prompts that match the training/evaluation prompt style.