fastembed-haystack 1.1.0__tar.gz → 1.2.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.
Files changed (21) hide show
  1. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/.gitignore +9 -0
  2. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/PKG-INFO +1 -1
  3. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/pyproject.toml +25 -49
  4. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/src/haystack_integrations/components/embedders/fastembed/fastembed_sparse_document_embedder.py +1 -1
  5. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/src/haystack_integrations/components/embedders/fastembed/fastembed_sparse_text_embedder.py +1 -1
  6. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/tests/test_fastembed_sparse_document_embedder.py +1 -1
  7. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/LICENSE.txt +0 -0
  8. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/README.md +0 -0
  9. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/examples/example.py +0 -0
  10. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/examples/sparse_example.py +0 -0
  11. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/pydoc/config.yml +0 -0
  12. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/src/haystack_integrations/components/embedders/fastembed/__init__.py +0 -0
  13. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/src/haystack_integrations/components/embedders/fastembed/embedding_backend/__init__.py +0 -0
  14. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/src/haystack_integrations/components/embedders/fastembed/embedding_backend/fastembed_backend.py +0 -0
  15. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/src/haystack_integrations/components/embedders/fastembed/fastembed_document_embedder.py +0 -0
  16. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/src/haystack_integrations/components/embedders/fastembed/fastembed_text_embedder.py +0 -0
  17. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/tests/__init__.py +0 -0
  18. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/tests/test_fastembed_backend.py +0 -0
  19. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/tests/test_fastembed_document_embedder.py +0 -0
  20. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/tests/test_fastembed_sparse_text_embedder.py +0 -0
  21. {fastembed_haystack-1.1.0 → fastembed_haystack-1.2.0}/tests/test_fastembed_text_embedder.py +0 -0
@@ -135,3 +135,12 @@ dmypy.json
135
135
  # Docs generation artifacts
136
136
  _readme_*.md
137
137
  .idea
138
+
139
+ # macOS
140
+ .DS_Store
141
+
142
+ # http cache (requests-cache)
143
+ **/http_cache.sqlite
144
+
145
+ # ruff
146
+ .ruff_cache
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: fastembed-haystack
3
- Version: 1.1.0
3
+ Version: 1.2.0
4
4
  Summary: Haystack 2.x component to embed strings and Documents using fastembed embedding model
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/fastembed/README.md
@@ -10,9 +10,7 @@ readme = "README.md"
10
10
  requires-python = ">=3.8"
11
11
  license = "Apache-2.0"
12
12
  keywords = []
13
- authors = [
14
- { name = "deepset GmbH", email = "info@deepset.ai" },
15
- ]
13
+ authors = [{ name = "deepset GmbH", email = "info@deepset.ai" }]
16
14
  classifiers = [
17
15
  "License :: OSI Approved :: Apache Software License",
18
16
  "Development Status :: 4 - Beta",
@@ -25,10 +23,7 @@ classifiers = [
25
23
  "Programming Language :: Python :: Implementation :: CPython",
26
24
  "Programming Language :: Python :: Implementation :: PyPy",
27
25
  ]
28
- dependencies = [
29
- "haystack-ai>=2.0.1",
30
- "fastembed>=0.2.5",
31
- ]
26
+ dependencies = ["haystack-ai>=2.0.1", "fastembed>=0.2.5"]
32
27
 
33
28
  [project.urls]
34
29
  Source = "https://github.com/deepset-ai/haystack-core-integrations"
@@ -50,50 +45,28 @@ git_describe_command = 'git describe --tags --match="integrations/fastembed-v[0-
50
45
  dependencies = [
51
46
  "coverage[toml]>=6.5",
52
47
  "pytest",
48
+ "pytest-rerunfailures",
53
49
  "ipython",
54
50
  "haystack-pydoc-tools",
55
51
  ]
56
52
  [tool.hatch.envs.default.scripts]
57
- test = "pytest {args:tests}"
58
- test-cov = "coverage run -m pytest {args:tests}"
59
- cov-report = [
60
- "- coverage combine",
61
- "coverage report",
62
- ]
63
- cov = [
64
- "test-cov",
65
- "cov-report",
66
- ]
67
- docs = [
68
- "pydoc-markdown pydoc/config.yml"
69
- ]
53
+ test = "pytest --reruns 3 --reruns-delay 30 -x {args:tests}"
54
+ test-cov = "coverage run -m pytest --reruns 3 --reruns-delay 30 -x {args:tests}"
55
+ cov-report = ["- coverage combine", "coverage report"]
56
+ cov = ["test-cov", "cov-report"]
57
+ docs = ["pydoc-markdown pydoc/config.yml"]
70
58
 
71
59
  [[tool.hatch.envs.all.matrix]]
72
60
  python = ["3.8", "3.9", "3.10", "3.11", "3.12"]
73
61
 
74
62
  [tool.hatch.envs.lint]
75
63
  detached = true
76
- dependencies = [
77
- "black>=23.1.0",
78
- "mypy>=1.0.0",
79
- "ruff>=0.0.243",
80
- "numpy"
81
- ]
64
+ dependencies = ["black>=23.1.0", "mypy>=1.0.0", "ruff>=0.0.243", "numpy"]
82
65
  [tool.hatch.envs.lint.scripts]
83
66
  typing = "mypy --install-types --non-interactive --explicit-package-bases {args:src/ tests}"
84
- style = [
85
- "ruff {args:.}",
86
- "black --check --diff {args:.}",
87
- ]
88
- fmt = [
89
- "black {args:.}",
90
- "ruff --fix {args:.}",
91
- "style",
92
- ]
93
- all = [
94
- "style",
95
- "typing",
96
- ]
67
+ style = ["ruff check {args:.}", "black --check --diff {args:.}"]
68
+ fmt = ["black {args:.}", "ruff --fix {args:.}", "style"]
69
+ all = ["style", "typing"]
97
70
 
98
71
  [tool.black]
99
72
  target-version = ["py38"]
@@ -135,11 +108,18 @@ ignore = [
135
108
  "B027",
136
109
  # Allow boolean positional values in function calls, like `dict.get(... True)`
137
110
  "FBT003",
138
- "FBT001", "FBT002",
111
+ "FBT001",
112
+ "FBT002",
139
113
  # Ignore checks for possible passwords
140
- "S105", "S106", "S107",
114
+ "S105",
115
+ "S106",
116
+ "S107",
141
117
  # Ignore complexity
142
- "C901", "PLR0911", "PLR0912", "PLR0913", "PLR0915",
118
+ "C901",
119
+ "PLR0911",
120
+ "PLR0912",
121
+ "PLR0913",
122
+ "PLR0915",
143
123
  ]
144
124
  unfixable = [
145
125
  # Don't touch unused imports
@@ -165,12 +145,8 @@ parallel = false
165
145
 
166
146
  [tool.coverage.report]
167
147
  omit = ["*/tests/*", "*/__init__.py"]
168
- show_missing=true
169
- exclude_lines = [
170
- "no cov",
171
- "if __name__ == .__main__.:",
172
- "if TYPE_CHECKING:",
173
- ]
148
+ show_missing = true
149
+ exclude_lines = ["no cov", "if __name__ == .__main__.:", "if TYPE_CHECKING:"]
174
150
 
175
151
  [[tool.mypy.overrides]]
176
152
  module = [
@@ -178,6 +154,6 @@ module = [
178
154
  "haystack_integrations.*",
179
155
  "fastembed.*",
180
156
  "pytest.*",
181
- "numpy.*"
157
+ "numpy.*",
182
158
  ]
183
159
  ignore_missing_imports = true
@@ -159,7 +159,7 @@ class FastembedSparseDocumentEmbedder:
159
159
  embeddings = self.embedding_backend.embed(
160
160
  texts_to_embed,
161
161
  batch_size=self.batch_size,
162
- show_progress_bar=self.progress_bar,
162
+ progress_bar=self.progress_bar,
163
163
  parallel=self.parallel,
164
164
  )
165
165
 
@@ -111,7 +111,7 @@ class FastembedSparseTextEmbedder:
111
111
 
112
112
  embedding = self.embedding_backend.embed(
113
113
  [text],
114
- show_progress_bar=self.progress_bar,
114
+ progress_bar=self.progress_bar,
115
115
  parallel=self.parallel,
116
116
  )[0]
117
117
  return {"sparse_embedding": embedding}
@@ -270,7 +270,7 @@ class TestFastembedSparseDocumentEmbedderDoc:
270
270
  "meta_value 4\ndocument-number 4",
271
271
  ],
272
272
  batch_size=32,
273
- show_progress_bar=True,
273
+ progress_bar=True,
274
274
  parallel=None,
275
275
  )
276
276