Skip to main content

Auto-summarizing Dropzone CLI for Picsha AI

Project description

📁 Picsha Dropzone CLI

picsha-dropzone is an ultra-fast, concurrent CLI utility designed for photographers, developers, and AI researchers to upload, analyze, and catalog local media directories with Picsha AI.

It processes media files in parallel, triggers AI analysis pipelines (labels, descriptions, reverse-geocoding, and transcoding), generates a predictive Delivery CDN thumbnail set, and outputs local JSON sidecars along with a neat README.md catalog sheet.


🚀 Getting Started

Installation

Install globally via pip:

pip install picsha-dropzone

⚙️ CLI Command Reference

usage: picsha-dropzone [-h] [-k API_KEY] [-u API_URL] [-w WORKERS] [-c CONFIG] [-d] directory

Positional Arguments

  • directory: The path to the folder containing the images or documents you want to process. (Use . for the current active directory).

Optional Flags

  • -k, --api-key: Your Picsha API Key (e.g. sk_live_...). If not provided, the CLI will look for the PICSHA_API_KEY environment variable.
  • -u, --api-url: The Picsha API endpoint. Defaults to the production server https://api.picsha.ai. For local development testing, use http://localhost:3005.
  • -w, --workers: Number of concurrent uploads and workers. Defaults to 5 to guarantee high speed without overloading servers.
  • -c, --config: Customizes the ingestion pipeline. Accepts either a raw JSON string (e.g., '{"auto_summarize": false}') or a path to a .json file containing pipeline configurations.
  • -d, --download-thumbnails: Tells the CLI to download small and medium thumbnails locally into a hidden .thumbnails/ folder and link them as relative paths in the JSON sidecar instead of using CDN URLs.

🛠️ Ingestion Configuration

The -c / --config parameter maps directly to Picsha's Ingestion Pipeline schema. You can toggle individual AI capabilities on or off to balance speed, cost, and metadata richness:

Key Type Default Description
auto_tag boolean true Runs AWS Rekognition for object, label, and face detection.
auto_summarize boolean true Generates short descriptive AI captions/summaries (Claude 3 for images).
vectorize boolean true Generates a Titan multimodal embedding vector for high-dimensional similarity search.
location_lookup boolean true Reverse-geocodes EXIF GPS coordinates via Google Maps API.
adaptive_stream boolean false Transcodes video uploads to adaptive HLS stream playlists using AWS MediaConvert.
render_on_upload string null Semicolon-separated delivery parameters to pre-warm the CDN cache (e.g. "w=300; w=800").

Example JSON Config (settings.json):

{
  "auto_summarize": true,
  "auto_tag": false,
  "location_lookup": true
}

💡 Practical Examples

1. Ultra-Fast Upload & Analyze (Default)

Standard run uploading files in parallel using the default API key:

export PICSHA_API_KEY="sk_live_..."
picsha-dropzone /Volumes/Photos/AdobeStock

2. Disabling Costly AI Features

Turn off summarization and Rekognition labels for a raw upload pipeline:

picsha-dropzone . -k sk_live_... -c '{"auto_summarize": false, "auto_tag": false}'

3. Local DAM Mode (Offline Thumbnails)

Downloads low-resolution thumbnails locally into the directory so other offline applications can display them immediately without network requests:

picsha-dropzone . -k sk_live_... --download-thumbnails

Creates a .thumbnails/ folder next to your photos, downloading <filename>_small.jpg (300px width) and <filename>_medium.jpg (800px width).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

picsha_dropzone-1.2.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

picsha_dropzone-1.2.0-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file picsha_dropzone-1.2.0.tar.gz.

File metadata

  • Download URL: picsha_dropzone-1.2.0.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for picsha_dropzone-1.2.0.tar.gz
Algorithm Hash digest
SHA256 84819f854b361c4cc5a3e720012f6d31cfd6aae9c9850fe08b661123393ac390
MD5 0b80ac90d299520efa51cddebc8dc59e
BLAKE2b-256 62648bc8997da0e463c531711371e8d337e1440369700d7ae0bb8fcade285f27

See more details on using hashes here.

File details

Details for the file picsha_dropzone-1.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for picsha_dropzone-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f7b91b37c540695bdcc5bb29825b102b7471b35c63f956fd6365ea89ac377b36
MD5 3331d064807cfc5029c18339063c9ed4
BLAKE2b-256 35f4f5c9af2a84be6358e056bac0f2325566ed0ff4234f295fed707ee7483955

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page