Instructions to use OpenSportsLab/OSL-VQA-XFOUL-XVARS-lora with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use OpenSportsLab/OSL-VQA-XFOUL-XVARS-lora with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("base_model_videoChatGPT") model = PeftModel.from_pretrained(base_model, "OpenSportsLab/OSL-VQA-XFOUL-XVARS-lora") - Notebooks
- Google Colab
- Kaggle
| library_name: peft | |
| license: agpl-3.0 | |
| tags: | |
| - opensportslib | |
| - sports | |
| - soccer | |
| - vqa | |
| - video-question-answering | |
| - peft | |
| # OpenSportsLib VQA Model (X-VARS VideoChatGPT LoRA) | |
| ## Overview | |
| This model is a VQA LoRA adapter produced with OpenSportsLib for soccer foul | |
| understanding and referee-style visual question answering. | |
| - Task: Visual Question Answering (VQA) | |
| - Architecture: X-VARS VideoChatGPT + LoRA adapter | |
| - Backend: `xvars_videochatgpt_lora` | |
| - Library: OpenSportsLib | |
| - Input: Soccer video clips plus natural-language questions | |
| - Feature path: X-VARS-compatible CLIP features with referee priors | |
| ## Dataset | |
| ### Training Dataset | |
| This adapter was trained on the OpenSportsLib XFoul VQA setup built on the | |
| OSL-XFoul dataset. | |
| - Dataset name: `OSL-XFoul` | |
| - Domain: Soccer video understanding and officiating | |
| - Task: Visual question answering | |
| - Modality: Video + text | |
| - Training samples: 16,568 | |
| - Validation samples: 2,219 | |
| ## Benchmark Results | |
| | Accuracy | Balanced Accuracy | | |
| | ---: | ---: | | |
| | 72.24% | 50.00% | | |
| ## Using with OpenSportsLib | |
| For more details about OpenSportsLib: | |
| - GitHub: https://github.com/OpenSportsLab/opensportslib | |
| - PyPI: https://pypi.org/project/opensportslib/ | |
| - Documentation: https://opensportslab.github.io/opensportslib/ | |
| ### Import the library | |
| ```python | |
| import opensportslib | |
| print("OpenSportsLib imported successfully") | |
| ``` | |
| ### Run inference | |
| ```python | |
| from opensportslib.apis import VQAModel | |
| my_model = VQAModel( | |
| config="opensportslib/configs/vqa/xvars.yaml", | |
| weights="YOUR_HF_REPO_ID", | |
| ) | |
| predictions = my_model.infer( | |
| test_set="/path/to/test_annotations.json", | |
| ) | |
| single_prediction = my_model.infer( | |
| video_path="/path/to/video.mp4", | |
| question="Was this a foul? What card should be given?", | |
| ) | |
| print(predictions) | |
| print(single_prediction) | |
| ``` | |
| ## Notes | |
| - This repository stores a PEFT LoRA adapter, not a merged standalone base | |
| model. | |
| - The adapter is intended for the OpenSportsLib X-VARS VQA path driven by | |
| `opensportslib/configs/vqa/xvars.yaml`. | |
| - The original training setup used X-VARS-compatible visual features, referee | |
| priors, and the VideoChatGPT-style multimodal interface. | |
| ## License | |
| - Open source license: AGPL 3.0 for research, academic, and community use. | |
| - Commercial license: For proprietary or commercial deployment, please contact | |
| the project maintainers. | |
| ## Citation | |
| ```bibtex | |
| @misc{opensportslib_xvars_vqa_xfoul_lora_2026, | |
| title={OpenSportsLib X-VARS VideoChatGPT LoRA for Soccer VQA}, | |
| author={OpenSportsLab}, | |
| year={2026}, | |
| howpublished={https://huggingface.co/OpenSportsLab} | |
| } | |
| ``` | |
| ## Acknowledgements | |
| - Dataset: OpenSportsLab / OSL-XFoul | |
| - Library: https://github.com/OpenSportsLab/opensportslib | |
| - Model pipeline: OpenSportsLib X-VARS VQA backend | |