Interactive vector search, trajectories and feedback learning.
Off: the visuals run on their own clock and the page stays silent.
The file is decoded in this browser. Nothing is uploaded.
Load a Spotify share link in the player, then tap along to sync the visuals. In a supported Claude viewer, the connector can also show now playing. Spotify audio is never included in video exports.
The beat lifts bloom, the root ring and the frontier ring, speeds the comet and signal flow, and bursts sparks from the root on each bar's first beat. Reduced motion keeps all of it still.
A scripted tour of a fresh query: the canopy grows, the camera flies into the crown, the Poincaré disk orbits, the greedy path is traced and one learning cycle plays. Tap the stage or press D to leave.
Off: video export and the Director use the scripted camera. On: an export frames each view with your zoom and pan instead.
Auto drops bloom and signal particles while the stage runs under 40 fps, and brings them back when it recovers.
Layered proximity graph: greedy descent through sparse upper layers, then a beam search on layer 0.
-
AIMD reacts to every query. EWMA averages recall first and only moves when it leaves a band around the target.
Share of queries that land near an answer the memory already holds. Real agent traffic repeats itself; use this to test whether memory pays off when it does.
Autopilot runs a curriculum on its own: 40 queries around cluster A, 30 after a drift to cluster B, 20 back on A to test retention, then 20 noisy ones where the controller has to widen. Each step shows one query and learns from the rest in the background. The corner badge plots evals saved per query; in the canopy a dashed path shows where the same search goes without memory hints.
Demonstrates the self-learning loop pattern (trajectory memory hints plus a breadth controller). It is not RuVector's SONA. Recall is scored against brute-force ground truth, a demo convenience a production system would not have.
Learned memory and controller are saved in this browser for each dataset and come back on reload.
Rendered offline, frame by frame, so the video is smooth even on a slow phone. Includes the on-screen captions and stats.
Two loops run on every query. A trajectory memory stores past queries and their answers, and feeds the closest ones back as extra entry points. A controller nudges ef (or nprobe) toward the target recall at the lowest cost. Each query is also replayed with only one of the two switched on, so the savings can be split honestly. On the graph indexes almost all of the savings come from the controller trimming a static ef that was set higher than the target needs. On IVF at a low nprobe, the controller's cut often holds recall only because memory hints add the cells their answers live in; when the controller alone misses the target, its saving is flagged in orange. Nothing here changes the index itself. This demonstrates the loop pattern behind RuVector's SONA and ReasoningBank; it is not those components.
| Engine | µs/query | Recall | vs JS brute | vs WASM flat |
|---|---|---|---|---|
| Runs brute force, every JS index structure, RuVector WASM HNSW (ef 64 fixed) and WASM flat on identical queries. | ||||
| Mode | Memory | Recall | Compression |
|---|---|---|---|
| Full precision | ~1.5 GB | 100% | 1× |
| Scalar | ~400 MB | 98% | 4× |
| Product | ~200 MB | 95% | 8–32× |
| Binary | ~50 MB | 85% | 32× |
Canopy grows the search outward from the entry point. Hyper lays the same tree in a Poincaré disk, where space grows exponentially toward the rim, so deep branches never crowd; drag to move the focus, and the view flies to the answer. Tree is the plain hop-by-hop layout. Space projects the vectors to 2-D with ghost trails of earlier searches. Learn slows the self-learning loop down: recall similar past queries, search from their answers, score against the target, store the trajectory, and adapt ef. Mint dashed links are learned shortcuts from the trajectory memory.
HNSW and NSW are proximity graphs (layered and flat). IVF clusters vectors with k-means and scans only the nprobe nearest lists. Flat scans everything and is the exact baseline. Swap the dataset to see where each one struggles: uniform noise defeats every index, while taxonomy and trajectories reward graphs and learning.