From 24105b955669f6473ad0324618f452cda07896f9 Mon Sep 17 00:00:00 2001 From: Preston Rasmussen <109292228+prasmussen15@users.noreply.github.com> Date: Mon, 8 Dec 2025 07:50:19 -0800 Subject: [PATCH] add property filters (#1099) * add property filters * update --- graphiti_core/search/search_filters.py | 11 +++++++++++ pyproject.toml | 2 +- uv.lock | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/graphiti_core/search/search_filters.py b/graphiti_core/search/search_filters.py index 1534b926..063e846e 100644 --- a/graphiti_core/search/search_filters.py +++ b/graphiti_core/search/search_filters.py @@ -41,6 +41,16 @@ class DateFilter(BaseModel): ) +class PropertyFilter(BaseModel): + property_name: str = Field(description='Property name') + property_value: str | int | float | None = Field( + description='Value you want to match on for the property' + ) + comparison_operator: ComparisonOperator = Field( + description='Comparison operator for the property' + ) + + class SearchFilters(BaseModel): node_labels: list[str] | None = Field( default=None, description='List of node labels to filter on' @@ -53,6 +63,7 @@ class SearchFilters(BaseModel): created_at: list[list[DateFilter]] | None = Field(default=None) expired_at: list[list[DateFilter]] | None = Field(default=None) edge_uuids: list[str] | None = Field(default=None) + property_filters: list[PropertyFilter] | None = Field(default=None) def cypher_to_opensearch_operator(op: ComparisonOperator) -> str: diff --git a/pyproject.toml b/pyproject.toml index 0a569527..d5ae9fb9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "graphiti-core" description = "A temporal graph building library" -version = "0.24.2" +version = "0.24.3" authors = [ { name = "Paul Paliychuk", email = "paul@getzep.com" }, { name = "Preston Rasmussen", email = "preston@getzep.com" }, diff --git a/uv.lock b/uv.lock index 546537e1..25ca2f08 100644 --- a/uv.lock +++ b/uv.lock @@ -808,7 +808,7 @@ wheels = [ [[package]] name = "graphiti-core" -version = "0.24.1" +version = "0.24.3" source = { editable = "." } dependencies = [ { name = "diskcache" },