Downloads · 30 days
0
mamounyosef/sign-language-bridge
sign-language-bridge is a video-text-to-text model from mamounyosef. Use it for the video-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 apache-2.0.
LoRA / RSLoRA fine-tune of Qwen/Qwen3-VL-2B-Instruct for continuous American Sign Language (ASL) to English translation.
Downloads · 30 days
0
Access
Public
Updated May 18, 2026
Repo size
832 MB
Likes
2
Trending 1
Click a slice to open those files.
.safetensors756 MB · 91%
From the Hugging Face model README
LoRA / RSLoRA fine-tune of
Qwen/Qwen3-VL-2B-Instruct
for continuous American Sign Language (ASL) to English translation.
Checkpoint corresponds to global optimiser step 4,610 (selected on validation loss). Source code, full technical report, and training pipeline: github.com/mamounyosef/sign-language-bridge.
| Metric | Value |
|---|---|
| Test loss | 2.7896 |
| Perplexity | 16.28 |
| BLEU-1 | 19.76 |
| BLEU-2 | 6.95 |
| BLEU-4 | 1.64 |
| chrF | 17.42 |
| ROUGE-L | 10.43 |
| METEOR | 9.71 |
| WER (%) | 112.51 |
| Distinct-2 | 0.103 |
Numbers are reported on a custom 90/5/5 stratified split, not the official How2Sign / OpenASL splits, and are therefore not directly comparable to published results on those corpora. See the GitHub repo and the technical report for the full evaluation protocol and the data-cleaning passes that drove the custom split.
The model produces fluent English in the register of the target captions and often captures the meaning of the signed input, but the word-level overlap with the references is modest.
adapter/
adapter_config.json PEFT / LoRA configuration
adapter_model.safetensors LoRA weights + saved embedding & output-head modules
README.md PEFT auto-generated card
training_state.pt optimizer + scheduler states (per tier),
InfoNCE projection-head weights,
InfoNCE MoCo queues, RNG snapshots,
phase / step / epoch bookkeeping
training_state.pt is required only for resuming training or for reusing
the InfoNCE alignment. It is not needed for inference; loading the
adapter/ folder on top of the base model is sufficient to generate.
import torch
from transformers import AutoProcessor, AutoModelForImageTextToText
from peft import PeftModel
REPO_ID = "mamounyosef/sign-language-bridge"
BASE = "Qwen/Qwen3-VL-2B-Instruct"
processor = AutoProcessor.from_pretrained(BASE)
base = AutoModelForImageTextToText.from_pretrained(
BASE, torch_dtype=torch.bfloat16, device_map="auto",
)
model = PeftModel.from_pretrained(base, REPO_ID, subfolder="adapter")
model.eval()
# `video` should be a tensor / list of frames preprocessed by `processor`.
# For best results, replicate the training-time preprocessing:
# 1) pose-guided signer crop (MediaPipe pose bbox)
# 2) CLAHE on L-channel in LAB (clip limit 2.0, 8x8 tile grid)
# 3) MediaPipe landmark overlay (21 keypoints/hand + 6 upper-body joints)
# See https://github.com/mamounyosef/sign-language-bridge for the exact code.
messages = [{
"role": "user",
"content": [
{"type": "video", "video": video},
{"type": "text", "text": "Translate the signed sentence to English."},
],
}]
inputs = processor.apply_chat_template(
messages, add_generation_prompt=True, return_tensors="pt", tokenize=True,
).to(model.device)
out = model.generate(
**inputs,
max_new_tokens=32,
num_beams=5,
length_penalty=0.6,
no_repeat_ngram_size=4,
repetition_penalty=1.1,
)
print(processor.batch_decode(out, skip_special_tokens=True)[0])
Qwen/Qwen3-VL-2B-Instruct (2B parameters: 24-layer vision
tower, 28-layer Qwen3 decoder, M-RoPE, DeepStack mergers at vision layers
5 / 11 / 17).modules_to_save)For full details, see the technical report and source code in the GitHub repository.
| Parameter | Value |
|---|---|
| Beam size | 5 |
| Length penalty | 0.6 |
| No-repeat n-gram | 4 |
| Repetition penalty | 1.1 |
| Max new tokens | 32 |
Both datasets are subject to their own upstream terms of use. This repository does not redistribute the raw videos.
Qwen/Qwen3-VL-2B-Instruct
is also under Apache 2.0 (upstream LICENSE).
Use of this adapter, together with the base model, remains subject to
Qwen's Apache 2.0 terms.peft and
🤗 transformers.If you use this model or its results, please cite the project repository:
@misc{yosef2026signbridge,
author = {Ma'moun Yosef},
title = {sign-language-bridge: Fine-Tuning Qwen3-VL-2B for ASL to
English Translation},
year = {2026},
howpublished = {\url{https://github.com/mamounyosef/sign-language-bridge}}
}
and the base model:
@article{qwen3vl2025,
author = {{Qwen Team}},
title = {{Qwen3-VL} Technical Report},
journal = {arXiv preprint arXiv:2511.21631},
year = {2025}
}