Back to all work
Machine Learning· 2025· Co-developer, with Jaseci LabsShipped

Jac Vision

Web platform that collapses VLM fine-tuning - dataset prep to inference - into a single workflow.

Jac Vision

Fine-tuning a vision-language model is mostly not machine learning - it is glue work. A typical run means formatting a dataset by hand, writing a training script, wiring up LoRA configs, watching TensorBoard in a separate tab, then writing yet another script to check whether the tuned model actually beats the base one. Every experiment repeats that setup, and it is a big part of why adapting VLMs to your own data still feels out of reach unless you are comfortable being your own infrastructure engineer.

Jac Vision collapses that pipeline into one web platform: model management, dataset preparation, LoRA fine-tuning, live monitoring, and inference sit behind a single React interface backed by FastAPI.

Done in Collaboration With Jaseci Labs

Walkthrough

Complete Workflow Demonstration - From Dataset Preparation to Model Inference

Design decisions

  • LoRA rather than full fine-tuning: Full fine-tuning of a VLM does not fit on the GPUs most researchers actually have. LoRA keeps runs within reach of a single commodity GPU, so it is the platform's default path with configurable parameters - and an adaptive mode for users who do not want to hand-pick hyperparameters at all.
  • Dataset creation built in, not assumed: Fine-tuning has a chicken-and-egg problem - you need captioned images before you can train. So dataset preparation includes generating captions with existing VLMs, editing them manually, batch-processing whole folders, and exporting straight to training-ready JSON, instead of assuming a labeled dataset already exists.
  • Comparison as a first-class step: A fine-tune only means something next to its baseline, so the inference interface compares outputs from the tuned model, the base model, and other fine-tuned versions side by side.
  • Resource monitoring on screen: Training runs fail on memory and disk as often as on code, so live CPU, memory, and disk usage sit in the interface rather than in a terminal the user has to remember to check.

The workflow

  1. Dataset Preparation: Upload image folders via ZIP or build a dataset with the captioning tool; generate or edit captions; export in training-ready JSON.
  2. Model Selection: Search and download pre-trained VLMs from Hugging Face - including access-controlled models via authentication tokens - choosing by task complexity and hardware constraints.
  3. Configuration: Set hyperparameters (learning rate, batch size, epochs) or use adaptive mode; configure LoRA parameters; set goals for goal-based training.
  4. Training: Monitor live loss curves and metrics, dig into TensorBoard logs, and get notified on completion or errors.
  5. Evaluation & Deployment: Test fine-tuned models in the inference interface, compare against baselines, and export in the desired format.

Who it serves

  • Domain teams training custom VQA for fields like medical imaging, autonomous vehicles, or retail - where generic models fall short and data is in-house
  • Builders generating captions for product catalogs, accessibility, or content moderation
  • Learners who want to understand fine-tuning by doing it, with every stage of the pipeline visible instead of buried in scripts
  • Prototypers who need to test whether a vision-AI idea works before committing engineering time to it

Getting started

For detailed setup instructions, see the Getting Started Guide.

Contributors

For more details and contributions, visit the Jac Vision GitHub Repository.