I used the same concept to build a searchable database of YouTube thumbnails in my watch history. I always end up trying to remember a video I didn't finish from a week or two ago and YouTube's history search plain sucks. So I built an app that tracks all my watch history across all devices, downloads the thumbnails and runs them through a local Gemma model to write a paragraph description and OCR any text in the thumbnail.
Currently at 30,000 thumbnails described, basically 2 years of watch history. Search is via FTS5 in SQLite and works great on an 8 year old MacBook Pro.
I tried searching for "holofernes" and got many paintings not-of-but-aesthetically-similar-to Judith beheading Holofernes. I then typed directly "judith and holofernes" and got similarly undesired results. I know that I'm "holding it wrong" here, but this might not be the last museum after all.
This is cool, but I agree name is weird. Kind of wonder if the timeline should be logarithmic because I would assume the distribution of art over the years is far from uniform.
This website likely uses a semantic vector space like CLIP or BERT space. Which is based on co-occurrence of words, it doesn't have a harder logic behind it. Soviets probably had cylinders in some machinery which is why it pulled.
Curious whether the embeddings come off the images or the catalog text, because in my experience museum metadata is wildly uneven (half the Met's older records are basically "Vase, terracotta"). Also, do you dedupe across institutions?
Currently at 30,000 thumbnails described, basically 2 years of watch history. Search is via FTS5 in SQLite and works great on an 8 year old MacBook Pro.
https://lastmuseum.com/search?q=art%20deco
(I suspect The Last Museum is using the same open data exports.)
Just dumping a million results on the user to doom-scroll through is a bit problematic in terms of UI/UX.
EDIT: Ok, there is, but it needs a query...
soviets were big into seals and govt procedures . maybe?
how do you know its 'cylinders' and not 'govt seals and procedures' ?