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.1.tar.gz (6.7 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.1-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: picsha_dropzone-1.2.1.tar.gz
  • Upload date:
  • Size: 6.7 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.1.tar.gz
Algorithm Hash digest
SHA256 f07791bab389a98a251462f70703df8a4ee23803ef1fd87efee9e324c7ba6dba
MD5 b4c22beb1dfd02aa00c7990062e83ccc
BLAKE2b-256 8c1086c8777ab25d205411a7b1ab043b76794ed17760b6dea674e9d2c90e76cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for picsha_dropzone-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b788dca34e93ec5d32c1586d721eb6ea83411a4171579090a8332114bf6bb147
MD5 caa9d1c25316d82b8a10dd9ca19e5a28
BLAKE2b-256 b4a64b89fdb5296f46821c6f724f519b6812e1968d68fe4e56111c66200ca098

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