About this project
Oneiron is an embedded retrieval engine designed for memory-first AI applications. Unlike traditional stacks that require separate services for vector, text, and graph databases, Oneiron runs in-process as a Rust library with C FFI bindings. This architecture eliminates network hops and consistency issues, making it suitable for deployment on mobile devices (iOS, Android), desktops, Node.js, or as a standalone daemon via `oneiron-server`.
The engine leverages a single LMDB environment with ACID transactions to provide atomic multi-database writes. It supports five distinct retrieval signals:
- **Vector**: HNSW (flat NSW) with SIMD acceleration for semantic similarity.
- **Text**: BM25 inverted index for exact keyword matching.
- **Graph**: Personalized PageRank over typed edges for relational entity discovery.
- **Temporal**: Bi-temporal range indexes for event-based queries.
- **Phonetic**: Code-based posting lists for fuzzy matching from voice/ASR inputs.
These signals can be combined using Reciprocal Rank Fusion with per-signal boosts. The system stores entity blobs in MessagePack format and packs context into LLM-ready structures. Oneiron is distributed under the Apache 2.0 license and provides both a Rust library interface and a local daemon for server-side deployments.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.