Preston Rasmussen
7f20b21572
Entity attributes in prompts ( #284 )
...
* add node attributes to prompts
* tested
* attribute update
2025-03-04 16:34:19 -05:00
Preston Rasmussen
1d2417ec26
Search optimizations ( #280 )
...
fix node distance search
2025-02-27 11:51:10 -05:00
Preston Rasmussen
9efa6762d7
entity typo ( #274 )
2025-02-24 12:44:17 -05:00
Preston Rasmussen
088029a80c
node label filters ( #265 )
...
* node label filters
* update
* add search filters
* updates
* bump versions
* update tests
* test update
2025-02-21 12:38:01 -05:00
Preston Rasmussen
29a071b2b8
Custom ontology ( #262 )
...
* ontology
* extract and save node labels
* extract entity type properties
* neo4j upgrade needed
* add entity types
* update typing
* update types
* updates
* Update graphiti_core/utils/maintenance/node_operations.py
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* fix warning
* mypy updates
* update properties
* mypy ignore
* mypy types
* bump version
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-02-13 12:17:52 -05:00
Preston Rasmussen
6ef2f5e097
Date filters ( #240 )
...
* add search filters
* add search filters
* mypy
* mypy
* update filtering
* date-filters
* update
* update filter queries
* update dictionary
2025-01-28 11:52:53 -05:00
Preston Rasmussen
00fe87679e
Bounded semaphore - limiting concurrency ( #244 )
...
* WIP
* add semaphore
* remove unused imports
* remove unused imports
* lower concurrency limit
2024-12-17 13:08:18 -05:00
Preston Rasmussen
34496ffa6a
Abstract Neo4j filters in search queries ( #243 )
...
* move null check for search queries to python
* update search filtering
* update
* update
2024-12-16 21:45:45 -05:00
Preston Rasmussen
6a152ab91a
fix node distance reranker ( #231 )
2024-12-06 12:08:54 -05:00
Preston Rasmussen
0fbe5c0704
Pagination for get by group_id ( #218 )
...
* add pagination to subgraphs
* update pagination
* update LiteralString import
* cleanup
* cleanup
* update embedding dims
2024-12-02 11:17:37 -05:00
Preston Rasmussen
52c590878a
Update edge search ( #216 )
...
* update edge fulltext search
* bump version
2024-11-15 14:32:11 -05:00
Preston Rasmussen
281fe072cb
add fulltext search limit ( #215 )
...
* add fulltext search limit
* format
* update
* update
* update tests
* remove unused imports
* format
* mypy
2024-11-14 12:18:18 -05:00
Preston Rasmussen
eba9f40ca2
add reflexion ( #212 )
...
* add reflexion
* clean up boolean logic
* update conditional
* cap reflexion iterations
* don't do an extra reflection step
2024-11-13 11:58:56 -05:00
Preston Rasmussen
857a8f61cf
add search recipes ( #210 )
2024-11-06 14:59:17 -05:00
Preston Rasmussen
6536401c8c
return no results with empty search string ( #206 )
...
* return no results with empty search string
* update
* bump version
2024-11-04 10:50:49 -05:00
Preston Rasmussen
b8f52670ce
Bulk add nodes and edges ( #205 )
...
* test
* only use parallel runtime if set to true
* add and test bulk add
* remove group_ids
* format
* bump version
* update readme
2024-10-31 12:31:37 -04:00
Preston Rasmussen
63a1b11142
update new names with input_data ( #204 )
2024-10-29 11:03:31 -04:00
Preston Rasmussen
7bb0c78d5d
Update reranker limits ( #203 )
...
* update reranker limits
* update versions
* format
* update names
* fix: voyage linter
---------
Co-authored-by: paulpaliychuk <pavlo.paliychuk.ca@gmail.com>
2024-10-28 14:50:16 -04:00
Preston Rasmussen
ceb60a3d33
Cross encoder reranker in search query ( #202 )
...
* cross encoder reranker
* update reranker
* add openai reranker
* format
* mypy
* update
* updates
* MyPy typing
* bump version
2024-10-25 12:29:27 -04:00
Pavlo Paliychuk
544f9e3fba
chore: Set up cross encoder client ( #201 )
...
* chore: Set up cross encoder client
* fix: deps
* chore: move voyage to dev deps
2024-10-24 11:36:10 -04:00
Preston Rasmussen
47ba11e08d
Number of Neo4j Connections Optimizations ( #199 )
...
* improve node distance performance
* update episode mentions
* format
* swap to debug log
2024-10-23 13:08:47 -04:00
Preston Rasmussen
50d2308c93
Use sessions search ( #197 )
...
* use sessions for searches
* correct DB name
* fix typo
2024-10-22 10:01:56 -04:00
Preston Rasmussen
b217d1e51f
Make default DB explicit ( #195 )
...
* add default database
* update
* init tests
* update test
* bump version
* removed unused imports
2024-10-21 12:33:32 -04:00
Preston Rasmussen
ecb704364e
update lucene search ( #193 )
...
* update lucene search
* update max query length
* bump version
2024-10-20 14:37:40 -07:00
Preston Rasmussen
737a3bcda6
ZEPAI-676: Remove fuzzy query in fulltext search to avoid errors with large queries ( #192 )
...
* Remove fuzzy query in fulltext search to avoid errors with large queries
* bump version
2024-10-19 11:35:25 -04:00
Preston Rasmussen
194ecf5eb4
set content to empty after episode extractions have happened ( #191 )
...
* set content to empty after episode extractions have happened
* format
* bump version
2024-10-15 12:13:14 -04:00
Preston Rasmussen
7c15b729a9
fix duplicate search results bug ( #190 )
...
* fix bugs
* format
* syntax
2024-10-14 21:54:33 -04:00
Preston Rasmussen
fca1f7342e
Node group error type ( #185 )
...
* add new error
* update for compatibility wit hdev environment
* update
* fix mmr score
* make mmr more readable
2024-10-11 16:51:32 -04:00
Preston Rasmussen
6c3b32e620
make broader use of debug logs ( #187 )
2024-10-11 16:38:56 -04:00
Preston Rasmussen
49aeaf75f2
Add mmr reranking ( #180 )
...
* mmr start
* add mmr function
* normalize
* add mmr options to search
* update communities
* build communities
* format
* clean up normalization
* normalize in mmr
* update
2024-10-08 13:55:10 -04:00
Preston Rasmussen
c8ff5be8ce
Msc benchmark update ( #173 )
...
* eval update
* I sped it up
* make format
* search updates
* updates
* cleanup
* make format
* remove unused imports
* poetry lock
2024-10-03 15:39:35 -04:00
Pavlo Paliychuk
a7148d6260
feat: Dedicated embedder interface ( #159 )
...
* feat: Add Embedder interface and implement openai embedder
* feat: Add voyage ai embedder
2024-09-27 12:47:04 -04:00
ARNO
5bd18fc7dd
feat: configurable embedding model ( #156 )
...
* feat: configurable embedding model
format
* chore: Update comment
* chore: Pass embedding model in search utils
---------
Co-authored-by: paulpaliychuk <pavlo.paliychuk.ca@gmail.com>
2024-09-26 13:31:22 -07:00
Preston Rasmussen
fd341a6f16
Add MSC benchmark and improve search performance ( #157 )
...
* test cases
* test
* benchmark
* eval updates
* improve search performance
* remove data
* formatting
* add None type to config
* update sanitization
* push version
* maketrans update
* mypy
2024-09-26 16:12:38 -04:00
Preston Rasmussen
794b705664
Group id fix ( #152 )
...
* node distance and group_ids fixed
* get all with no group_id passed
* push
* push
* remove comments
* mypy
* mypy ids
* please mypy
* trust
* last one
2024-09-24 15:55:30 -04:00
Preston Rasmussen
e398f95612
Mentions reranker ( #124 )
...
* documentation update
* update communities
* mentions reranker
* fix episode edge mentions
* get episode mentions
* add communities to mentions endpoint
* rebase
* defaults episodes to empty list
* update
2024-09-18 15:44:28 -04:00
Pavlo Paliychuk
19a6ebc6fe
Fix groupless search ( #118 )
...
* fix(search): 🐛 Search across null group_ids
* chore: Version bump
* chore: Set group_ids to none if it's an empty list
* fix: Check for group ids being a list before setting it to None if empty
* fix check
* chore: Simplify group_ids check
* chore: Simplify the check further
2024-09-16 16:23:07 -04:00
Preston Rasmussen
d7c20c1f59
Search refactor + Community search ( #111 )
...
* WIP
* WIP
* WIP
* community search
* WIP
* WIP
* integration tested
* tests
* tests
* mypy
* mypy
* format
2024-09-16 14:03:05 -04:00
Preston Rasmussen
85cf8e5840
Improve node distance reranker speed ( #107 )
...
* much faster
* clean up code
* variable rename
2024-09-12 11:23:45 -04:00
Preston Rasmussen
42fb590606
Add group ids ( #89 )
...
* set and retrieve group ids
* update add episode with group id support
* add episode and search functional
* update bulk
* mypy updates
* remove unused imports
* update unit tests
* unit tests
* add optional uuid field
* format
* mypy
* ellipsis
2024-09-06 12:33:42 -04:00
Preston Rasmussen
a29c3557d3
fix clearing name embeddings bug ( #87 )
...
fix bug
2024-09-05 14:09:19 -04:00
Preston Rasmussen
299021173b
Add episode refactor ( #85 )
...
* temp commit while moving
* fix name embedding bug
* invalidation
* format
* tests on runner examples
* format
* ellipsis
* ruff
* fix
* format
* minor prompt change
2024-09-05 12:05:44 -04:00
Preston Rasmussen
e56a599a72
search update ( #81 )
...
* search update
* update string literals
2024-09-04 10:05:45 -04:00
Preston Rasmussen
e9e6039b1e
Speed up add episode ( #77 )
...
* WIP
* updates
* use uuid for node dedupe
* pret-testing
* parallelized node resolution
* working add_episode
* revert to 4o
* format
* mypy update
* update types
2024-09-03 13:25:52 -04:00
Daniel Chalef
fe20c0f51d
Node Distance Reranker: Limit max hops (and cleanup prints) ( #72 )
...
* limit SHORTEST max hops
* cleanup prints
2024-09-01 12:16:04 -07:00
Preston Rasmussen
35a4e5172b
add bulk temporal extraction and improve bulk quality and performance ( #67 )
...
* parallelize edge deduping more
* parallelize node insertion more
* improve bulk behavior performance
* dedupe nodes actually works
* add a reranker to search
* bulk dedupe episodes only across the same nodes
* add temporal extraction bulk function
* cleaned up bulk
* default to 4o
* format
* mypy
* mympy
* mypy ignore
2024-08-30 10:48:28 -04:00
Preston Rasmussen
06d8d9359f
Add Missing Node and edge CRUD ( #51 )
...
* add CRUD operations and fix search limit bugs
* format
* update tests
* å
* update tests to double limit call
* add default field
* format
* import correct field
2024-08-27 16:18:01 -04:00
Daniel Chalef
2d0705fc1b
Add get_nodes_by_query method to Graphiti class ( #49 )
...
* Add get_nodes_by_query method to Graphiti class
Add a method to the Graphiti class that wraps `get_relevant_nodes` and returns a list of nodes given a query.
* Add `get_nodes_by_query` method to the `Graphiti` class in `graphiti_core/graphiti.py`.
* Import `generate_embedding` from `graphiti_core/llm_client/utils.py`.
* Use `generate_embedding` to generate an embedding for the query.
* Call `get_relevant_nodes` with the generated embedding and return the relevant nodes.
Add an embedding function to `llm_client/utils.py`.
* Add `generate_embedding` function to `graphiti_core/llm_client/utils.py`.
* Accept an embedder and model_id as parameters.
* Generate an embedding for the given text and return it.
---
For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/getzep/graphiti?shareId=XXXX-XXXX-XXXX-XXXX ).
* address comments left by @danielchalef on #49 (Add get_nodes_by_query method to Graphiti class);
* fix ellipsis name in cla config
* feat: Add get_nodes_by_query method to Graphiti class
* chore: Cleanup unused files, add hybrid node search, add tests
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: paulpaliychuk <pavlo.paliychuk.ca@gmail.com>
2024-08-26 20:00:28 -07:00
Preston Rasmussen
2d01e5d7b7
Search node centering ( #45 )
...
* add new search reranker and update search
* node distance reranking
* format
* rebase
* no need for enumerate
* mypy typing
* defaultdict update
* rrf prelim ranking
2024-08-26 18:34:57 -04:00
Pavlo Paliychuk
0ed7739bc0
Controlled example ( #37 )
...
* chore: Add romeo runner
* fix: Linter
* dedupe fixes
* wip
* wip dump
* allbirds
* chore: Update romeo parser
* chore: Anthropic model fix
* allbirds runner
* format
* wip
* mypy updates
* update
* remove r
* update tests
* format
* wip
* wip
* wip
* chore: Strategically update the message
* chore: Add romeo runner
* fix: Linter
* wip
* wip dump
* chore: Update romeo parser
* chore: Anthropic model fix
* wip
* allbirds
* allbirds runner
* format
* wip
* wip
* mypy updates
* update
* remove r
* update tests
* format
* wip
* chore: Strategically update the message
* rebase and fix import issues
* Update package imports for graphiti_core in examples and utils
* nits
* chore: Update OpenAI GPT-4o model to gpt-4o-2024-08-06
* implement groq
* improvments & linting
* cleanup and nits
* Refactor package imports for graphiti_core in examples and utils
* Refactor package imports for graphiti_core in examples and utils
* chore: Nuke unused examples
* chore: Nuke unused examples
* chore: Only run type check on graphiti_core
* fix unit tests
* reformat
* unit test
* fix: Unit tests
* test: Add coverage for extract_date_strings_from_edge
* lint
* remove commented code
---------
Co-authored-by: prestonrasmussen <prasmuss15@gmail.com>
Co-authored-by: Daniel Chalef <131175+danielchalef@users.noreply.github.com>
2024-08-26 10:30:22 -04:00