qapyq
(CapPic)AI-assisted media curator for large image/video datasets. Streamlined captioning, cropping, masking for LoRA/diffusion training workflows.
!Screenshot of qapyq with its 5 windows open.
Features
- 🧿 Media Viewer: Display and navigate images and videos
- 🎨 Image/Mask Editor: Prepare media for training
- 📜 Captioning: Describe media with text
- 📐 Stats/Filters: Summarize your data and get an overview
- 🚀 Batch Processing: Process whole folders at once
- 🔮 AI Assistance:
Supported Models
These are the supported architectures with links to the original models.Find more specialized finetuned models on huggingface.co.
- Tagging
- Captioning
Those with 🎦 support video captioning. GGUF models generally load and run faster.
Tip: Use grounding tags to guide the model and improve accuracy.
- Florence-2 - Gemma 3 (GGUF), Gemma 4 (GGUF) 🎦 - InternVL2, InternVL2.5, InternVL2.5-MPO, InternVL3, InternVL3.5 🎦 (Github Format) - JoyCaption, JoyCaption (GGUF) + mmproj - MiniCPM-V-2.6 (GGUF), MiniCPM-o-2.6 (GGUF), MiniCPM-V-4 (GGUF), MiniCPM-V-4.6 (GGUF) 🎦 - Molmo - Moondream2 (GGUF) - Ovis1.6, Ovis2, Ovis2.5 - Qwen2-VL, Qwen2.5-VL, Qwen3-VL 🎦 (Instruct/Thinking) - Qwen3.5 (GGUF), Qwen3.6 (GGUF) 🎦 - Possibly other models in GGUF format with embedded chat template, or separate jinja template file.
- LLM
- Upscaling
- Masking
- Embedding
(recommended: largest text model + fp16 vision model)
- VAE
Setup
- Download this repository or clone it with git:
git clone https://github.com/FennelFetish/qapyq.git
- Run
setup.shon Linux,setup.baton Windows.
The setup script will ask you which components to install:
- On Linux, it lets you to choose between installed Python versions.
- FlashAttention is optional for most models but recommended for speed.
- You can choose to install only the GUI and media processing packages without AI assistance.
- When installing on a headless server for remote inference, you can choose to install only the backend.
Dependencies
Requires Python 3.10 or later
- Python 3.14 can run the GUI, but may cause issues with setup and slow inference.
External Dependencies
- To run GGUF models with
llama-cpp-pythonyou may need to install CUDA runtime libraries
(e.g.libcudart12,libcublas12from Ubuntu's package manager). - For exporting videos you'll need ffmpeg added to your
PATHenvironment variable.
Compute Platform
During setup, select the compute platform that matches your system. In combination with the Python version, the platform affects the version and availability of prebuilt wheels:| Platform | torch | onnxruntime 1 | llama-cpp-python 2 | flash_attn 3 |
|---------------|---------|---------------|--------------|--------------------|
| CUDA 12.6 | 2.11 | onnxruntime-gpu
Python 3.10 - 3.14 | Python 3.10 - 3.14 | Python 3.10 - 3.14 |
| CUDA 12.8 | 2.11 | onnxruntime-gpu
Python 3.10 - 3.14 | Python 3.10 - 3.14 | Python 3.10 - 3.14 |
| CUDA 13.0 | 2.11 | onnxruntime-gpu
Python 3.11 - 3.14 | Python 3.10 - 3.14 | Python 3.10 - 3-14 |
| ROCm 6.4 | 2.9 | onnxruntime-rocm
Python 3.10 and 3.12 | 🚫
Compilation guide | 🚫 |
| ROCm 7.2 | 2.11 | onnxruntime-migraphx
Python 3.10 and 3.12 | 🚫
Compilation guide | 🚫 |
| CPU | 2.11 | onnxruntime
Python 3.10 - 3.14 | Python 3.10 - 3.14 | 🚫 |
1 For running WD/PixAI tagging models, YOLO detection and semantic sorting
2 For running GGUF models
3 Improves inference speed
Startup
- Linux:
run.sh - Windows:
run.batorrun-console.bat
qapyq/res folder.
Update
If you cloned the repository with git, simply usegit pull to update.If you downloaded the repository as a zip archive, download it again and replace the installed files.
To update the installed packages in the virtual environment, run the setup script again.
New dependencies may be added. If the program fails to start or crashes, run the setup script to install the missing packages.
User Guide
More information is available in the Wiki.Use the page index on the right side to navigate and find topics.
Or click on the ? in the feature list above.
How to:
- Setup and configure AI models: Model Setup
- Use qapyq: User Guide
- Caption with qapyq: Captioning
- Use qapyq's features in a workflow: Tips and Workflows