1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pythonOlder
5, poetry-core
6, onnxruntime
7, requests
8, tokenizers
9, tqdm
10, pytestCheckHook
11}:
12
13buildPythonPackage rec {
14 pname = "fastembed";
15 version = "0.1.1";
16 format = "pyproject";
17
18 disabled = pythonOlder "3.8";
19
20 src = fetchFromGitHub {
21 owner = "qdrant";
22 repo = "fastembed";
23 rev = "refs/tags/v${version}";
24 hash = "sha256-d7Zb0IL0NOPEPsCHe/ZMNELnSCG4+y8JmGAXnCRUd50=";
25 };
26
27 nativeBuildInputs = [
28 poetry-core
29 ];
30
31 propagatedBuildInputs = [
32 onnxruntime
33 requests
34 tokenizers
35 tqdm
36 ];
37
38 pythonImportsCheck = [ "fastembed" ];
39
40 nativeCheckInputs = [
41 pytestCheckHook
42 ];
43
44 # there is one test and it requires network
45 doCheck = false;
46
47 meta = with lib; {
48 description = "Fast, Accurate, Lightweight Python library to make State of the Art Embedding";
49 homepage = "https://github.com/qdrant/fastembed";
50 license = licenses.asl20;
51 maintainers = with maintainers; [ happysalada ];
52 };
53}