don't save duplicate edges
This commit is contained in:
parent
c794f8881b
commit
87ecf03738
4 changed files with 4 additions and 14 deletions
|
|
@ -503,7 +503,7 @@ class Graphiti:
|
||||||
)
|
)
|
||||||
|
|
||||||
# Extract edges and resolve nodes
|
# Extract edges and resolve nodes
|
||||||
(nodes, uuid_map, node_duplicates), extracted_edges = await semaphore_gather(
|
(nodes, uuid_map, _), extracted_edges = await semaphore_gather(
|
||||||
resolve_extracted_nodes(
|
resolve_extracted_nodes(
|
||||||
self.clients,
|
self.clients,
|
||||||
extracted_nodes,
|
extracted_nodes,
|
||||||
|
|
@ -540,9 +540,7 @@ class Graphiti:
|
||||||
max_coroutines=self.max_coroutines,
|
max_coroutines=self.max_coroutines,
|
||||||
)
|
)
|
||||||
|
|
||||||
duplicate_of_edges = build_duplicate_of_edges(episode, now, node_duplicates)
|
entity_edges = resolved_edges + invalidated_edges
|
||||||
|
|
||||||
entity_edges = resolved_edges + invalidated_edges + duplicate_of_edges
|
|
||||||
|
|
||||||
episodic_edges = build_episodic_edges(nodes, episode.uuid, now)
|
episodic_edges = build_episodic_edges(nodes, episode.uuid, now)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -282,14 +282,6 @@ async def resolve_extracted_nodes(
|
||||||
resolved_nodes.append(resolved_node)
|
resolved_nodes.append(resolved_node)
|
||||||
uuid_map[extracted_node.uuid] = resolved_node.uuid
|
uuid_map[extracted_node.uuid] = resolved_node.uuid
|
||||||
|
|
||||||
duplicates: list[int] = resolution.duplicates
|
|
||||||
if duplicate_idx not in duplicates and duplicate_idx > -1:
|
|
||||||
duplicates.append(duplicate_idx)
|
|
||||||
for idx in duplicates:
|
|
||||||
existing_node = existing_nodes[idx] if idx < len(existing_nodes) else resolved_node
|
|
||||||
|
|
||||||
node_duplicates.append((extracted_node, existing_node))
|
|
||||||
|
|
||||||
logger.debug(f'Resolved nodes: {[(n.name, n.uuid) for n in resolved_nodes]}')
|
logger.debug(f'Resolved nodes: {[(n.name, n.uuid) for n in resolved_nodes]}')
|
||||||
|
|
||||||
new_node_duplicates: list[
|
new_node_duplicates: list[
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
[project]
|
[project]
|
||||||
name = "graphiti-core"
|
name = "graphiti-core"
|
||||||
description = "A temporal graph building library"
|
description = "A temporal graph building library"
|
||||||
version = "0.21.0pre5"
|
version = "0.21.0pre6"
|
||||||
authors = [
|
authors = [
|
||||||
{ name = "Paul Paliychuk", email = "paul@getzep.com" },
|
{ name = "Paul Paliychuk", email = "paul@getzep.com" },
|
||||||
{ name = "Preston Rasmussen", email = "preston@getzep.com" },
|
{ name = "Preston Rasmussen", email = "preston@getzep.com" },
|
||||||
|
|
|
||||||
2
uv.lock
generated
2
uv.lock
generated
|
|
@ -783,7 +783,7 @@ wheels = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "graphiti-core"
|
name = "graphiti-core"
|
||||||
version = "0.21.0rc5"
|
version = "0.21.0rc6"
|
||||||
source = { editable = "." }
|
source = { editable = "." }
|
||||||
dependencies = [
|
dependencies = [
|
||||||
{ name = "diskcache" },
|
{ name = "diskcache" },
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue