About
Why I built this
Cause why not? I basically wanted to maximise token use on my AI subscriptions.
Context
Public art collections are interesting because the data is visual, textual, and messy. People search collections in different ways: researchers look for names, dates, and accession numbers; marketing teams look for themes; artists look for mood, colour, and form; casual users ask loose questions.
Data
Paillette brings together publicly available collection data from the National Gallery of Art, Washington, National Gallery Singapore and Roots. The NGA search currently covers 63,253 artwork records with an open-access published image, rather than the Gallery's entire collection.
System architecture
From browser request to ranked result. The query becomes a search plan before retrieval channels produce candidates for ranking.
Approach
Query interpretation
For NGA search, the parser turns a query into up to five typed parts. The diagram shows what each part is and how it changes the search plan.
Hover or focus to preview. Click to keep a part selected. Artwork relationship and artist attribution are separate parser modes.
Selected part
Descriptive meaning
Semantic retrieval · ships
Ships supplies the descriptive retrieval text. The oil, Painting, and displayed-date constraints still apply to every candidate.
View all details
| Plan part | How it is found | What it controls |
|---|---|---|
| Descriptive meaning | How it is found Words remaining after structured phrases move into hard constraints “oil paintings of ships before 1800” → “ships” | What it controlsSemantic retrieval: ships |
| Catalogue metadata | How it is found Controlled classification and medium vocabularies “oil paintings” | What it controlsHard filters: Painting · oil |
| Displayed time | How it is found Date grammar: years, ranges, before/after, decades, centuries, circa “before 1800” | What it controlsHard displayed-date range: 1000–1799 |
| Artwork relationship | How it is found Directional connectors such as showing, with, depicted in, or based on “painting showing a sculpture” | What it controlsReturn paintings · require depicted sculpture |
| Artist attribution | How it is found Ordered phrases such as by, after, attributed to, workshop, circle, or follower “oil paintings by Rembrandt” | What it controlsCatalogue relation: directly by Rembrandt |
That search plan becomes the input to retrieval and ranking.
Retrieval and ranking
For hybrid or mixed semantic queries, the search plan sends retrieval text to the relevant search channels, then combines their ranked results with reciprocal rank fusion (RRF). Explicit facet searches use direct catalogue lookups, while NGA attribution queries use a direct evidence path.
For example, an accession number leans on metadata. "Blue abstract painting" leans on colour and image similarity. "Works about migration" leans on captions and keywords.
Limitations
Paillette can only search what is in the corpus. If there are no relevant works for something like "Dragon Boat Festival", the results will not magically become correct.
Future work could include query expansion, alternative query generation, and clearer "no strong match" handling.
Feedback
Send bugs, confusing results, missing workflows, or ideas for the search. You will get an email acknowledgement.