Skip to content

Commit 873df84

Browse files
authored
Merge pull request video-db#29 from video-db/ankit/add-search-filter
feat: add search filters
2 parents f8f5ed0 + 255cae4 commit 873df84

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

videodb/__about__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
""" About information for videodb sdk"""
22

33

4-
__version__ = "0.2.6"
4+
__version__ = "0.2.7"
55
__title__ = "videodb"
66
__author__ = "videodb"
77
__email__ = "[email protected]"

videodb/collection.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
Optional,
55
Union,
66
List,
7+
Dict,
8+
Any,
79
)
810
from videodb._upload import (
911
upload,
@@ -105,6 +107,7 @@ def search(
105107
result_threshold: Optional[int] = None,
106108
score_threshold: Optional[float] = None,
107109
dynamic_score_percentage: Optional[float] = None,
110+
filter: List[Dict[str, Any]] = [],
108111
) -> SearchResult:
109112
search = SearchFactory(self._connection).get_search(search_type)
110113
return search.search_inside_collection(
@@ -115,6 +118,7 @@ def search(
115118
result_threshold=result_threshold,
116119
score_threshold=score_threshold,
117120
dynamic_score_percentage=dynamic_score_percentage,
121+
filter=filter,
118122
)
119123

120124
def search_title(self, query) -> List[Video]:

videodb/video.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import Optional, Union, List, Dict, Tuple
1+
from typing import Optional, Union, List, Dict, Tuple, Any
22
from videodb._utils._video import play_stream
33
from videodb._constants import (
44
ApiPath,
@@ -54,6 +54,7 @@ def search(
5454
result_threshold: Optional[int] = None,
5555
score_threshold: Optional[float] = None,
5656
dynamic_score_percentage: Optional[float] = None,
57+
filter: List[Dict[str, Any]] = [],
5758
**kwargs,
5859
) -> SearchResult:
5960
search = SearchFactory(self._connection).get_search(search_type)
@@ -65,6 +66,7 @@ def search(
6566
result_threshold=result_threshold,
6667
score_threshold=score_threshold,
6768
dynamic_score_percentage=dynamic_score_percentage,
69+
filter=filter,
6870
**kwargs,
6971
)
7072

@@ -299,6 +301,7 @@ def index_scenes(
299301
extraction_type: SceneExtractionType = SceneExtractionType.shot_based,
300302
extraction_config: Dict = {},
301303
prompt: Optional[str] = None,
304+
metadata: Dict = {},
302305
model_name: Optional[str] = None,
303306
model_config: Optional[Dict] = None,
304307
name: Optional[str] = None,
@@ -311,6 +314,7 @@ def index_scenes(
311314
"extraction_type": extraction_type,
312315
"extraction_config": extraction_config,
313316
"prompt": prompt,
317+
"metadata": metadata,
314318
"model_name": model_name,
315319
"model_config": model_config,
316320
"name": name,

0 commit comments

Comments
 (0)