/q/. Group-by payload fields become nested folders,
each point becomes a .json payload file (plus a .txt text file and an optional blob), and semantic search is the
search command, which returns ranked points as canonical file paths.
For connection setup (self-hosted, Qdrant Cloud, search), see
Qdrant Setup.
Config
group_by at different payload fields and the folder tree changes.
Filesystem layout
Every path is translated into a Qdrant query. Descending a folder adds one payload filter; the leaf level lists points.<id> is the Qdrant point id. When collection is set the collection level is
elided, so the mount root is that collection:
Point files
A point is shown as its underlying data in its original format, never as the embedding vector:<id>.txtis the embedded source text (thetext_fieldvalue), exactly what the vector was built from.<id>.jsonis the full payload as compact JSON (the metadata), with the vector and the raw blob omitted.<id>.<ext>is the raw blob bytes whenblob_fieldis configured.
Semantic search
Search is a command, not a path. It returns each ranked point as its canonical content path (the<id>.txt, or <id>.json when no text_field is set)
annotated with the similarity score, followed by the content:
--top-k <n> (default search_limit), --threshold <min-score>,
--method semantic (the only supported method; grep/rg stay lexical).
Supported commands
All commands delegate to Mirage’s shared implementations.Access pattern
The mount is read-only (MountMode.READ); writes are not supported. The two
read modes are:
- Browse by payload folders: scroll filters on
group_byfields, no embedding. - Search by meaning:
search "<query>" <path>runs vector search and returns canonical point paths.
max_rows. A filtered listing scrolls first and
only creates keyword payload indexes for the group_by fields if Qdrant reports
one is required, so already-indexed collections work under read-only keys. Keep
group_by to low-cardinality fields for large collections.