graphiti-core 0.8.4__tar.gz → 0.8.6__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of graphiti-core might be problematic. Click here for more details.

Files changed (61) hide show
  1. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/PKG-INFO +1 -1
  2. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/edges.py +1 -3
  3. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/llm_client/config.py +1 -1
  4. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/maintenance/graph_data_operations.py +11 -2
  5. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/maintenance/node_operations.py +6 -1
  6. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/pyproject.toml +1 -1
  7. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/LICENSE +0 -0
  8. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/README.md +0 -0
  9. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/__init__.py +0 -0
  10. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/cross_encoder/__init__.py +0 -0
  11. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/cross_encoder/bge_reranker_client.py +0 -0
  12. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/cross_encoder/client.py +0 -0
  13. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/cross_encoder/openai_reranker_client.py +0 -0
  14. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/embedder/__init__.py +0 -0
  15. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/embedder/client.py +0 -0
  16. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/embedder/openai.py +0 -0
  17. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/embedder/voyage.py +0 -0
  18. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/errors.py +0 -0
  19. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/graphiti.py +0 -0
  20. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/helpers.py +0 -0
  21. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/llm_client/__init__.py +0 -0
  22. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/llm_client/anthropic_client.py +0 -0
  23. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/llm_client/client.py +0 -0
  24. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/llm_client/errors.py +0 -0
  25. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/llm_client/groq_client.py +0 -0
  26. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/llm_client/openai_client.py +0 -0
  27. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/llm_client/openai_generic_client.py +0 -0
  28. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/llm_client/utils.py +0 -0
  29. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/models/__init__.py +0 -0
  30. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/models/edges/__init__.py +0 -0
  31. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/models/edges/edge_db_queries.py +0 -0
  32. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/models/nodes/__init__.py +0 -0
  33. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/models/nodes/node_db_queries.py +0 -0
  34. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/nodes.py +0 -0
  35. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/__init__.py +0 -0
  36. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/dedupe_edges.py +0 -0
  37. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/dedupe_nodes.py +0 -0
  38. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/eval.py +0 -0
  39. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/extract_edge_dates.py +0 -0
  40. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/extract_edges.py +0 -0
  41. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/extract_nodes.py +0 -0
  42. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/invalidate_edges.py +0 -0
  43. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/lib.py +0 -0
  44. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/models.py +0 -0
  45. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/prompt_helpers.py +0 -0
  46. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/prompts/summarize_nodes.py +0 -0
  47. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/py.typed +0 -0
  48. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/search/__init__.py +0 -0
  49. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/search/search.py +0 -0
  50. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/search/search_config.py +0 -0
  51. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/search/search_config_recipes.py +0 -0
  52. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/search/search_filters.py +0 -0
  53. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/search/search_utils.py +0 -0
  54. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/__init__.py +0 -0
  55. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/bulk_utils.py +0 -0
  56. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/datetime_utils.py +0 -0
  57. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/maintenance/__init__.py +0 -0
  58. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/maintenance/community_operations.py +0 -0
  59. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/maintenance/edge_operations.py +0 -0
  60. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/maintenance/temporal_operations.py +0 -0
  61. {graphiti_core-0.8.4 → graphiti_core-0.8.6}/graphiti_core/utils/maintenance/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: graphiti-core
3
- Version: 0.8.4
3
+ Version: 0.8.6
4
4
  Summary: A temporal graph building library
5
5
  License: Apache-2.0
6
6
  Author: Paul Paliychuk
@@ -26,7 +26,7 @@ from pydantic import BaseModel, Field
26
26
  from typing_extensions import LiteralString
27
27
 
28
28
  from graphiti_core.embedder import EmbedderClient
29
- from graphiti_core.errors import EdgeNotFoundError, EdgesNotFoundError, GroupsEdgesNotFoundError
29
+ from graphiti_core.errors import EdgeNotFoundError, GroupsEdgesNotFoundError
30
30
  from graphiti_core.helpers import DEFAULT_DATABASE, parse_db_date
31
31
  from graphiti_core.models.edges.edge_db_queries import (
32
32
  COMMUNITY_EDGE_SAVE,
@@ -289,8 +289,6 @@ class EntityEdge(Edge):
289
289
 
290
290
  edges = [get_entity_edge_from_record(record) for record in records]
291
291
 
292
- if len(edges) == 0:
293
- raise EdgesNotFoundError(uuids)
294
292
  return edges
295
293
 
296
294
  @classmethod
@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
15
  """
16
16
 
17
- DEFAULT_MAX_TOKENS = 2048
17
+ DEFAULT_MAX_TOKENS = 8192
18
18
  DEFAULT_TEMPERATURE = 0
19
19
 
20
20
 
@@ -92,13 +92,22 @@ async def build_indices_and_constraints(driver: AsyncDriver, delete_existing: bo
92
92
  )
93
93
 
94
94
 
95
- async def clear_data(driver: AsyncDriver):
95
+ async def clear_data(driver: AsyncDriver, group_ids: list[str] | None = None):
96
96
  async with driver.session() as session:
97
97
 
98
98
  async def delete_all(tx):
99
99
  await tx.run('MATCH (n) DETACH DELETE n')
100
100
 
101
- await session.execute_write(delete_all)
101
+ async def delete_group_ids(tx):
102
+ await tx.run(
103
+ 'MATCH (n:Entity|Episodic|Community) WHERE n.group_id IN $group_ids DETACH DELETE n',
104
+ group_ids=group_ids,
105
+ )
106
+
107
+ if group_ids is None:
108
+ await session.execute_write(delete_all)
109
+ else:
110
+ await session.execute_write(delete_group_ids)
102
111
 
103
112
 
104
113
  async def retrieve_episodes(
@@ -15,6 +15,7 @@ limitations under the License.
15
15
  """
16
16
 
17
17
  import logging
18
+ from contextlib import suppress
18
19
  from time import time
19
20
 
20
21
  import pydantic
@@ -365,9 +366,13 @@ async def resolve_extracted_node(
365
366
 
366
367
  extracted_node.summary = node_attributes_response.get('summary', '')
367
368
  node_attributes = {
368
- key: value if value != 'None' else None for key, value in node_attributes_response.items()
369
+ key: value if (value != 'None' or key == 'summary') else None
370
+ for key, value in node_attributes_response.items()
369
371
  }
370
372
 
373
+ with suppress(KeyError):
374
+ del node_attributes['summary']
375
+
371
376
  extracted_node.attributes.update(node_attributes)
372
377
 
373
378
  is_duplicate: bool = llm_response.get('is_duplicate', False)
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "graphiti-core"
3
- version = "0.8.4"
3
+ version = "0.8.6"
4
4
  description = "A temporal graph building library"
5
5
  authors = [
6
6
  "Paul Paliychuk <paul@getzep.com>",
File without changes
File without changes