Pixel Detective Exports
Generate standalone exports (no UI) and manage collections for Pixel Detective.
Requirements
- Ingestion API running on
http://localhost:8002 - Qdrant running (Docker)
- GPU UMAP service on
http://localhost:8003for HDBSCAN clustering - Optional (for visuals):
matplotlib - Optional (for PDF output):
weasyprint(preferred) orplaywright
Quickstart
- UMAP + HDBSCAN JSON/CSV/SVG:
python skills/pixel-detective-exports/scripts/export_umap_hdbscan.py --collection <name> - Cluster report PDF/HTML (all collections):
python skills/pixel-detective-exports/scripts/export_umap_pdf.py --sample-size 500
Exports
UMAP + HDBSCAN export (standalone)
- Script:
python skills/pixel-detective-exports/scripts/export_umap_hdbscan.py - Output default:
exports/pixel-detective/umap/umap_hdbscan_<collection>.json|csv|svg - Example:
python skills/pixel-detective-exports/scripts/export_umap_hdbscan.py --collection my_collection --sample-size 2000- Color controls:
--color-map tab20 --point-size 18 --outlier-size 12 --outlier-color #94a3b8
UMAP PDF report (all collections)
- Script:
python skills/pixel-detective-exports/scripts/export_umap_pdf.py - Output default:
exports/pixel-detective/umap/umap_cluster_report.pdf - Example:
python skills/pixel-detective-exports/scripts/export_umap_pdf.py --sample-size 500 --title "Pixel Detective UMAP Clusters"
Collection management
Manage collections via API (Qdrant in Docker)
- Script:
python skills/pixel-detective-exports/scripts/manage_collections.py - Examples:
- List:
python skills/pixel-detective-exports/scripts/manage_collections.py --action list - Info:
python skills/pixel-detective-exports/scripts/manage_collections.py --action info --collection my_collection - Create:
python skills/pixel-detective-exports/scripts/manage_collections.py --action create --collection my_collection --vector-size 512 --distance Cosine - Select:
python skills/pixel-detective-exports/scripts/manage_collections.py --action select --collection my_collection - Delete:
python skills/pixel-detective-exports/scripts/manage_collections.py --action delete --collection my_collection - Merge:
python skills/pixel-detective-exports/scripts/manage_collections.py --action merge --dest merged_collection --sources a,b,c - Qdrant fallback listing:
python skills/pixel-detective-exports/scripts/manage_collections.py --action list --qdrant http://localhost:6333
- List:
Notes
- HDBSCAN clustering is performed by the GPU UMAP service; the ingestion service does not offer HDBSCAN.
- Collection operations go through the ingestion API, which talks to Qdrant in Docker.
- Use the start skill to bring up services:
powershell -ExecutionPolicy Bypass -File skills\\start-pixel-detective\\scripts\\start_pixel_detective.ps1 -Mode backend -UseGpuUmap