add episode bulk search results (#897)
* add episode bulk search results * update * docstring * update
This commit is contained in:
parent
792bcc52bd
commit
7e6d93fa32
3 changed files with 22 additions and 5 deletions
|
|
@ -113,6 +113,15 @@ class AddEpisodeResults(BaseModel):
|
||||||
community_edges: list[CommunityEdge]
|
community_edges: list[CommunityEdge]
|
||||||
|
|
||||||
|
|
||||||
|
class AddBulkEpisodeResults(BaseModel):
|
||||||
|
episodes: list[EpisodicNode]
|
||||||
|
episodic_edges: list[EpisodicEdge]
|
||||||
|
nodes: list[EntityNode]
|
||||||
|
edges: list[EntityEdge]
|
||||||
|
communities: list[CommunityNode]
|
||||||
|
community_edges: list[CommunityEdge]
|
||||||
|
|
||||||
|
|
||||||
class Graphiti:
|
class Graphiti:
|
||||||
def __init__(
|
def __init__(
|
||||||
self,
|
self,
|
||||||
|
|
@ -572,7 +581,6 @@ class Graphiti:
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
raise e
|
raise e
|
||||||
|
|
||||||
##### EXPERIMENTAL #####
|
|
||||||
async def add_episode_bulk(
|
async def add_episode_bulk(
|
||||||
self,
|
self,
|
||||||
bulk_episodes: list[RawEpisode],
|
bulk_episodes: list[RawEpisode],
|
||||||
|
|
@ -581,7 +589,7 @@ class Graphiti:
|
||||||
excluded_entity_types: list[str] | None = None,
|
excluded_entity_types: list[str] | None = None,
|
||||||
edge_types: dict[str, type[BaseModel]] | None = None,
|
edge_types: dict[str, type[BaseModel]] | None = None,
|
||||||
edge_type_map: dict[tuple[str, str], list[str]] | None = None,
|
edge_type_map: dict[tuple[str, str], list[str]] | None = None,
|
||||||
):
|
) -> AddBulkEpisodeResults:
|
||||||
"""
|
"""
|
||||||
Process multiple episodes in bulk and update the graph.
|
Process multiple episodes in bulk and update the graph.
|
||||||
|
|
||||||
|
|
@ -597,7 +605,7 @@ class Graphiti:
|
||||||
|
|
||||||
Returns
|
Returns
|
||||||
-------
|
-------
|
||||||
None
|
AddBulkEpisodeResults
|
||||||
|
|
||||||
Notes
|
Notes
|
||||||
-----
|
-----
|
||||||
|
|
@ -849,6 +857,15 @@ class Graphiti:
|
||||||
end = time()
|
end = time()
|
||||||
logger.info(f'Completed add_episode_bulk in {(end - start) * 1000} ms')
|
logger.info(f'Completed add_episode_bulk in {(end - start) * 1000} ms')
|
||||||
|
|
||||||
|
return AddBulkEpisodeResults(
|
||||||
|
episodes=episodes,
|
||||||
|
episodic_edges=resolved_episodic_edges,
|
||||||
|
nodes=final_hydrated_nodes,
|
||||||
|
edges=resolved_edges + invalidated_edges,
|
||||||
|
communities=[],
|
||||||
|
community_edges=[],
|
||||||
|
)
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
raise e
|
raise e
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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.20.2"
|
version = "0.20.3"
|
||||||
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.20.2"
|
version = "0.20.3"
|
||||||
source = { editable = "." }
|
source = { editable = "." }
|
||||||
dependencies = [
|
dependencies = [
|
||||||
{ name = "diskcache" },
|
{ name = "diskcache" },
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue