1{ 2 lib, 3 buildPythonPackage, 4 fastembed, 5 fetchFromGitHub, 6 grpcio, 7 grpcio-tools, 8 httpx, 9 numpy, 10 poetry-core, 11 portalocker, 12 pydantic, 13 pytest-asyncio, 14 pytestCheckHook, 15 pythonOlder, 16 urllib3, 17}: 18 19buildPythonPackage rec { 20 pname = "qdrant-client"; 21 version = "1.14.2"; 22 pyproject = true; 23 24 disabled = pythonOlder "3.7"; 25 26 src = fetchFromGitHub { 27 owner = "qdrant"; 28 repo = "qdrant-client"; 29 tag = "v${version}"; 30 hash = "sha256-JohJbKIZfPG3qqjF8T1EmeS1sZALCglEIcsWiNSn/QE="; 31 }; 32 33 build-system = [ poetry-core ]; 34 35 pythonRelaxDeps = [ 36 "portalocker" 37 ]; 38 39 dependencies = [ 40 grpcio 41 grpcio-tools 42 httpx 43 numpy 44 portalocker 45 pydantic 46 urllib3 47 ] ++ httpx.optional-dependencies.http2; 48 49 pythonImportsCheck = [ "qdrant_client" ]; 50 51 nativeCheckInputs = [ 52 pytestCheckHook 53 pytest-asyncio 54 ]; 55 56 # Tests require network access 57 doCheck = false; 58 59 optional-dependencies = { 60 fastembed = [ fastembed ]; 61 }; 62 63 meta = with lib; { 64 description = "Python client for Qdrant vector search engine"; 65 homepage = "https://github.com/qdrant/qdrant-client"; 66 changelog = "https://github.com/qdrant/qdrant-client/releases/tag/${src.tag}"; 67 license = licenses.mit; 68 maintainers = with maintainers; [ happysalada ]; 69 }; 70}