Loïc Lecrenier
|
4e266211bf
|
Small code reorganisation
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
57fa689131
|
Cargo fmt
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
10626dddfc
|
Add a few more optimisations to new search algorithms
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
9051065c22
|
Apply a few optimisations for graph-based ranking rules
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
e8c76cf7bf
|
Intern all strings and phrases in the search logic
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
3f1729a17f
|
Update new search test
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
cab2b6bcda
|
Fix: computation of initial universe, code organisation
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
c4979a2fda
|
Fix code visibility issue + unimplemented detail in proximity rule
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
23931f8a4f
|
Fix small bug in visual logger of search algo
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
aa414565bb
|
Fix proximity graph edge builder to include all proximities
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
1db152046e
|
WIP on split words and synonyms support
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
c27ea2677f
|
Rewrite cheapest path algorithm and empty path cache
It is now much simpler and has much better performance.
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
caa1e1b923
|
Add typo ranking rule to new search impl
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
71f18e4379
|
Add sort ranking rule to new search impl
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
600e3dd1c5
|
Remove warnings
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
362eb0de86
|
Add support for filters
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
998d46ac10
|
Add support for search offset and limit
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
6c85c0d95e
|
Fix more bugs + visual empty path cache logging
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
0e1fbbf7c6
|
Fix bugs in query graph's "remove word" and "cheapest paths" algos
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
6806640ef0
|
Fix d2 description of paths map
|
2023-03-20 09:41:56 +01:00 |
|
Loïc Lecrenier
|
173e37584c
|
Improve the visual/detailed search logger
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
6ba4d5e987
|
Add a search logger
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
dd12d44134
|
Support swapped word pairs in new proximity ranking rule impl
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
a61495d660
|
Update Cargo.toml (commit to be deleted later)
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
c8e251bf24
|
Remove noise in codebase
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
a938fbde4a
|
Use a cache when resolving the query graph
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
dcf3f1d18a
|
Remove EdgeIndex and NodeIndex types, prefer u32 instead
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
66d0c63694
|
Add some documentation and use bitmaps instead of hashmaps when possible
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
132191360b
|
Introduce the sort ranking rule working with the new search structures
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
345c99d5bd
|
Introduce the words ranking rule working with the new search structures
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
89d696c1e3
|
Introduce the proximity ranking rule as a graph-based ranking rule
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
c645853529
|
Introduce a generic graph-based ranking rule
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
a70ab8b072
|
Introduce a function to find the K shortest paths in a graph
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
48aae76b15
|
Introduce a function to find the docids of a set of paths in a graph
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
23bf572dea
|
Introduce cache structures used with ranking rule graphs
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
864f6410ed
|
Introduce a structure to represent a set of graph paths efficiently
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
c9bf6bb2fa
|
Introduce a structure to implement ranking rules with graph algorithms
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
46249ea901
|
Implement a function to find a QueryGraph's docids
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
ce0d1e0e13
|
Introduce a common way to manage the coordination between ranking rules
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
5065d8b0c1
|
Introduce a DatabaseCache to memorize the addresses of LMDB values
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
a83007c013
|
Introduce structure to represent search queries as graphs
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
79e0a6dd4e
|
Introduce a new search module, eventually meant to replace the old one
The code here does not compile, because I am merely splitting one giant
commit into smaller ones where each commit explains a single file.
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
2d88089129
|
Remove unused term matching strategies
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
1d937f831b
|
Temporarily remove codegen-units - 1
|
2023-03-20 09:41:55 +01:00 |
|
Loïc Lecrenier
|
6c659dc12f
|
Use MiMalloc in milli tests
|
2023-03-20 09:41:37 +01:00 |
|
Clément Renault
|
a8531053a0
|
Make sure the parser reject invalid syntax
|
2023-03-16 11:09:20 +01:00 |
|
Clément Renault
|
cf34d1c95f
|
Fix a test that forget to match a Null value
|
2023-03-15 17:17:19 +01:00 |
|
Clément Renault
|
1a9c58a7ab
|
Fix a bug with the new flattening rules
|
2023-03-15 16:56:44 +01:00 |
|
Clément Renault
|
64571c8288
|
Improve the testing of the filters
|
2023-03-15 14:57:17 +01:00 |
|
Clément Renault
|
72123c458b
|
Fix the tests to make flattening work
|
2023-03-15 14:12:34 +01:00 |
|