Y2K DIGICAM LORA (2026)

(a licensed dataset pipeline)
Doc. ref: HK-Y2K-LORA-2026
Category
Generative & Visual
Medium
Python, SigLIP 2, MiniCPM-V, fal.ai krea-2-trainer
Venue
gitlab.com/closestfriend/y2k-lora-for-krea
State
complete
Tags
dataset, curation, lora

A six-stage pipeline that builds a licensed image and caption dataset for a style LoRA, trained on fal.ai’s hosted krea-2-trainer. Each stage is a standalone script handing off through files: scrape, rank, curate, fetch, caption, package.

Six standalone stages handing off through files, with the captioner falling back to Qwen3-VL when the primary model returns a degenerate caption.
Six standalone stages handing off through files, with the captioner falling back to Qwen3-VL when the primary model returns a degenerate caption.

Images come from Wikimedia Commons “Taken with…” categories across eleven configured cameras — Nokia N95, several Sony Ericsson and Canon PowerShot models, Sony DSC, Kodak EasyShare — capped at 1,000 per category. Licensing is a hard allowlist of CC0, public domain, CC BY, and CC BY-SA; anything else is rejected and counted. EXIF capture dates must fall between 2003 and 2010. That gate produced 903 harvested rows, of which 160 full-resolution images were fetched after ranking and curation.

Ranking uses SigLIP 2 to score each thumbnail by mean cosine similarity to six candid, flash-lit, party-scene prompts minus mean similarity to six encyclopedic landmark prompts — the aim being to separate snapshots from the well-composed hobbyist photography that dominates the source categories. The ranking narrows the field; a static HTML gallery then supports click-through human curation, and the final cut is made by eye. Three variants were packaged from the shared pool: 160 images combined, 122 cameraphone-only, 38 compact-digicam-only, each with its own trigger phrase and attribution CSV.

Captions come from MiniCPM-V, served locally through Ollama, and are checked against a degeneracy filter before acceptance. A caption that fails falls back to Qwen3-VL — Krea 2’s own text encoder — which runs on inputs resized to 1024×1024, reloads the model for every image, and forces each reply to begin with one of six rotating openers. Packaging refuses to build if any kept image lacks a caption. Every model the dataset stages use is open-weight and runs locally. The repository includes a checkpoint from an 1,800-step training run.

Last updated: 2026.09.26 10:11:38 UTChnshokrian@gmail.com