@@ -80,13 +80,15 @@ def similarity_search_with_score(
80
80
self ,
81
81
query : str ,
82
82
k : int = 5 ,
83
+ filter : Optional [dict ] = None ,
83
84
namespace : Optional [str ] = None ,
84
85
) -> List [Tuple [Document , float ]]:
85
86
"""Return pinecone documents most similar to query, along with scores.
86
87
87
88
Args:
88
89
query: Text to look up documents similar to.
89
90
k: Number of Documents to return. Defaults to 4.
91
+ filter: Dictionary of argument(s) to filter on metadata
90
92
namespace: Namespace to search in. Default will search in '' namespace.
91
93
92
94
Returns:
@@ -95,7 +97,11 @@ def similarity_search_with_score(
95
97
query_obj = self ._embedding_function (query )
96
98
docs = []
97
99
results = self ._index .query (
98
- [query_obj ], top_k = k , include_metadata = True , namespace = namespace
100
+ [query_obj ],
101
+ top_k = k ,
102
+ include_metadata = True ,
103
+ namespace = namespace ,
104
+ filter = filter ,
99
105
)
100
106
for res in results ["matches" ]:
101
107
metadata = res ["metadata" ]
@@ -107,13 +113,15 @@ def similarity_search(
107
113
self ,
108
114
query : str ,
109
115
k : int = 5 ,
116
+ filter : Optional [dict ] = None ,
110
117
namespace : Optional [str ] = None ,
111
118
) -> List [Document ]:
112
119
"""Return pinecone documents most similar to query.
113
120
114
121
Args:
115
122
query: Text to look up documents similar to.
116
123
k: Number of Documents to return. Defaults to 4.
124
+ filter: Dictionary of argument(s) to filter on metadata
117
125
namespace: Namespace to search in. Default will search in '' namespace.
118
126
119
127
Returns:
@@ -122,7 +130,11 @@ def similarity_search(
122
130
query_obj = self ._embedding_function (query )
123
131
docs = []
124
132
results = self ._index .query (
125
- [query_obj ], top_k = k , include_metadata = True , namespace = namespace
133
+ [query_obj ],
134
+ top_k = k ,
135
+ include_metadata = True ,
136
+ namespace = namespace ,
137
+ filter = filter ,
126
138
)
127
139
for res in results ["matches" ]:
128
140
metadata = res ["metadata" ]
0 commit comments