Commit graph

233 commits

Author SHA1 Message Date
Daniel Chalef
06aac18e95
feat: add retry logic and improve logging in OpenAIClient (#229)
Refactor OpenAIClient to handle retries and improve error handling
2024-12-06 07:34:51 -08:00
Preston Rasmussen
7ca6121cde
update summary length (#227) 2024-12-05 15:51:31 -05:00
Daniel Chalef
567a8ab74a
Implement OpenAI Structured Output (#225)
* implement so

* bug fixes and typing

* inject schema for non-openai clients

* correct datetime format

* remove List keyword

* Refactor node_operations.py to use updated prompt_library functions

* update example
2024-12-05 07:03:18 -08:00
Preston Rasmussen
427c73d2a8
add unicode escape (#224)
* add unicode escape

* bump version
2024-12-03 11:52:49 -05:00
Preston Rasmussen
e42d3ae46c
update episode override (#219)
* update episode override

* remove unused import
2024-12-02 11:47:06 -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
397291de4b
add delete nodes by group_id (#217)
* add delete nodes by group_id

* remove unused imports

* bump version
2024-11-18 13:55:18 -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
a8a73ec38b
Add episode latency improvements (#214)
* reformat prompts

* update prompts

* update

* update

* update

* update

* update

* mypy
2024-11-13 20:13:06 -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
471741c05a
Fix OpenAI cross-encoder prompt (#213)
* fix

* format
2024-11-12 16:28:41 -05:00
Preston Rasmussen
857a8f61cf
add search recipes (#210) 2024-11-06 14:59:17 -05:00
Preston Rasmussen
3199e893ed
add_fact endpoint (#207)
* add_fact endpoint

* bump version

* add edge invalidation

* update
2024-11-06 09:12:21 -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
1290d0fecb
load env in helper file (#196)
* load env in helper file

* bump version
2024-10-22 08:49:14 -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
e15c872900
Fix edge invalidation (#174)
* update edge operations

* add new tests
2024-10-07 11:45:31 -04:00
Preston Rasmussen
377225eec5
add addepisode return object (#172)
* add addepisode return

* format
2024-10-03 15:39:57 -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
Preston Rasmussen
ec2e51c5ec
test escape characters (#171)
* test escape characters

* format

* tests

* run tests

* copyright
2024-10-03 10:08:30 -04:00
Preston Rasmussen
ae9b5eca9c
update lucene sanitizer (#170)
* update lucene sanitizer

* update
2024-10-02 11:58:12 -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
Pavlo Paliychuk
b537cf56e5
chore: Make deleting groups safer (#155)
* chore: Make deleting groups safer

* chore: Use appropriate errors in delete group checks

* chore: Add GroupsEdgesNotFound error type
2024-09-24 20:08:09 -04:00
Pavlo Paliychuk
44b016da6b
feat: async close and multi-group search support (#151)
* chore: Support a list of group_ids on search + await driver.close()

* fix: formatter and linter

* chore: Version bump
2024-09-24 16:13:04 -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
5506a01e24
In memory label propagation community detection (#136)
* WIP

* in memory graph detection

* format

* add comments

* update readme

* fixed an issue where solo nodes would throw an error when building communities
2024-09-23 11:05:44 -04:00
Pavlo Paliychuk
2fc1b00602
feat: add FastAPI lifespan and healthcheck endpoint (#144)
* chore: Add healthcheck endpoint + build indexes and constraints on svc startup

* chore: Bring back driver close call
2024-09-23 10:12:35 -04:00
Daniel Chalef
5d2121e1a3
limit community building concurrency (#142) 2024-09-22 13:38:54 -07:00
Daniel Chalef
14d5ce0b36
Override default max tokens for Anthropic and Groq clients (#143)
* Override default max tokens for Anthropic and Groq clients

* Override default max tokens for Anthropic and Groq clients

* Override default max tokens for Anthropic and Groq clients
2024-09-22 11:33:54 -07:00
Daniel Chalef
a1d871e179
chore: Update DEFAULT_MAX_TOKENS to 16384 in config.py (#138) 2024-09-22 09:57:41 -07:00
Daniel Chalef
9b71b46c0f
feat: Refactor OpenAIClient initialization and add client parameter (#140)
The code changes refactor the `OpenAIClient` initialization to accept an optional `client` parameter. This allows the client to be passed in from outside, providing more flexibility and enabling easier testing.
2024-09-21 12:09:04 -07:00
Daniel Chalef
32b51530ec
feat: Fix bug in dedupe_node_list function (#137)
The code changes fix a bug in the `dedupe_node_list` function where a node instance was not found in the node map. The bug is now handled by logging a warning message and skipping the iteration. This ensures that the function continues to execute without any errors.
2024-09-20 21:03:20 -07:00
Daniel Chalef
6d065d363a
Handle JSONDecodeError in is_server_or_retry_error function (#133)
feat: handle JSONDecodeError in is_server_or_retry_error function
2024-09-20 11:16:04 -07:00