Commit Graph

233 Commits

Author SHA1 Message Date
Dirkjan Ochtman c9f62ad3fb py: use integers as point identifiers 2021-03-18 21:02:14 +01:00
Dirkjan Ochtman 90cea0f4c0 Add load() and dump() methods 2021-03-18 21:02:14 +01:00
Dirkjan Ochtman bdcf58168a Override Python package name 2021-03-18 21:02:14 +01:00
Dirkjan Ochtman 9593f0e168 Skip Python bindings in CI for now 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman a312efe5c9 Add Makefile to help with testing 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman 0bd6d20b11 Ignore Python build artifacts 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman b3500d4a34 Add some Python code to test bindings 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman 09b526717e Initial version of Python bindings 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman 17ec0c9184 Add Search::get() helper for bindings 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman 1950ca2b3b Simplify creation of search result iterator 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman 28d18d451e Add PointId::into_inner() helper for bindings 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman 349582b5b1 Add helper method for bindings 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman afda7a0831 Set good defaults during builder construction 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman 1f6f7b6c75 Create workspace at the top level 2021-03-18 12:59:39 +01:00
Dirkjan Ochtman b787d09b9d Bump version number to 0.2.0 2021-03-04 22:19:52 +01:00
Dirkjan Ochtman 3a41d916c3 Simplify search API 2021-03-04 22:10:18 +01:00
Dirkjan Ochtman c6087de542 Search::select_simple() doesn't need to take a length 2021-03-04 22:10:07 +01:00
Dirkjan Ochtman 50c4ed60bc Bump version number to 0.1.3 2021-02-17 15:14:14 +01:00
Dirkjan Ochtman a027d36190 Fix missing truncation of upper layers 2021-02-17 15:13:47 +01:00
Dirkjan Ochtman 53b608b474 Bump version number to 0.1.2 2021-02-10 20:04:01 +01:00
Dirkjan Ochtman 2f7ddad3a2 Make number of layers and sizes deterministic 2021-02-10 17:28:18 +01:00
Dirkjan Ochtman a99c61fee5 Use helper method to clarify code 2021-02-10 16:57:08 +01:00
Dirkjan Ochtman 1934478cfe Lock new node as soon as possible 2021-02-10 16:57:00 +01:00
Dirkjan Ochtman 6b4ed106f7 Remove too small test case 2021-02-10 16:56:22 +01:00
Dirkjan Ochtman 0b09e8e431 Fix bug in definition of ml default value 2021-02-10 16:31:33 +01:00
Dirkjan Ochtman 23a51390b7 Fix formatting 2021-02-02 16:25:25 +01:00
Dirkjan Ochtman 93d4c8a656 No point in initializing the vector, since it always gets truncated first 2021-02-02 16:24:12 +01:00
Dirkjan Ochtman 9c4c58e753 Bump version to 0.1.1 2021-02-02 16:22:20 +01:00
Dirkjan Ochtman dd1411949f Parallelize collection into upper layers 2021-02-02 16:22:01 +01:00
Dirkjan Ochtman 07367c2022 Update Cargo metadata 2021-02-01 13:24:21 +01:00
Dirkjan Ochtman 7690d09fb8 Bump M up to 32 2021-01-21 14:40:48 +01:00
Dirkjan Ochtman 58bb0f315a Improve parallelization with fine-grained locks 2021-01-21 13:45:39 +01:00
Dirkjan Ochtman f388fd0a46 Use a constant for invalid PointId 2021-01-21 10:40:36 +01:00
Dirkjan Ochtman 96b69e5d4b Simplify selection sizes 2021-01-21 10:20:52 +01:00
Dirkjan Ochtman f627769667 Truncate more often to prevent unnecessary looping 2021-01-21 10:12:19 +01:00
Dirkjan Ochtman 1d5cd4e6ec Move reset of insertion into add_neighbor_heuristic() 2021-01-21 10:12:05 +01:00
Dirkjan Ochtman a0b90dfd66 Add a docstring for select_heuristic() 2021-01-21 10:07:24 +01:00
Dirkjan Ochtman 89df77962e Change argument order for select_heuristic() 2021-01-21 10:07:05 +01:00
Dirkjan Ochtman 640592b411 Move some code from insert() into Search 2021-01-21 09:39:15 +01:00
Dirkjan Ochtman 31f624be5c Reorder Search methods 2021-01-21 09:30:09 +01:00
Dirkjan Ochtman de38b64358 Lower Layer impls to slice impls to fix clippy suggestion 2021-01-20 22:05:22 +01:00
Dirkjan Ochtman 2ab15e0c66 Improve ZeroNode abstraction some more 2021-01-20 18:07:03 +01:00
Dirkjan Ochtman 28f133a9f8 Strengthen abstraction for node types 2021-01-20 16:53:31 +01:00
Dirkjan Ochtman d80a2e3f67 Move search() method into Search 2021-01-20 16:52:53 +01:00
Dirkjan Ochtman 5cf83543db Reduce unnecessary work to enforce invariants 2021-01-20 16:29:33 +01:00
Dirkjan Ochtman ecdce08196 Enforce API boundary between Hnsw and Search 2021-01-20 16:29:04 +01:00
Dirkjan Ochtman f66bad132e Use specialized set implementation for faster tracking of visited points 2021-01-20 15:04:30 +01:00
Dirkjan Ochtman 7b84aa8d45 Move support types into a separate module 2021-01-20 14:30:46 +01:00
Dirkjan Ochtman 6250d198ad Add simple benchmark 2021-01-20 13:25:06 +01:00
Dirkjan Ochtman d885f1b72d Bump M to 12 again 2021-01-19 14:15:24 +01:00