1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 setuptools, 6 llm, 7 llm-sentence-transformers, 8 einops, 9 sentence-transformers, 10 pytestCheckHook, 11 writableTmpDirAsHomeHook, 12}: 13 14buildPythonPackage rec { 15 pname = "llm-sentence-transformers"; 16 version = "0.3.2"; 17 pyproject = true; 18 19 src = fetchFromGitHub { 20 owner = "simonw"; 21 repo = "llm-sentence-transformers"; 22 tag = version; 23 hash = "sha256-FDDMItKFEYEptiL3EHKgKVxClqRU9RaM3uD3xP0F4OM="; 24 }; 25 26 build-system = [ setuptools ]; 27 28 dependencies = [ 29 einops 30 llm 31 sentence-transformers 32 ]; 33 34 nativeCheckInputs = [ 35 pytestCheckHook 36 writableTmpDirAsHomeHook 37 ]; 38 39 # Disabled because they access the network 40 disabledTests = [ 41 "test_run_embedding" 42 "test_embed_multi_with_generator" 43 ]; 44 45 pythonImportsCheck = [ "llm_sentence_transformers" ]; 46 47 passthru.tests = llm.mkPluginTest llm-sentence-transformers; 48 49 meta = { 50 description = "LLM plugin for embeddings using sentence-transformers"; 51 homepage = "https://github.com/simonw/llm-sentence-transformers"; 52 changelog = "https://github.com/simonw/llm-sentence-transformers/releases/tag/${version}/CHANGELOG.md"; 53 license = lib.licenses.asl20; 54 maintainers = with lib.maintainers; [ philiptaron ]; 55 }; 56}