A scatter plot of nearly 200,000 wine review embeddings displayed in Embedding Atlas, with auto-generated cluster labels, density contours, and a metadata filter panel showing country and rating controls.
Most embedding visualizers feel like chores. You wrangle your data into the right format, wait for it to load, squint at a blob of overlapping dots, and wonder if the whole exercise was worth it. Embedding Atlas, open-sourced by Apple, takes a different position: what if exploring a few million high-dimensional vectors was actually pleasant? Load the wine reviews demo and you'll see nearly 200,000 reviews scatter into a landscape that makes immediate visual sense. Clusters self-label. Density contours rise like topographic lines. Filter by country or rating and the map reshapes itself in real time. It feels less like a debugging tool and more like a place you'd want to spend an afternoon.
The team behind it is Donghao Ren, Fred Hohman, Halden Lin, and Dominik Moritz, all researchers at the intersection of HCI and machine learning. Moritz also holds a faculty position at CMU and co-created Vega-Lite; Ren previously built Charticulator and Stardust, a WebGL library for information visualization. These are people who have been thinking about how to render data at scale in browsers for a long time, and it shows.
Technically, the interesting choices stack up. The rendering pipeline targets WebGPU with a WebGL 2 fallback, using order-independent transparency so overlapping points don't just turn into mud. Clustering runs on a density map in projected 2D space rather than the full embedding, which keeps it fast: a few hundred milliseconds instead of the usual painful wait. UMAP runs in WebAssembly (compiled from C++), and the density clustering algorithm is Rust compiled to Wasm. The whole thing ships as an npm package with React and Svelte bindings, a Python CLI, Jupyter widgets, and a Streamlit component. Try the live examples, dig into the repo, or read the paper for the full story on their clustering approach. If you work with embeddings at all, this is worth your next twenty minutes.
- Live Demo: https://apple.github.io/embedding-atlas/examples
- Source Code: https://github.com/apple/embedding-atlas
- Author(s):