Inspiration

Event, travel, and lifestyle shoots produce thousands of raw frames, forcing both creators and clients to burn hours culling duplicates, blinks, and near-misses before building an album or gallery. We wanted an AI that handles that judgment—tailored to specific goals and moods—at production scale, not just a demo chatbot.

What it does

Filto simplifies event photo selection for studios and individual clients in four steps:

  1. Upload: Paste a Google Drive shoot link to sync with Google Cloud.
  2. AI Processing: Automated pipelines group, score, and embed all frames.
  3. Smart Selection: Vertex Gemini labels moments and picks the best shots among duplicates.
  4. Instant Review: Users review curated Best / Great / Good tiers and pay per download.

How we built it

  • Flutter web for the product UI (Google Sign-In, project review, Stripe checkout)
  • FastAPI on Cloud Run (filto + filto-pipeline workers)
  • Cloud Storage + Cloud SQL for projects and artifacts
  • Cloud Tasks to fan out pipeline stages
  • Classical ML (SigLIP embeddings, blur/exposure checks) plus Vertex AI Gemini for group context and tiebreaks
  • Stripe for pay-per-download

AI runs continuously in production: every cull writes Vertex request/response logs and per-project stats (Gemini call counts, tokens, cost).

Challenges we ran into

Keeping cull cost low on large shoots, making Gemini decisions reliable enough for “best shot” picks, and shipping a real Cloud Run + Drive + Stripe path—not a notebook demo.

What's next

Acquiring more active users (both studios and individual clients), tightening feedback loops on keep quality, and building clearer ops metrics for AI decisions in production.

Built With

Share this project:

Updates