Preston Rasmussen
ab8106cb4f
move summary out of attribute extraction ( #792 )
...
* move summary out of attribute extraction
* linter
* linter
* fix db query
2025-07-31 12:15:21 -04:00
prestonrasmussen
6f3a4f19eb
dedupe prompt update
2025-07-29 18:43:42 -04:00
Preston Rasmussen
19bddb5528
validate pydantic objects ( #783 )
...
* validate pydantic objects
* unused imports
* linter
2025-07-29 17:54:09 -04:00
Preston Rasmussen
5d45d71259
Bulk updates ( #732 )
...
* updates
* update
* update
* typo
* linter
2025-07-16 02:26:33 -04:00
Preston Rasmussen
0675ac2b7d
Bulk ingestion ( #698 )
...
* partial
* update
* update
* update
* update
* updates
* updates
* update
* update
2025-07-10 12:14:49 -04:00
prestonrasmussen
c6f7c98598
updates
2025-06-26 15:38:05 -04:00
Preston Rasmussen
2b27353097
Node name bug fix ( #622 )
...
* fixes
* fix bugs
* change version
2025-06-24 17:13:27 -04:00
Preston Rasmussen
760ca7e90c
Node name bug ( #605 )
...
* prompt update
* prompt update
* revert quickstart changes
2025-06-18 18:20:28 -04:00
Preston Rasmussen
2b0bc21b21
be more explicit about edge type signatures ( #600 )
...
* be more explicit about edge type signatures
* bump version
* update
2025-06-18 16:01:00 -04:00
Preston Rasmussen
e8bf81fc6b
add IS_DUPLICATE_OF edges ( #599 )
...
* add IS_DUPLICATE_OF edges
* cypher query update
* robust handling
2025-06-17 11:56:55 -04:00
Preston Rasmussen
ebee09b335
Edge extraction and Node Deduplication updates ( #564 )
...
* update tests
* updated fact extraction
* optimize node deduplication
* linting
* Update graphiti_core/utils/maintenance/edge_operations.py
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-06-06 12:28:52 -04:00
Preston Rasmussen
db7595fe63
Edge types ( #501 )
...
* update entity edge attributes
* Adding prompts
* extract fact attributes
* edge types
* edge types no regressions
* mypy
* mypy update
* Update graphiti_core/prompts/dedupe_edges.py
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Update graphiti_core/prompts/dedupe_edges.py
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* mypy
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-05-19 13:30:56 -04:00
Preston Rasmussen
9422b6f5fb
Node dedupe efficiency ( #490 )
...
* update resolve extracted edge
* updated edge resolution
* dedupe nodes update
* single pass node resolution
* updates
* mypy updates
* Update graphiti_core/prompts/dedupe_nodes.py
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* remove unused imports
* mypy
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-05-15 13:56:33 -04:00
Preston Rasmussen
fd9969b5a1
Update dedupe prompt ( #457 )
...
* improve dedupe logic
* cut summary length
* update unit tests
2025-05-07 23:23:31 -04:00
Preston Rasmussen
6b85e92105
Fix empty node name issues ( #433 )
...
* fixes
* fix
* remove unused imports
* format
* bump version
2025-05-02 12:16:26 -04:00
Preston Rasmussen
2ffc58b3da
small model fix ( #432 )
...
* updated dedupe nodes operations
* updates
* Update examples/podcast/podcast_transcript.txt
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* mypy
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-05-02 10:08:25 -04:00
Preston Rasmussen
1193b25fa3
add_episode() refactor (#421 )
...
* temporal updates
* update resolve nodes
* dedupe edge updates
* edge dedupe
* extract attributes
* update dynamic pydantic model
* first pass of extract node attributes
* no errors
* bug fixes
* bug fixes
* prompt updates
* prompt updates
* updates
* updates
* remove unused imports
* update tests based on changes
* remove unused import
2025-04-30 12:08:52 -04:00
Preston Rasmussen
f578ee2177
prompt update ( #378 )
2025-04-18 00:09:12 -04:00
Preston Rasmussen
5274970be3
reduce entity type attribute hallucinations ( #365 )
...
* reduce entity type attribute hallucinations
* reduce entity type attribute hallucinations
* reduce entity type attribute hallucinations
* mypy fix
* mypy fix
* mypy fix
2025-04-16 19:09:25 -04:00
Preston Rasmussen
5dce26722e
e2e graph builder eval ( #343 )
...
* add partial eval platform
* dedupe updates
* add e2e eval
* Update graphiti_core/prompts/eval.py
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* clear all outputs
* clear all outputs
* squash eval commits
* Update tests/evals/data/utils.py
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* add longmemeval disclaimer
* remove gitignore
* add copyright headers
* add cli
* Update tests/evals/data/longmemeval_data/README.md
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Update tests/evals/eval_e2e_graph_building.py
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* updates
---------
Co-authored-by: jackaldenryan <jackaldenryan@gmail.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-04-12 10:35:22 -04:00
Daniel Chalef
7f7a17c926
chore: update dependencies and refactor type hinting ( #339 )
...
* Bump version from 0.9.0 to 0.9.1 in pyproject.toml and update google-genai dependency to >=0.1.0
* Bump version from 0.9.1 to 0.9.2 in pyproject.toml
* Update google-genai dependency version to >=0.8.0 in pyproject.toml
* loc file
* Update pyproject.toml to version 0.9.3, restructure dependencies, and modify author format. Remove outdated Google API key note from README.md.
* upgrade poetry and ruff
* Update README.md to include installation instructions for Graphiti with Google Gemini support
* fix to deps since peotry doesn't fully implement PEP 735
* Refactor string formatting in various files to use single quotes for consistency and improve readability. This includes updates in agent.ipynb, quickstart.py, multiple prompt files, and ingest.py and retrieve.py modules.
* Remove optional dependencies from pyproject.toml to streamline project requirements.
2025-04-09 08:05:26 -07:00
Daniel Chalef
0f6ac57dab
chore: update version to 0.9.3 and restructure dependencies ( #338 )
...
* Bump version from 0.9.0 to 0.9.1 in pyproject.toml and update google-genai dependency to >=0.1.0
* Bump version from 0.9.1 to 0.9.2 in pyproject.toml
* Update google-genai dependency version to >=0.8.0 in pyproject.toml
* loc file
* Update pyproject.toml to version 0.9.3, restructure dependencies, and modify author format. Remove outdated Google API key note from README.md.
* upgrade poetry and ruff
2025-04-08 20:47:38 -07:00
Daniel Chalef
9e78890f2e
Gemini support ( #324 )
...
* first cut
* Update dependencies and enhance README for optional LLM providers
- Bump aiohttp version from 3.11.14 to 3.11.16
- Update yarl version from 1.18.3 to 1.19.0
- Modify pyproject.toml to include optional extras for Anthropic, Groq, and Google Gemini
- Revise README.md to reflect new optional LLM provider installation instructions and clarify API key requirements
* Remove deprecated packages from poetry.lock and update content hash
- Removed cachetools, google-auth, google-genai, pyasn1, pyasn1-modules, rsa, and websockets from the lock file.
- Added new extras for anthropic, google-genai, and groq.
- Updated content hash to reflect changes.
* Refactor import paths for GeminiClient in README and __init__.py
- Updated import statement in README.md to reflect the new module structure for GeminiClient.
- Removed GeminiClient from the __all__ list in __init__.py as it is no longer directly imported.
* Refactor import paths for GeminiEmbedder in README and __init__.py
- Updated import statement in README.md to reflect the new module structure for GeminiEmbedder.
- Removed GeminiEmbedder and GeminiEmbedderConfig from the __all__ list in __init__.py as they are no longer directly imported.
2025-04-06 09:27:04 -07:00
Preston Rasmussen
04203506d9
fix bug with updating node type attributes ( #305 )
...
fix bug with saving new properties
2025-03-26 12:37:48 -04:00
Preston Rasmussen
f73867e0fa
Entity classification updates ( #285 )
...
* updates
* tested
* remove unused imports
* llm outputs will be dicts rather than pydantic models
* removed unused imports
2025-03-05 12:08:11 -05:00
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
6f874730f3
Entity classification updates ( #281 )
...
* node classification updates
* update
* remove unused code
* update
2025-02-27 15:12:50 -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
0e45d15462
Add triple update ( #263 )
...
* update add-triplet
* test fixes
2025-02-12 12:04:43 -05: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
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
e15c872900
Fix edge invalidation ( #174 )
...
* update edge operations
* add new tests
2024-10-07 11:45:31 -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
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
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
c0a740ff60
Community nodes ( #103 )
...
* add gds
* community work
* save progress
* community updates
* e2e communities
* troubleshooting
* updates
* communities
* remove unused import
2024-09-11 12:06:35 -04:00
Preston Rasmussen
4122d350a5
add extract nodes from text prompt ( #106 )
2024-09-11 12:06:08 -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
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
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
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
Daniel Chalef
c5e52153c4
chore: Fix packaging ( #38 )
...
* feat: Update project name and description
The project name and description in the `pyproject.toml` file have been updated to reflect the changes made to the project.
* chore: Update pyproject.toml to include core package
The `pyproject.toml` file has been updated to include the `core` package in the list of packages. This change ensures that the `core` package is included when building the project.
* fix imports
* fix importats
2024-08-25 10:07:50 -07:00