← Work· Case 06 of 6
EXPERIMENT· Hobby project, user pull for production· Solo, end-to-end

PawSearch, Multimodal RAG on Home Camera Feed

A full multimodal-RAG pipeline that searches home video by natural language, no tags, no keywords. 5+ users have asked for a production release.

  • FFmpeg
  • Gemini Multimodal Embeddings
  • ChromaDB
  • Cosine similarity
PawSearch, Multimodal RAG on Home Camera Feed
clip chunking
90s
users want production
5+
tags required
0

PawSearch demonstrates the full multimodal-RAG pipeline applied to video. Describe what you're looking for, 'orange cat sitting on the floor', and the system retrieves the exact clip window. No tags. Pure semantic understanding. Hobby project; 5+ users asked for a production release.

01

The premise

Search your videos like Google. Describe what's happening in plain English, the system finds the exact moment.

No keyword matching. No tags. Pure semantic understanding powered by multimodal embeddings.

02

The pipeline

Ingestion: video, FFmpeg chunked into 90-second clips, Gemini multimodal embedding per clip, ChromaDB vector store, persisted locally.

Search: natural-language query, Gemini text embedding, cosine similarity against the clip vectors, ranked results, LLM-generated 'why this matched' explanation surfaced alongside the clip.

03

The product decisions hiding inside the ML

Chunk size: longer clips embed more context but lose precision on where the moment starts; shorter clips are precise but fragment a continuous scene. 90 seconds was the empirical sweet spot for indoor home footage.

Result explanation: returning a ranked list is not enough; non-technical users do not trust vector results without a sentence of why. The LLM-generated rationale was the difference between 'cool' and 'usable'.

Local-first: the home-video use case is intimate. Running embeddings and storage locally was a product decision, not just a technical one.

04

Why this matters as PM evidence

Built to demonstrate end-to-end applied AI: product thinking, full-stack ML system design, and the realities of a multimodal-RAG architecture from raw video to natural-language search.

Shipped as a hobby project. 5+ users surfaced themselves asking when it goes to production, which is the only signal that actually counts for a v0.

What I'd do differently

"The instructive part wasn't the model choice, it was deciding where to chunk, how to balance recall vs. clip length, and how to explain matches back to a non-technical user. The PM work hid inside what looked like an ML problem."