It instantiates no index template: every verb is a downcall into the pre-instantiated libusearch_shared, so one compiled engine serves every language binding.
Java 25 or newer is required, and the runtime needs --enable-native-access for the module or class path the SDK loads from.
It exposes dense indexes; sequence, matrix and geospatial indexes follow as the C library ships them.
Topics
| Installation | |
|---|---|
| Quickstart | |
| Executors24 | An executor owns the host threads or device streams a fanned-out verb runs on; an index owns entries. |
| Keys1 | A key is sixteen opaque bytes rendered as a lowercase dashed UUID, and integer identities park in the low eight bytes. |
| Inputs and Outputs5 | Every output whose length only the call knows, such as matches, rows, products, monoliths and cursor or stream batches, lands in an Arena you pass, and the verb answers a view over it without copying. |
| Metrics40 | DenseIndex carries the modality's options, metric, telemetry and per-call settings as nested types. |
| Residency1 | Where the payload lives is the constructor's name, as in the C lifecycle verbs, so a residency an index lacks has no constructor to call. |
| Serialization1 | Checkpoints ride the SafeGraphs interchange format, and the path extension picks the layout: a .safegraphs path is one monolith, a .safegraphs.json path is a manifest cataloging many. |
| Refinement | Refinement re-selects the neighbors of every stored entry against the finished graph, improving edges that were chosen when the graph around them was still incomplete. |
| Linear Algebra | multiply is the linear-algebra sibling of search: it reports every pair the traversal scored rather than only the nearest, as a ragged product with one run of pairs per left row, in traversal order. |
| Retrieval and Streaming | get returns every vector the key holds, however many there turn out to be, at the natural width of the kind asked for, with the columns and strideBytes the library reported. |
| Introspection6 | describe reports the frozen DenseMetadata with the size, capacity, memory usage and dispatched capabilities in one call. |
| Errors2 | Every failure is an unchecked USearchException, since nearly every verb can report one, and its status() is a Status mirroring the C interface's usearchstatusk. |
| Platform Notes | The published surface is Java, and both other JVM languages consume it directly, so there is no separate artifact for either. |