Repository navigation
Releases: vedicreader/adhara
Releases · vedicreader/adhara
Release list
v0.1.2
adhara.path()falls back to the extension module's__spec__.originwhen the module has no__file__. A py2app bundle, such as the Leela app, imports the extension that way. Before,adhara.load()raisedAttributeErrorthere, and litesearch searched in Python.
Full Changelog: v0.1.1...v0.1.2
v0.1.1
- A filter is checked one window of candidates at a time, with the candidates looked up by rowid (
VALUESwithCROSS JOIN). A filter with an indexed subquery, such as vishalakshi's document-kind filter, no longer costs a scan of the rows it selects for each window. - A window over 1/128 of the rows (at least 1,024) reads every passing rowid once and checks the rest in memory.
- The HNSW index file is read the first time a search uses it, not each time the vectors are read. litesearch passes
ann=0and never reads it.
| one query, 181,290-chunk vault, k = 30 | litesearch scan | adhara 0.1.0 | adhara 0.1.1 |
|---|---|---|---|
| one document kind (6,727 rows pass) | 3.9 ms | 12.9 ms | 7.3 to 7.7 ms |
| three document kinds (78,710 rows pass) | 44.8 ms | 2.8 ms | 3.0 to 3.3 ms |
page <= 2 (125,107 rows pass) |
82.5 ms | 4.7 ms | 3.0 to 3.1 ms |
Swift: .package(url: "https://github.com/vedicreader/adhara", from: "0.1.1") downloads AdharaCore.xcframework.zip from this release.
Full Changelog: v0.1.0...v0.1.1
v0.1.0
The first release of adhara, the SQLite core of litesearch.
porter adhara, an FTS5 tokenizer with the tokens of litesearch's chainporter simplify casefold 1 sanskrit unicodewords.adhara_hybrid(store, q, qvec, k, filter, dtype, metric, ann), a full-text search, a vector search and Reciprocal Rank Fusion in one SQL call. It returns the rows of litesearch'ssearchin the same order.- Python:
pip install adhara, thenadhara.load(conn)on an apsw or sqlite3 connection. - Swift:
.package(url: "https://github.com/vedicreader/adhara", from: "0.1.0"). The package downloadsAdharaCore.xcframework.zipfrom this release. It runs on macOS 13 and later, on Apple silicon and Intel, and reads stores that litesearch built in Python.
RESULTS.md has the measurements.
Full Changelog: https://github.com/vedicreader/adhara/commits/v0.1.0