qdrant-haystack 8.0.0__tar.gz → 9.5.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- qdrant_haystack-9.5.0/CHANGELOG.md +318 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/PKG-INFO +11 -25
- qdrant_haystack-9.5.0/README.md +13 -0
- qdrant_haystack-9.5.0/pydoc/config_docusaurus.yml +30 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/pyproject.toml +43 -43
- qdrant_haystack-9.5.0/src/haystack_integrations/components/retrievers/py.typed +0 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/src/haystack_integrations/components/retrievers/qdrant/retriever.py +240 -27
- qdrant_haystack-9.5.0/src/haystack_integrations/document_stores/py.typed +0 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/src/haystack_integrations/document_stores/qdrant/converters.py +14 -28
- qdrant_haystack-9.5.0/src/haystack_integrations/document_stores/qdrant/document_store.py +2075 -0
- qdrant_haystack-9.5.0/src/haystack_integrations/document_stores/qdrant/filters.py +234 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/src/haystack_integrations/document_stores/qdrant/migrate_to_sparse.py +8 -3
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/tests/test_converters.py +0 -46
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/tests/test_dict_converters.py +0 -3
- qdrant_haystack-9.5.0/tests/test_document_store.py +529 -0
- qdrant_haystack-9.5.0/tests/test_document_store_async.py +476 -0
- qdrant_haystack-9.5.0/tests/test_embedding_retriever.py +330 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/tests/test_filters.py +1 -3
- qdrant_haystack-9.5.0/tests/test_hybrid_retriever.py +246 -0
- qdrant_haystack-9.5.0/tests/test_sparse_embedding_retriever.py +235 -0
- qdrant_haystack-8.0.0/CHANGELOG.md +0 -164
- qdrant_haystack-8.0.0/README.md +0 -28
- qdrant_haystack-8.0.0/pydoc/config.yml +0 -32
- qdrant_haystack-8.0.0/src/haystack_integrations/document_stores/qdrant/document_store.py +0 -1031
- qdrant_haystack-8.0.0/src/haystack_integrations/document_stores/qdrant/filters.py +0 -316
- qdrant_haystack-8.0.0/tests/test_document_store.py +0 -153
- qdrant_haystack-8.0.0/tests/test_retriever.py +0 -593
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/.gitignore +0 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/LICENSE.txt +0 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/examples/embedding_retrieval.py +0 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/src/haystack_integrations/components/retrievers/qdrant/__init__.py +0 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/src/haystack_integrations/document_stores/qdrant/__init__.py +0 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/tests/__init__.py +0 -0
- {qdrant_haystack-8.0.0 → qdrant_haystack-9.5.0}/tests/conftest.py +0 -0
|
@@ -0,0 +1,318 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [integrations/qdrant-v9.4.0] - 2025-11-18
|
|
4
|
+
|
|
5
|
+
### 🧹 Chores
|
|
6
|
+
|
|
7
|
+
- [**breaking**] Qdrant - remove `init_from` init parameter for compatibility with `qdrant-client==1.16.0` (#2531)
|
|
8
|
+
|
|
9
|
+
### 🌀 Miscellaneous
|
|
10
|
+
|
|
11
|
+
- Enhancement: Adopt PEP 585 type hinting (part 5) (#2528)
|
|
12
|
+
|
|
13
|
+
## [integrations/qdrant-v9.3.0] - 2025-11-11
|
|
14
|
+
|
|
15
|
+
### 🚀 Features
|
|
16
|
+
|
|
17
|
+
- Adding `delete_all_docs` to Qdrant document store (#2363)
|
|
18
|
+
|
|
19
|
+
### 📚 Documentation
|
|
20
|
+
|
|
21
|
+
- Add pydoc configurations for Docusaurus (#2411)
|
|
22
|
+
|
|
23
|
+
### ⚙️ CI
|
|
24
|
+
|
|
25
|
+
- Change pytest command (#2475)
|
|
26
|
+
|
|
27
|
+
### 🧹 Chores
|
|
28
|
+
|
|
29
|
+
- Remove black (#1985)
|
|
30
|
+
- Standardize readmes - part 2 (#2205)
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
## [integrations/qdrant-v9.2.0] - 2025-06-12
|
|
34
|
+
|
|
35
|
+
### 🐛 Bug Fixes
|
|
36
|
+
|
|
37
|
+
- Fix Qdrant types + add py.typed (#1919)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
### 🧹 Chores
|
|
41
|
+
|
|
42
|
+
- Align core-integrations Hatch scripts (#1898)
|
|
43
|
+
- Update md files for new hatch scripts (#1911)
|
|
44
|
+
|
|
45
|
+
### 🌀 Miscellaneous
|
|
46
|
+
|
|
47
|
+
- Add pins for Qdrant (#1853)
|
|
48
|
+
|
|
49
|
+
## [integrations/qdrant-v9.1.2] - 2025-05-27
|
|
50
|
+
|
|
51
|
+
### 🐛 Bug Fixes
|
|
52
|
+
|
|
53
|
+
- Fix exposing Qdrant api-key in `metadata` field when running `to_dict` (#1813)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
## [integrations/qdrant-v9.1.1] - 2025-03-20
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
### ⚙️ CI
|
|
60
|
+
|
|
61
|
+
- Review testing workflows (#1541)
|
|
62
|
+
|
|
63
|
+
### 🌀 Miscellaneous
|
|
64
|
+
|
|
65
|
+
- Fix: `TypeError` in `QdrantDocumentStore` when handling duplicate documents (#1551)
|
|
66
|
+
|
|
67
|
+
## [integrations/qdrant-v9.1.0] - 2025-03-14
|
|
68
|
+
|
|
69
|
+
### 🚀 Features
|
|
70
|
+
|
|
71
|
+
- Qdrant -- async support (#1480)
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
## [integrations/qdrant-v9.0.0] - 2025-03-11
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
### 🧹 Chores
|
|
78
|
+
|
|
79
|
+
- Use Haystack logging across integrations (#1484)
|
|
80
|
+
- Qdrant - pin haystack and remove dataframe checks (#1519)
|
|
81
|
+
|
|
82
|
+
## [integrations/qdrant-v8.1.0] - 2025-03-07
|
|
83
|
+
|
|
84
|
+
### 🧹 Chores
|
|
85
|
+
|
|
86
|
+
- Remove Python 3.8 support (#1421)
|
|
87
|
+
|
|
88
|
+
### 🌀 Miscellaneous
|
|
89
|
+
|
|
90
|
+
- Docs: Update document store descriptions for deepset Pipeline Builder (#1447)
|
|
91
|
+
- Refactor: Qdrant - raise error if existing collection is not compatible with Haystack (#1481)
|
|
92
|
+
|
|
93
|
+
## [integrations/qdrant-v8.0.0] - 2025-02-19
|
|
94
|
+
|
|
95
|
+
### 🧹 Chores
|
|
96
|
+
|
|
97
|
+
- Fix linting/isort (#1215)
|
|
98
|
+
- Inherit from `FilterDocumentsTestWithDataframe` in Document Stores (#1290)
|
|
99
|
+
- [**breaking**] Qdrant - remove dataframe support (#1403)
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
## [integrations/qdrant-v7.0.0] - 2024-10-29
|
|
103
|
+
|
|
104
|
+
### ⚙️ CI
|
|
105
|
+
|
|
106
|
+
- Adopt uv as installer (#1142)
|
|
107
|
+
|
|
108
|
+
### 🧹 Chores
|
|
109
|
+
|
|
110
|
+
- Update ruff linting scripts and settings (#1105)
|
|
111
|
+
|
|
112
|
+
### 🌀 Miscellaneous
|
|
113
|
+
|
|
114
|
+
- Refactor!: Qdrant - remove `index` parameter from methods (#1160)
|
|
115
|
+
|
|
116
|
+
## [integrations/qdrant-v6.0.0] - 2024-09-13
|
|
117
|
+
|
|
118
|
+
### 🌀 Miscellaneous
|
|
119
|
+
|
|
120
|
+
- Remove support for deprecated legacy filters in Qdrant (#1084)
|
|
121
|
+
|
|
122
|
+
## [integrations/qdrant-v5.1.0] - 2024-09-12
|
|
123
|
+
|
|
124
|
+
### 🚀 Features
|
|
125
|
+
|
|
126
|
+
- Qdrant - Add group_by and group_size optional parameters to Retrievers (#1054)
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
## [integrations/qdrant-v5.0.0] - 2024-09-02
|
|
130
|
+
|
|
131
|
+
### 🌀 Miscellaneous
|
|
132
|
+
|
|
133
|
+
- Fix!: fix type errors in `QdrantDocumentStore`; rename `ids` (parameter of `delete_documents`) to `document_ids` (#1041)
|
|
134
|
+
|
|
135
|
+
## [integrations/qdrant-v4.2.0] - 2024-08-27
|
|
136
|
+
|
|
137
|
+
### 🚜 Refactor
|
|
138
|
+
|
|
139
|
+
- Qdrant Query API (#1025)
|
|
140
|
+
|
|
141
|
+
### 🧪 Testing
|
|
142
|
+
|
|
143
|
+
- Do not retry tests in `hatch run test` command (#954)
|
|
144
|
+
|
|
145
|
+
### 🌀 Miscellaneous
|
|
146
|
+
|
|
147
|
+
- Chore: Update Qdrant tests for the new `apply_filter_policy` usage (#969)
|
|
148
|
+
- Chore: qdrant - ruff update, don't ruff tests (#989)
|
|
149
|
+
|
|
150
|
+
## [integrations/qdrant-v4.1.2] - 2024-07-15
|
|
151
|
+
|
|
152
|
+
### 🐛 Bug Fixes
|
|
153
|
+
|
|
154
|
+
- `qdrant` - Fallback to default filter policy when deserializing retrievers without the init parameter (#902)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
## [integrations/qdrant-v4.1.1] - 2024-07-10
|
|
158
|
+
|
|
159
|
+
### 🚀 Features
|
|
160
|
+
|
|
161
|
+
- Add filter_policy to qdrant integration (#819)
|
|
162
|
+
|
|
163
|
+
### 🐛 Bug Fixes
|
|
164
|
+
|
|
165
|
+
- Errors in convert_filters_to_qdrant (#870)
|
|
166
|
+
|
|
167
|
+
### 🌀 Miscellaneous
|
|
168
|
+
|
|
169
|
+
- Chore: Minor retriever pydoc fix (#884)
|
|
170
|
+
|
|
171
|
+
## [integrations/qdrant-v4.1.0] - 2024-07-03
|
|
172
|
+
|
|
173
|
+
### 🚀 Features
|
|
174
|
+
|
|
175
|
+
- Add `score_threshold` to Qdrant Retrievers (#860)
|
|
176
|
+
- Qdrant - add support for BM42 (#864)
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
## [integrations/qdrant-v4.0.0] - 2024-07-02
|
|
180
|
+
|
|
181
|
+
### 🚜 Refactor
|
|
182
|
+
|
|
183
|
+
- [**breaking**] Qdrant - remove unused init parameters: `content_field`, `name_field`, `embedding_field`, and `duplicate_documents` (#861)
|
|
184
|
+
- [**breaking**] Qdrant - set `scale_score` default value to `False` (#862)
|
|
185
|
+
|
|
186
|
+
### ⚙️ CI
|
|
187
|
+
|
|
188
|
+
- Retry tests to reduce flakyness (#836)
|
|
189
|
+
|
|
190
|
+
### 🧹 Chores
|
|
191
|
+
|
|
192
|
+
- Update ruff invocation to include check parameter (#853)
|
|
193
|
+
|
|
194
|
+
### 🌀 Miscellaneous
|
|
195
|
+
|
|
196
|
+
- Ci: install `pytest-rerunfailures` where needed; add retry config to `test-cov` script (#845)
|
|
197
|
+
|
|
198
|
+
## [integrations/qdrant-v3.8.1] - 2024-06-20
|
|
199
|
+
|
|
200
|
+
### 📚 Documentation
|
|
201
|
+
|
|
202
|
+
- Added docstrings for QdrantDocumentStore (#808)
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
## [integrations/qdrant-v3.8.0] - 2024-06-06
|
|
206
|
+
|
|
207
|
+
### 🚀 Features
|
|
208
|
+
|
|
209
|
+
- Add force_disable_check_same_thread init param for Qdrant local client (#779)
|
|
210
|
+
|
|
211
|
+
## [integrations/qdrant-v3.7.0] - 2024-05-24
|
|
212
|
+
|
|
213
|
+
### 🚀 Features
|
|
214
|
+
|
|
215
|
+
- Make get_distance and recreate_collection public, replace deprecated recreate_collection function (#754)
|
|
216
|
+
|
|
217
|
+
## [integrations/qdrant-v3.6.0] - 2024-05-24
|
|
218
|
+
|
|
219
|
+
### 🚀 Features
|
|
220
|
+
|
|
221
|
+
- Defer database connection to the first usage (#748)
|
|
222
|
+
|
|
223
|
+
### 🌀 Miscellaneous
|
|
224
|
+
|
|
225
|
+
- Qdrant - improve docstrings for retrievers (#687)
|
|
226
|
+
- Chore: change the pydoc renderer class (#718)
|
|
227
|
+
- Allow vanilla qdrant filters (#692)
|
|
228
|
+
|
|
229
|
+
## [integrations/qdrant-v3.5.0] - 2024-04-24
|
|
230
|
+
|
|
231
|
+
### 🌀 Miscellaneous
|
|
232
|
+
|
|
233
|
+
- Chore: add license classifiers (#680)
|
|
234
|
+
- Qdrant - add hybrid retriever (#675)
|
|
235
|
+
|
|
236
|
+
## [integrations/qdrant-v3.4.0] - 2024-04-23
|
|
237
|
+
|
|
238
|
+
### 🌀 Miscellaneous
|
|
239
|
+
|
|
240
|
+
- Add embedding retrieval example (#666)
|
|
241
|
+
- Rename `QdrantSparseRetriever` to `QdrantSparseEmbeddingRetriever` (#681)
|
|
242
|
+
|
|
243
|
+
## [integrations/qdrant-v3.3.1] - 2024-04-12
|
|
244
|
+
|
|
245
|
+
### 🌀 Miscellaneous
|
|
246
|
+
|
|
247
|
+
- Add migration utility function for Sparse Embedding support (#659)
|
|
248
|
+
|
|
249
|
+
## [integrations/qdrant-v3.3.0] - 2024-04-12
|
|
250
|
+
|
|
251
|
+
### 🚀 Features
|
|
252
|
+
|
|
253
|
+
- *(Qdrant)* Start to work on sparse vector integration (#578)
|
|
254
|
+
|
|
255
|
+
## [integrations/qdrant-v3.2.1] - 2024-04-09
|
|
256
|
+
|
|
257
|
+
### 🐛 Bug Fixes
|
|
258
|
+
|
|
259
|
+
- Fix `haystack-ai` pins (#649)
|
|
260
|
+
|
|
261
|
+
## [integrations/qdrant-v3.2.0] - 2024-03-27
|
|
262
|
+
|
|
263
|
+
### 🚀 Features
|
|
264
|
+
|
|
265
|
+
- *(Qdrant)* Allow payload indexing + on disk vectors (#553)
|
|
266
|
+
- Qdrant datetime filtering support (#570)
|
|
267
|
+
|
|
268
|
+
### 🐛 Bug Fixes
|
|
269
|
+
|
|
270
|
+
- Fix: fix linter errors (#282)
|
|
271
|
+
- Fix order of API docs (#447)
|
|
272
|
+
- Doc: fixing docstrings for qdrant (#518)
|
|
273
|
+
|
|
274
|
+
### 🚜 Refactor
|
|
275
|
+
|
|
276
|
+
- [**breaking**] Qdrant - update secret management (#405)
|
|
277
|
+
|
|
278
|
+
### 📚 Documentation
|
|
279
|
+
|
|
280
|
+
- Update category slug (#442)
|
|
281
|
+
- Small consistency improvements (#536)
|
|
282
|
+
- Disable-class-def (#556)
|
|
283
|
+
|
|
284
|
+
### ⚙️ CI
|
|
285
|
+
|
|
286
|
+
- Generate API docs for Qdrant (#361)
|
|
287
|
+
|
|
288
|
+
### 🌀 Miscellaneous
|
|
289
|
+
|
|
290
|
+
- Make tests show coverage (#566)
|
|
291
|
+
- Remove references to Python 3.7 (#601)
|
|
292
|
+
- Make Document Stores initially skip `SparseEmbedding` (#606)
|
|
293
|
+
|
|
294
|
+
## [integrations/qdrant-v3.0.0] - 2024-01-22
|
|
295
|
+
|
|
296
|
+
### 🌀 Miscellaneous
|
|
297
|
+
|
|
298
|
+
- [**breaking**] Change import paths (#255)
|
|
299
|
+
|
|
300
|
+
## [integrations/qdrant-v2.0.1] - 2024-01-18
|
|
301
|
+
|
|
302
|
+
### 🚀 Features
|
|
303
|
+
|
|
304
|
+
- Add Qdrant integration (#98)
|
|
305
|
+
|
|
306
|
+
### 🐛 Bug Fixes
|
|
307
|
+
|
|
308
|
+
- Fix import paths for beta5 (#237)
|
|
309
|
+
|
|
310
|
+
### 🚜 Refactor
|
|
311
|
+
|
|
312
|
+
- Use `hatch_vcs` to manage integrations versioning (#103)
|
|
313
|
+
|
|
314
|
+
### 🌀 Miscellaneous
|
|
315
|
+
|
|
316
|
+
- Renamed QdrntRetriever to QdrntEmbeddingRetriever (#174)
|
|
317
|
+
|
|
318
|
+
<!-- generated by git-cliff -->
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: qdrant-haystack
|
|
3
|
-
Version:
|
|
3
|
+
Version: 9.5.0
|
|
4
4
|
Summary: An integration of Qdrant ANN vector database backend with Haystack
|
|
5
5
|
Project-URL: Source, https://github.com/deepset-ai/haystack-core-integrations
|
|
6
6
|
Project-URL: Documentation, https://github.com/deepset-ai/haystack-core-integrations/blob/main/integrations/qdrant/README.md
|
|
@@ -11,15 +11,16 @@ License-File: LICENSE.txt
|
|
|
11
11
|
Classifier: Development Status :: 4 - Beta
|
|
12
12
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
13
13
|
Classifier: Programming Language :: Python
|
|
14
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
15
14
|
Classifier: Programming Language :: Python :: 3.9
|
|
16
15
|
Classifier: Programming Language :: Python :: 3.10
|
|
17
16
|
Classifier: Programming Language :: Python :: 3.11
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
18
19
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
19
20
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
20
|
-
Requires-Python: >=3.
|
|
21
|
-
Requires-Dist: haystack-ai
|
|
22
|
-
Requires-Dist: qdrant-client>=1.
|
|
21
|
+
Requires-Python: >=3.9
|
|
22
|
+
Requires-Dist: haystack-ai>=2.11.0
|
|
23
|
+
Requires-Dist: qdrant-client>=1.12.0
|
|
23
24
|
Description-Content-Type: text/markdown
|
|
24
25
|
|
|
25
26
|
# qdrant-haystack
|
|
@@ -27,26 +28,11 @@ Description-Content-Type: text/markdown
|
|
|
27
28
|
[](https://pypi.org/project/qdrant-haystack)
|
|
28
29
|
[](https://pypi.org/project/qdrant-haystack)
|
|
29
30
|
|
|
30
|
-
|
|
31
|
+
- [Integration page](https://haystack.deepset.ai/integrations/qdrant-document-store)
|
|
32
|
+
- [Changelog](https://github.com/deepset-ai/haystack-core-integrations/blob/main/integrations/qdrant/CHANGELOG.md)
|
|
31
33
|
|
|
32
|
-
|
|
34
|
+
---
|
|
33
35
|
|
|
34
|
-
|
|
35
|
-
- [License](#license)
|
|
36
|
+
## Contributing
|
|
36
37
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
```console
|
|
40
|
-
pip install qdrant-haystack
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## Testing
|
|
44
|
-
The test suites use Qdrant's in-memory instance. No additional steps required.
|
|
45
|
-
|
|
46
|
-
```console
|
|
47
|
-
hatch run test
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
## License
|
|
51
|
-
|
|
52
|
-
`qdrant-haystack` is distributed under the terms of the [Apache-2.0](https://spdx.org/licenses/Apache-2.0.html) license.
|
|
38
|
+
Refer to the general [Contribution Guidelines](https://github.com/deepset-ai/haystack-core-integrations/blob/main/CONTRIBUTING.md).
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# qdrant-haystack
|
|
2
|
+
|
|
3
|
+
[](https://pypi.org/project/qdrant-haystack)
|
|
4
|
+
[](https://pypi.org/project/qdrant-haystack)
|
|
5
|
+
|
|
6
|
+
- [Integration page](https://haystack.deepset.ai/integrations/qdrant-document-store)
|
|
7
|
+
- [Changelog](https://github.com/deepset-ai/haystack-core-integrations/blob/main/integrations/qdrant/CHANGELOG.md)
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Contributing
|
|
12
|
+
|
|
13
|
+
Refer to the general [Contribution Guidelines](https://github.com/deepset-ai/haystack-core-integrations/blob/main/CONTRIBUTING.md).
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
loaders:
|
|
2
|
+
- ignore_when_discovered:
|
|
3
|
+
- __init__
|
|
4
|
+
modules:
|
|
5
|
+
- haystack_integrations.components.retrievers.qdrant.retriever
|
|
6
|
+
- haystack_integrations.document_stores.qdrant.document_store
|
|
7
|
+
- haystack_integrations.document_stores.qdrant.migrate_to_sparse
|
|
8
|
+
search_path:
|
|
9
|
+
- ../src
|
|
10
|
+
type: haystack_pydoc_tools.loaders.CustomPythonLoader
|
|
11
|
+
processors:
|
|
12
|
+
- do_not_filter_modules: false
|
|
13
|
+
documented_only: true
|
|
14
|
+
expression: null
|
|
15
|
+
skip_empty_modules: true
|
|
16
|
+
type: filter
|
|
17
|
+
- type: smart
|
|
18
|
+
- type: crossref
|
|
19
|
+
renderer:
|
|
20
|
+
description: Qdrant integration for Haystack
|
|
21
|
+
id: integrations-qdrant
|
|
22
|
+
markdown:
|
|
23
|
+
add_member_class_prefix: false
|
|
24
|
+
add_method_class_prefix: true
|
|
25
|
+
classdef_code_block: false
|
|
26
|
+
descriptive_class_title: false
|
|
27
|
+
descriptive_module_title: true
|
|
28
|
+
filename: qdrant.md
|
|
29
|
+
title: Qdrant
|
|
30
|
+
type: haystack_pydoc_tools.renderers.DocusaurusRenderer
|
|
@@ -7,7 +7,7 @@ name = "qdrant-haystack"
|
|
|
7
7
|
dynamic = ["version"]
|
|
8
8
|
description = 'An integration of Qdrant ANN vector database backend with Haystack'
|
|
9
9
|
readme = "README.md"
|
|
10
|
-
requires-python = ">=3.
|
|
10
|
+
requires-python = ">=3.9"
|
|
11
11
|
license = "Apache-2.0"
|
|
12
12
|
keywords = []
|
|
13
13
|
authors = [
|
|
@@ -18,14 +18,15 @@ classifiers = [
|
|
|
18
18
|
"License :: OSI Approved :: Apache Software License",
|
|
19
19
|
"Development Status :: 4 - Beta",
|
|
20
20
|
"Programming Language :: Python",
|
|
21
|
-
"Programming Language :: Python :: 3.8",
|
|
22
21
|
"Programming Language :: Python :: 3.9",
|
|
23
22
|
"Programming Language :: Python :: 3.10",
|
|
24
23
|
"Programming Language :: Python :: 3.11",
|
|
24
|
+
"Programming Language :: Python :: 3.12",
|
|
25
|
+
"Programming Language :: Python :: 3.13",
|
|
25
26
|
"Programming Language :: Python :: Implementation :: CPython",
|
|
26
27
|
"Programming Language :: Python :: Implementation :: PyPy",
|
|
27
28
|
]
|
|
28
|
-
dependencies = ["haystack-ai", "qdrant-client>=1.
|
|
29
|
+
dependencies = ["haystack-ai>=2.11.0", "qdrant-client>=1.12.0"]
|
|
29
30
|
|
|
30
31
|
[project.urls]
|
|
31
32
|
Source = "https://github.com/deepset-ai/haystack-core-integrations"
|
|
@@ -45,36 +46,41 @@ git_describe_command = 'git describe --tags --match="integrations/qdrant-v[0-9]*
|
|
|
45
46
|
|
|
46
47
|
[tool.hatch.envs.default]
|
|
47
48
|
installer = "uv"
|
|
48
|
-
dependencies = ["
|
|
49
|
+
dependencies = ["haystack-pydoc-tools", "ruff"]
|
|
50
|
+
|
|
49
51
|
[tool.hatch.envs.default.scripts]
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
52
|
+
docs = ["pydoc-markdown pydoc/config_docusaurus.yml"]
|
|
53
|
+
fmt = "ruff check --fix {args} && ruff format {args}"
|
|
54
|
+
fmt-check = "ruff check {args} && ruff format --check {args}"
|
|
55
|
+
|
|
56
|
+
[tool.hatch.envs.test]
|
|
57
|
+
dependencies = [
|
|
58
|
+
"pytest",
|
|
59
|
+
"pytest-asyncio",
|
|
60
|
+
"pytest-cov",
|
|
61
|
+
"pytest-rerunfailures",
|
|
62
|
+
"mypy",
|
|
63
|
+
"pip"
|
|
64
|
+
]
|
|
65
|
+
|
|
66
|
+
[tool.hatch.envs.test.scripts]
|
|
67
|
+
unit = 'pytest -m "not integration" {args:tests}'
|
|
68
|
+
integration = 'pytest -m "integration" {args:tests}'
|
|
69
|
+
all = 'pytest {args:tests}'
|
|
70
|
+
cov-retry = 'pytest --cov=haystack_integrations --reruns 3 --reruns-delay 30 -x {args:tests}'
|
|
71
|
+
|
|
72
|
+
types = """mypy -p haystack_integrations.document_stores.qdrant \
|
|
73
|
+
-p haystack_integrations.components.retrievers.qdrant {args}"""
|
|
74
|
+
|
|
75
|
+
[tool.mypy]
|
|
76
|
+
install_types = true
|
|
77
|
+
non_interactive = true
|
|
78
|
+
check_untyped_defs = true
|
|
79
|
+
disallow_incomplete_defs = true
|
|
80
|
+
|
|
75
81
|
|
|
76
82
|
[tool.ruff]
|
|
77
|
-
target-version = "
|
|
83
|
+
target-version = "py39"
|
|
78
84
|
line-length = 120
|
|
79
85
|
|
|
80
86
|
[tool.ruff.lint]
|
|
@@ -123,6 +129,8 @@ ignore = [
|
|
|
123
129
|
"PLR0912",
|
|
124
130
|
"PLR0913",
|
|
125
131
|
"PLR0915",
|
|
132
|
+
# Ignore assertions
|
|
133
|
+
"S101",
|
|
126
134
|
]
|
|
127
135
|
unfixable = [
|
|
128
136
|
# Don't touch unused imports
|
|
@@ -146,18 +154,10 @@ parallel = false
|
|
|
146
154
|
|
|
147
155
|
|
|
148
156
|
[tool.coverage.report]
|
|
149
|
-
omit = [
|
|
157
|
+
omit = [
|
|
158
|
+
"*/tests/*",
|
|
159
|
+
"*/__init__.py",
|
|
160
|
+
"src/haystack_integrations/document_stores/qdrant/migrate_to_sparse.py",
|
|
161
|
+
]
|
|
150
162
|
show_missing = true
|
|
151
163
|
exclude_lines = ["no cov", "if __name__ == .__main__.:", "if TYPE_CHECKING:"]
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
[[tool.mypy.overrides]]
|
|
155
|
-
module = [
|
|
156
|
-
"haystack.*",
|
|
157
|
-
"haystack_integrations.*",
|
|
158
|
-
"pytest.*",
|
|
159
|
-
"qdrant_client.*",
|
|
160
|
-
"numpy",
|
|
161
|
-
"grpc",
|
|
162
|
-
]
|
|
163
|
-
ignore_missing_imports = true
|
|
File without changes
|