From 0c0a1ee5f0564d30e5e3476934824429cded4af5 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 13:08:35 +0100 Subject: [PATCH 01/18] python312Packages.llama-index-embeddings-ollama: init at 0.1.2 --- .../llama-index-embeddings-ollama/default.nix | 45 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 47 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-embeddings-ollama/default.nix diff --git a/pkgs/development/python-modules/llama-index-embeddings-ollama/default.nix b/pkgs/development/python-modules/llama-index-embeddings-ollama/default.nix new file mode 100644 index 000000000000..509bf54d2872 --- /dev/null +++ b/pkgs/development/python-modules/llama-index-embeddings-ollama/default.nix @@ -0,0 +1,45 @@ +{ lib +, buildPythonPackage +, fetchPypi +, google-generativeai +, llama-index-core +, poetry-core +, pytestCheckHook +, pythonOlder +}: + +buildPythonPackage rec { + pname = "llama-index-embeddings-ollama"; + version = "0.1.2"; + pyproject = true; + + disabled = pythonOlder "3.9"; + + src = fetchPypi { + pname = "llama_index_embeddings_ollama"; + inherit version; + hash = "sha256-qeCAm93S5K2IjySVGe3H49M5x05OA/xaQMMGDcQdR6k="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + llama-index-core + ]; + + # Tests are only available in the mono repo + doCheck = false; + + pythonImportsCheck = [ + "llama_index.embeddings.ollama" + ]; + + meta = with lib; { + description = "LlamaIndex Llms Integration for Ollama"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/embeddings/llama-index-embeddings-ollama"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 94a27ec09da6..8326c7502e15 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6770,6 +6770,8 @@ self: super: with self; { llama-index-embeddings-google = callPackage ../development/python-modules/llama-index-embeddings-google { }; + llama-index-embeddings-ollama = callPackage ../development/python-modules/llama-index-embeddings-ollama { }; + llama-index-embeddings-openai = callPackage ../development/python-modules/llama-index-embeddings-openai { }; llama-index-indices-managed-llama-cloud = callPackage ../development/python-modules/llama-index-indices-managed-llama-cloud { }; From 900b45b96a7fdd2bff751d3928142dcf40f0f671 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 13:31:25 +0100 Subject: [PATCH 02/18] python312Packages.sentence-transformers: refactor --- .../sentence-transformers/default.nix | 42 ++++++++++++++++--- 1 file changed, 37 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/sentence-transformers/default.nix b/pkgs/development/python-modules/sentence-transformers/default.nix index 3803dc4d29c6..48743c6f6ebd 100644 --- a/pkgs/development/python-modules/sentence-transformers/default.nix +++ b/pkgs/development/python-modules/sentence-transformers/default.nix @@ -4,9 +4,12 @@ , huggingface-hub , nltk , numpy +, pytestCheckHook +, pythonOlder , scikit-learn , scipy , sentencepiece +, setuptools , tokenizers , torch , torchvision @@ -17,7 +20,9 @@ buildPythonPackage rec { pname = "sentence-transformers"; version = "2.5.1"; - format = "setuptools"; + pyproject = true; + + disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "UKPLab"; @@ -26,7 +31,11 @@ buildPythonPackage rec { hash = "sha256-HIOizBf8YnPAj95cG1HopO9B/bhAmT0u3q5CM6POEjQ="; }; - propagatedBuildInputs = [ + build-system = [ + setuptools + ]; + + dependencies = [ huggingface-hub nltk numpy @@ -40,14 +49,37 @@ buildPythonPackage rec { transformers ]; - pythonImportsCheck = [ "sentence_transformers" ]; + nativeCheckInputs = [ + pytestCheckHook + ]; - doCheck = false; # tests fail at build_ext + pythonImportsCheck = [ + "sentence_transformers" + ]; + + disabledTests = [ + # Tests require network access + "test_simple_encode" + "test_paraphrase_mining" + "test_cmnrl_same_grad" + "test_LabelAccuracyEvaluator" + "test_ParaphraseMiningEvaluator" + ]; + + disabledTestPaths = [ + # Tests require network access + "tests/test_pretrained_stsb.py" + "tests/test_sentence_transformer.py" + "tests/test_compute_embeddings.py" + "tests/test_multi_process.py" + "tests/test_cross_encoder.py" + "tests/test_train_stsb.py" + ]; meta = with lib; { description = "Multilingual Sentence & Image Embeddings with BERT"; homepage = "https://github.com/UKPLab/sentence-transformers"; - changelog = "https://github.com/UKPLab/sentence-transformers/releases/tag/${src.rev}"; + changelog = "https://github.com/UKPLab/sentence-transformers/releases/tag/${version}"; license = licenses.asl20; maintainers = with maintainers; [ dit7ya ]; }; From c0456dddc9843750c3f4fbb8a79d2b662c38973f Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 13:31:42 +0100 Subject: [PATCH 03/18] python312Packages.sentence-transformers: 2.5.1 -> 2.6.1 Diff: https://github.com/UKPLab/sentence-transformers/compare/refs/tags/v2.5.1...v2.6.1 Changelog: https://github.com/UKPLab/sentence-transformers/releases/tag/2.6.1 --- .../python-modules/sentence-transformers/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/sentence-transformers/default.nix b/pkgs/development/python-modules/sentence-transformers/default.nix index 48743c6f6ebd..d0174236cebd 100644 --- a/pkgs/development/python-modules/sentence-transformers/default.nix +++ b/pkgs/development/python-modules/sentence-transformers/default.nix @@ -19,7 +19,7 @@ buildPythonPackage rec { pname = "sentence-transformers"; - version = "2.5.1"; + version = "2.6.1"; pyproject = true; disabled = pythonOlder "3.8"; @@ -28,7 +28,7 @@ buildPythonPackage rec { owner = "UKPLab"; repo = "sentence-transformers"; rev = "refs/tags/v${version}"; - hash = "sha256-HIOizBf8YnPAj95cG1HopO9B/bhAmT0u3q5CM6POEjQ="; + hash = "sha256-09AAuv/yXTbBvjA4gu5ueZrQkVja0BTIGNLZ2tLSyh8="; }; build-system = [ From 67fccb8c48b5501690b856e2837e1972b3412456 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 13:32:18 +0100 Subject: [PATCH 04/18] python312Packages.llama-index-embeddings-huggingface: init at 0.2.0 --- .../default.nix | 45 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 47 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-embeddings-huggingface/default.nix diff --git a/pkgs/development/python-modules/llama-index-embeddings-huggingface/default.nix b/pkgs/development/python-modules/llama-index-embeddings-huggingface/default.nix new file mode 100644 index 000000000000..c30cb3e72e2a --- /dev/null +++ b/pkgs/development/python-modules/llama-index-embeddings-huggingface/default.nix @@ -0,0 +1,45 @@ +{ lib +, buildPythonPackage +, fetchPypi +, llama-index-core +, poetry-core +, pythonOlder +, sentence-transformers +}: + +buildPythonPackage rec { + pname = "llama-index-embeddings-huggingface"; + version = "0.2.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "llama_index_embeddings_huggingface"; + inherit version; + hash = "sha256-3PCplFXzfE4aL91c1lyd0aRRu4aMP4DDNcTQybadAHE="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + llama-index-core + sentence-transformers + ]; + + # Tests are only available in the mono repo + doCheck = false; + + pythonImportsCheck = [ + "llama_index.embeddings.huggingface" + ]; + + meta = with lib; { + description = "LlamaIndex Embeddings Integration for Huggingface"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/embeddings/llama-index-embeddings-huggingface"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8326c7502e15..747ed32aee5a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6770,6 +6770,8 @@ self: super: with self; { llama-index-embeddings-google = callPackage ../development/python-modules/llama-index-embeddings-google { }; + llama-index-embeddings-huggingface = callPackage ../development/python-modules/llama-index-embeddings-huggingface { }; + llama-index-embeddings-ollama = callPackage ../development/python-modules/llama-index-embeddings-ollama { }; llama-index-embeddings-openai = callPackage ../development/python-modules/llama-index-embeddings-openai { }; From d622e6abcb59de616900a00fd275fb48f7423614 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 13:36:11 +0100 Subject: [PATCH 05/18] python312Packages.llama-index-llms-ollama: init at 0.1.2 --- .../llama-index-llms-ollama/default.nix | 43 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 45 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-llms-ollama/default.nix diff --git a/pkgs/development/python-modules/llama-index-llms-ollama/default.nix b/pkgs/development/python-modules/llama-index-llms-ollama/default.nix new file mode 100644 index 000000000000..dd1ccf563b77 --- /dev/null +++ b/pkgs/development/python-modules/llama-index-llms-ollama/default.nix @@ -0,0 +1,43 @@ +{ lib +, buildPythonPackage +, fetchPypi +, llama-index-core +, poetry-core +, pythonOlder +}: + +buildPythonPackage rec { + pname = "llama-index-llms-ollama"; + version = "0.1.2"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "llama_index_llms_ollama"; + inherit version; + hash = "sha256-GexyfQSMhzkV1bA32aL+lWUgwBmxHXq4w8QG3RHzTks="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + llama-index-core + ]; + + # Tests are only available in the mono repo + doCheck = false; + + pythonImportsCheck = [ + "llama_index.llms.ollama" + ]; + + meta = with lib; { + description = "LlamaIndex LLMS Integration for ollama"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/llms/llama-index-llms-ollama"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 747ed32aee5a..cdb0656339ed 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6780,6 +6780,8 @@ self: super: with self; { llama-index-legacy = callPackage ../development/python-modules/llama-index-legacy { }; + llama-index-llms-ollama = callPackage ../development/python-modules/llama-index-llms-ollama { }; + llama-index-llms-openai = callPackage ../development/python-modules/llama-index-llms-openai { }; llama-index-multi-modal-llms-openai = callPackage ../development/python-modules/llama-index-multi-modal-llms-openai { }; From 4efe48318b9799bb8084914a61f79858f60deeb2 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 13:39:25 +0100 Subject: [PATCH 06/18] python312Packages.llama-index-llms-openai-like: init at 0.1.3 --- .../llama-index-llms-openai-like/default.nix | 47 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 49 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-llms-openai-like/default.nix diff --git a/pkgs/development/python-modules/llama-index-llms-openai-like/default.nix b/pkgs/development/python-modules/llama-index-llms-openai-like/default.nix new file mode 100644 index 000000000000..ccb32689f530 --- /dev/null +++ b/pkgs/development/python-modules/llama-index-llms-openai-like/default.nix @@ -0,0 +1,47 @@ +{ lib +, buildPythonPackage +, fetchPypi +, llama-index-core +, llama-index-llms-openai +, poetry-core +, pythonOlder +, transformers +}: + +buildPythonPackage rec { + pname = "llama-index-llms-openai-like"; + version = "0.1.3"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "llama_index_llms_openai_like"; + inherit version; + hash = "sha256-w0EjJQd8dSY+N9YNUBMUub3HcPEtiisW51bn2ayPnj8="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + llama-index-core + llama-index-llms-openai + transformers + ]; + + # Tests are only available in the mono repo + doCheck = false; + + pythonImportsCheck = [ + "llama_index.llms.openai_like" + ]; + + meta = with lib; { + description = "LlamaIndex LLMS Integration for OpenAI like"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/llms/llama-index-llms-openai-like"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cdb0656339ed..a4810fd36006 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6784,6 +6784,8 @@ self: super: with self; { llama-index-llms-openai = callPackage ../development/python-modules/llama-index-llms-openai { }; + llama-index-llms-openai-like = callPackage ../development/python-modules/llama-index-llms-openai-like { }; + llama-index-multi-modal-llms-openai = callPackage ../development/python-modules/llama-index-multi-modal-llms-openai { }; llama-index-program-openai = callPackage ../development/python-modules/llama-index-program-openai { }; From e9fc5be0c783e9b6c2a87f095773fd2b42851503 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 13:56:35 +0100 Subject: [PATCH 07/18] python312Packages.asgi-lifespan: init at 2.1.0 Programmatic startup/shutdown of ASGI apps https://github.com/florimondmanca/asgi-lifespan --- .../python-modules/asgi-lifespan/default.nix | 51 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 53 insertions(+) create mode 100644 pkgs/development/python-modules/asgi-lifespan/default.nix diff --git a/pkgs/development/python-modules/asgi-lifespan/default.nix b/pkgs/development/python-modules/asgi-lifespan/default.nix new file mode 100644 index 000000000000..05e21d84585f --- /dev/null +++ b/pkgs/development/python-modules/asgi-lifespan/default.nix @@ -0,0 +1,51 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, setuptools +, setuptools-scm +, sniffio +}: + +buildPythonPackage rec { + pname = "asgi-lifespan"; + version = "2.1.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "florimondmanca"; + repo = "asgi-lifespan"; + rev = "refs/tags/${version}"; + hash = "sha256-Jgmd/4c1lxHM/qi3MJNN1aSSUJrI7CRNwwHrFwwcCkc="; + }; + + postPatch = '' + sed -i "/--cov/d" setup.cfg + ''; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + sniffio + ]; + + # Circular dependencies, starlette + doCheck = false; + + pythonImportsCheck = [ + "asgi_lifespan" + ]; + + meta = with lib; { + description = "Programmatic startup/shutdown of ASGI apps"; + homepage = "https://github.com/florimondmanca/asgi-lifespan"; + changelog = "https://github.com/florimondmanca/asgi-lifespan/blob/${version}/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a4810fd36006..646526c40549 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -783,6 +783,8 @@ self: super: with self; { asgi-csrf = callPackage ../development/python-modules/asgi-csrf { }; + asgi-lifespan = callPackage ../development/python-modules/asgi-lifespan { }; + asgi-logger = callPackage ../development/python-modules/asgi-logger { }; asgineer = callPackage ../development/python-modules/asgineer { }; From e21763ec29c66c974f343047b4102689c3a67063 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 14:07:49 +0100 Subject: [PATCH 08/18] python312Packages.sse-starlette: init at 2.0.0 Server Sent Events for Starlette and FastAPI https://github.com/sysid/sse-starlette --- .../python-modules/sse-starlette/default.nix | 67 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 69 insertions(+) create mode 100644 pkgs/development/python-modules/sse-starlette/default.nix diff --git a/pkgs/development/python-modules/sse-starlette/default.nix b/pkgs/development/python-modules/sse-starlette/default.nix new file mode 100644 index 000000000000..149a37886ca0 --- /dev/null +++ b/pkgs/development/python-modules/sse-starlette/default.nix @@ -0,0 +1,67 @@ +{ lib +, anyio +, asgi-lifespan +, buildPythonPackage +, fastapi +, fetchFromGitHub +, httpx +, pdm-backend +, psutil +, pytest-asyncio +, pytestCheckHook +, pythonOlder +, starlette +, uvicorn +}: + +buildPythonPackage rec { + pname = "sse-starlette"; + version = "2.0.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "sysid"; + repo = "sse-starlette"; + rev = "refs/tags/v${version}"; + hash = "sha256-kDcSG/3foP7fMZKYrkKx6FHvT9c9rSzxyv2EHjQ2WSA="; + }; + + build-system = [ + pdm-backend + ]; + + dependencies = [ + anyio + starlette + uvicorn + ]; + + nativeCheckInputs = [ + asgi-lifespan + fastapi + httpx + psutil + pytest-asyncio + pytestCheckHook + ]; + + pythonImportsCheck = [ + "sse_starlette" + ]; + + disabledTests = [ + # AssertionError + "test_stop_server_with_many_consumers" + "test_stop_server_conditional" + ]; + + meta = with lib; { + description = "Server Sent Events for Starlette and FastAPI"; + homepage = "https://github.com/sysid/sse-starlette"; + changelog = "https://github.com/sysid/sse-starlette/blob/${version}/CHANGELOG.md"; + license = licenses.bsd3; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 646526c40549..2209f7386643 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -14216,6 +14216,8 @@ self: super: with self; { sseclient-py = callPackage ../development/python-modules/sseclient-py { }; + sse-starlette = callPackage ../development/python-modules/sse-starlette { }; + sshfs = callPackage ../development/python-modules/sshfs { }; sshpubkeys = callPackage ../development/python-modules/sshpubkeys { }; From 84193256b53f6ebae225edc4086effeae1c3929c Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 14:14:27 +0100 Subject: [PATCH 09/18] python312Packages.starlette-context: init at 0.3.6 Middleware for Starlette that allows you to store and access the context data of a request https://github.com/tomwojcik/starlette-context --- .../starlette-context/default.nix | 51 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 53 insertions(+) create mode 100644 pkgs/development/python-modules/starlette-context/default.nix diff --git a/pkgs/development/python-modules/starlette-context/default.nix b/pkgs/development/python-modules/starlette-context/default.nix new file mode 100644 index 000000000000..2657e9740a60 --- /dev/null +++ b/pkgs/development/python-modules/starlette-context/default.nix @@ -0,0 +1,51 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, httpx +, poetry-core +, pytest-asyncio +, pytestCheckHook +, pythonOlder +, starlette +}: + +buildPythonPackage rec { + pname = "starlette-context"; + version = "0.3.6"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "tomwojcik"; + repo = "starlette-context"; + rev = "refs/tags/v${version}"; + hash = "sha256-ZKwE2M86clYKdptd0o/j8VYUOj/Y/72uUnpxFbJ65vw="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + starlette + ]; + + nativeCheckInputs = [ + httpx + pytest-asyncio + pytestCheckHook + ]; + + pythonImportsCheck = [ + "starlette_context" + ]; + + meta = with lib; { + description = "Middleware for Starlette that allows you to store and access the context data of a request"; + homepage = "https://github.com/tomwojcik/starlette-context"; + changelog = "https://github.com/tomwojcik/starlette-context/releases/tag/v${version}"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2209f7386643..450e1105b8b5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -14234,6 +14234,8 @@ self: super: with self; { starlette = callPackage ../development/python-modules/starlette { }; + starlette-context = callPackage ../development/python-modules/starlette-context { }; + starlette-wtf = callPackage ../development/python-modules/starlette-wtf { }; starkbank-ecdsa = callPackage ../development/python-modules/starkbank-ecdsa { }; From 655a28646eefbf37b01d0bfa52d5f887f903b34d Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 15:26:34 +0100 Subject: [PATCH 10/18] python312Packages.llama-index-vector-stores-postgres: init at 0.1.3 --- .../default.nix | 52 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 54 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-vector-stores-postgres/default.nix diff --git a/pkgs/development/python-modules/llama-index-vector-stores-postgres/default.nix b/pkgs/development/python-modules/llama-index-vector-stores-postgres/default.nix new file mode 100644 index 000000000000..4751a0fce866 --- /dev/null +++ b/pkgs/development/python-modules/llama-index-vector-stores-postgres/default.nix @@ -0,0 +1,52 @@ +{ lib +, asyncpg +, buildPythonPackage +, fetchPypi +, llama-index-core +, pgvector +, poetry-core +, psycopg2 +, pythonRelaxDepsHook +, pythonOlder +}: + +buildPythonPackage rec { + pname = "llama-index-vector-stores-postgres"; + version = "0.1.3"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "llama_index_vector_stores_postgres"; + inherit version; + hash = "sha256-vWqCcda9dDPLceoOEgMivpBmkLbKs/poEjzCk/q4HwI="; + }; + + pythonRemoveDeps = [ + "psycopg2-binary" + ]; + + build-system = [ + poetry-core + pythonRelaxDepsHook + ]; + + dependencies = [ + asyncpg + llama-index-core + pgvector + psycopg2 + ]; + + pythonImportsCheck = [ + "llama_index.vector_stores.postgres" + ]; + + meta = with lib; { + description = "LlamaIndex Vector Store Integration for Postgres"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/vector_stores/llama-index-vector-stores-postgres"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 450e1105b8b5..49e05591355c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6812,6 +6812,8 @@ self: super: with self; { llama-index-vector-stores-chroma = callPackage ../development/python-modules/llama-index-vector-stores-chroma { }; + llama-index-vector-stores-postgres = callPackage ../development/python-modules/llama-index-vector-stores-postgres { }; + llama-parse = callPackage ../development/python-modules/llama-parse { }; llamaindex-py-client = callPackage ../development/python-modules/llamaindex-py-client { }; From c921298cc6be5c049bd46aaa046d5eaaac42d42c Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 15:30:28 +0100 Subject: [PATCH 11/18] python312Packages.llama-index-vector-stores-qdrant: init at 0.1.4 --- .../default.nix | 44 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 46 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-vector-stores-qdrant/default.nix diff --git a/pkgs/development/python-modules/llama-index-vector-stores-qdrant/default.nix b/pkgs/development/python-modules/llama-index-vector-stores-qdrant/default.nix new file mode 100644 index 000000000000..e0c34a935c76 --- /dev/null +++ b/pkgs/development/python-modules/llama-index-vector-stores-qdrant/default.nix @@ -0,0 +1,44 @@ +{ lib +, buildPythonPackage +, fetchPypi +, llama-index-core +, qdrant-client +, poetry-core +, grpcio +, pythonOlder +}: + +buildPythonPackage rec { + pname = "llama-index-vector-stores-qdrant"; + version = "0.1.4"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "llama_index_vector_stores_qdrant"; + inherit version; + hash = "sha256-UIiEL7ZUcGQusyhs9cFsPOZ8qxH7ouoCnQMemlho0lA="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + grpcio + llama-index-core + qdrant-client + ]; + + pythonImportsCheck = [ + "llama_index.vector_stores.qdrant" + ]; + + meta = with lib; { + description = "LlamaIndex Vector Store Integration for Qdrant"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/vector_stores/llama-index-vector-stores-qdrant"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 49e05591355c..45fda4a6216e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6814,6 +6814,8 @@ self: super: with self; { llama-index-vector-stores-postgres = callPackage ../development/python-modules/llama-index-vector-stores-postgres { }; + llama-index-vector-stores-qdrant = callPackage ../development/python-modules/llama-index-vector-stores-qdrant { }; + llama-parse = callPackage ../development/python-modules/llama-parse { }; llamaindex-py-client = callPackage ../development/python-modules/llamaindex-py-client { }; From 7f1aead8b38d0e9e6120d299597a4343c22faf29 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 15:35:01 +0100 Subject: [PATCH 12/18] python312Packages.llama-index-vector-stores-google: init at 0.1.4 --- .../default.nix | 48 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 50 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-vector-stores-google/default.nix diff --git a/pkgs/development/python-modules/llama-index-vector-stores-google/default.nix b/pkgs/development/python-modules/llama-index-vector-stores-google/default.nix new file mode 100644 index 000000000000..9d5a33ebc7d9 --- /dev/null +++ b/pkgs/development/python-modules/llama-index-vector-stores-google/default.nix @@ -0,0 +1,48 @@ +{ lib +, buildPythonPackage +, fetchPypi +, google-generativeai +, llama-index-core +, poetry-core +, pythonOlder +, pythonRelaxDepsHook +}: + +buildPythonPackage rec { + pname = "llama-index-vector-stores-google"; + version = "0.1.4"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "llama_index_vector_stores_google"; + inherit version; + hash = "sha256-5HjbymV7wdcu/C+ndWCxj3j10QIgVqUaSaZ4cRMJ46U="; + }; + + pythonRelaxDeps = [ + "google-generativeai" + ]; + + build-system = [ + poetry-core + pythonRelaxDepsHook + ]; + + dependencies = [ + google-generativeai + llama-index-core + ]; + + pythonImportsCheck = [ + "llama_index.vector_stores.google" + ]; + + meta = with lib; { + description = "LlamaIndex Vector Store Integration for Google"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/vector_stores/llama-index-vector-stores-google"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 45fda4a6216e..148d4cf4ba45 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6812,6 +6812,8 @@ self: super: with self; { llama-index-vector-stores-chroma = callPackage ../development/python-modules/llama-index-vector-stores-chroma { }; + llama-index-vector-stores-google = callPackage ../development/python-modules/llama-index-vector-stores-google { }; + llama-index-vector-stores-postgres = callPackage ../development/python-modules/llama-index-vector-stores-postgres { }; llama-index-vector-stores-qdrant = callPackage ../development/python-modules/llama-index-vector-stores-qdrant { }; From 445c570f5e9826d180f965038b09899373e814ab Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 16:39:32 +0100 Subject: [PATCH 13/18] python312Packages.llama-index-graph-stores-neo4j: init at 0.1.3 --- .../default.nix | 42 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 44 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-graph-stores-neo4j/default.nix diff --git a/pkgs/development/python-modules/llama-index-graph-stores-neo4j/default.nix b/pkgs/development/python-modules/llama-index-graph-stores-neo4j/default.nix new file mode 100644 index 000000000000..8561c2299ebe --- /dev/null +++ b/pkgs/development/python-modules/llama-index-graph-stores-neo4j/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildPythonPackage +, fetchPypi +, neo4j +, llama-index-core +, poetry-core +, pythonOlder +}: + +buildPythonPackage rec { + pname = "llama-index-graph-stores-neo4j"; + version = "0.1.3"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "llama_index_graph_stores_neo4j"; + inherit version; + hash = "sha256-AUWezvdONxz5H42VpTjh7NrBkTdWjtBJyMvA8kSh5w4="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + neo4j + llama-index-core + ]; + + pythonImportsCheck = [ + "llama_index.graph_stores.neo4j" + ]; + + meta = with lib; { + description = "LlamaIndex Graph Store Integration for Neo4j"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/graph_stores/llama-index-graph-stores-neo4j"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 148d4cf4ba45..ff2435864fe3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6778,6 +6778,8 @@ self: super: with self; { llama-index-embeddings-openai = callPackage ../development/python-modules/llama-index-embeddings-openai { }; + llama-index-graph-stores-neo4j = callPackage ../development/python-modules/llama-index-graph-stores-neo4j { }; + llama-index-indices-managed-llama-cloud = callPackage ../development/python-modules/llama-index-indices-managed-llama-cloud { }; llama-index-legacy = callPackage ../development/python-modules/llama-index-legacy { }; From 5e0f3e5e36ce0a7a6ddb25ef9faf698c91250b3a Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 16:42:16 +0100 Subject: [PATCH 14/18] python312Packages.llama-index-graph-stores-neptune: init at 0.1.3 --- .../default.nix | 42 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 44 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-graph-stores-neptune/default.nix diff --git a/pkgs/development/python-modules/llama-index-graph-stores-neptune/default.nix b/pkgs/development/python-modules/llama-index-graph-stores-neptune/default.nix new file mode 100644 index 000000000000..869116b58c6b --- /dev/null +++ b/pkgs/development/python-modules/llama-index-graph-stores-neptune/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildPythonPackage +, fetchPypi +, boto3 +, llama-index-core +, poetry-core +, pythonOlder +}: + +buildPythonPackage rec { + pname = "llama-index-graph-stores-neptune"; + version = "0.1.3"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "llama_index_graph_stores_neptune"; + inherit version; + hash = "sha256-ZveFCJJT7Qal82cuVTs+3AmSuvdc7GsHqqqNvcDb3CY="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + boto3 + llama-index-core + ]; + + pythonImportsCheck = [ + "llama_index.graph_stores.neptune" + ]; + + meta = with lib; { + description = "LlamaIndex Graph Store Integration for Neptune"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/graph_stores/llama-index-graph-stores-neptune"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ff2435864fe3..e54ab6613cd4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6780,6 +6780,8 @@ self: super: with self; { llama-index-graph-stores-neo4j = callPackage ../development/python-modules/llama-index-graph-stores-neo4j { }; + llama-index-graph-stores-neptune = callPackage ../development/python-modules/llama-index-graph-stores-neptune { }; + llama-index-indices-managed-llama-cloud = callPackage ../development/python-modules/llama-index-indices-managed-llama-cloud { }; llama-index-legacy = callPackage ../development/python-modules/llama-index-legacy { }; From 49c1c82fd8ca32975eb553acc8d7ca25608c6955 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 17:04:07 +0100 Subject: [PATCH 15/18] python312Packages.nebula3-python: init at 3.5.0 Client API of Nebula Graph in Python https://github.com/vesoft-inc/nebula-python --- .../python-modules/nebula3-python/default.nix | 67 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 69 insertions(+) create mode 100644 pkgs/development/python-modules/nebula3-python/default.nix diff --git a/pkgs/development/python-modules/nebula3-python/default.nix b/pkgs/development/python-modules/nebula3-python/default.nix new file mode 100644 index 000000000000..c352f732ef20 --- /dev/null +++ b/pkgs/development/python-modules/nebula3-python/default.nix @@ -0,0 +1,67 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pdm-backend +, future +, httplib2 +, pythonOlder +, pytz +, pytestCheckHook +, six +}: + +buildPythonPackage rec { + pname = "nebula3-python"; + version = "3.5.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "vesoft-inc"; + repo = "nebula-python"; + rev = "refs/tags/v${version}"; + hash = "sha256-T9lZVYov6tQ8QRM2QtOGyolHk3O5FSb3xq70nS2Rr6c="; + }; + + build-system = [ + pdm-backend + ]; + + dependencies = [ + future + httplib2 + pytz + six + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "nebula3" + ]; + + disabledTestPaths = [ + # Tests require a running thrift instance + "tests/test_connection.py" + "tests/test_data_from_server.py" + "tests/test_graph_storage_client.py" + "tests/test_meta_cache.py" + "tests/test_parameter.py" + "tests/test_pool.py" + "tests/test_session.py" + "tests/test_session_pool.py" + "tests/test_ssl_connection.py" + "tests/test_ssl_pool.py" + ]; + + meta = with lib; { + description = "Client API of Nebula Graph in Python"; + homepage = "https://github.com/vesoft-inc/nebula-python"; + changelog = "https://github.com/vesoft-inc/nebula-python/blob/${version}/CHANGELOG.md"; + license = licenses.asl20; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e54ab6613cd4..3a4ee89b7a63 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8530,6 +8530,8 @@ self: super: with self; { ndtypes = callPackage ../development/python-modules/ndtypes { }; + nebula3-python = callPackage ../development/python-modules/nebula3-python { }; + nengo = callPackage ../development/python-modules/nengo { }; neo = callPackage ../development/python-modules/neo { }; From e1fd64f4e8a7d149972b31d09b20b0bad4de82ea Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 17:07:49 +0100 Subject: [PATCH 16/18] python312Packages.llama-index-graph-stores-nebula: init at 0.1.2 --- .../default.nix | 42 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 44 insertions(+) create mode 100644 pkgs/development/python-modules/llama-index-graph-stores-nebula/default.nix diff --git a/pkgs/development/python-modules/llama-index-graph-stores-nebula/default.nix b/pkgs/development/python-modules/llama-index-graph-stores-nebula/default.nix new file mode 100644 index 000000000000..783ace83f656 --- /dev/null +++ b/pkgs/development/python-modules/llama-index-graph-stores-nebula/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildPythonPackage +, fetchPypi +, llama-index-core +, nebula3-python +, poetry-core +, pythonOlder +}: + +buildPythonPackage rec { + pname = "llama-index-graph-stores-nebula"; + version = "0.1.2"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "llama_index_graph_stores_nebula"; + inherit version; + hash = "sha256-Xb/0ogj2NlGV4MGC9Be54d/JfalT40jtAe6LOPO1u/8="; + }; + + build-system = [ + poetry-core + ]; + + dependencies = [ + llama-index-core + nebula3-python + ]; + + pythonImportsCheck = [ + "llama_index.graph_stores.nebula" + ]; + + meta = with lib; { + description = "LlamaIndex Graph Store Integration for Nebula"; + homepage = "https://github.com/run-llama/llama_index/tree/main/llama-index-integrations/graph_stores/llama-index-graph-stores-nebula"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3a4ee89b7a63..b030a14a79b4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6778,6 +6778,8 @@ self: super: with self; { llama-index-embeddings-openai = callPackage ../development/python-modules/llama-index-embeddings-openai { }; + llama-index-graph-stores-nebula = callPackage ../development/python-modules/llama-index-graph-stores-nebula { }; + llama-index-graph-stores-neo4j = callPackage ../development/python-modules/llama-index-graph-stores-neo4j { }; llama-index-graph-stores-neptune = callPackage ../development/python-modules/llama-index-graph-stores-neptune { }; From 673b5545c10bb19336b4fed4adb846f061045b63 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 17:11:52 +0100 Subject: [PATCH 17/18] python312Packages.manifest-ml: refactor --- .../python-modules/manifest-ml/default.nix | 36 ++++++++++--------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/pkgs/development/python-modules/manifest-ml/default.nix b/pkgs/development/python-modules/manifest-ml/default.nix index 0d3e02ed732c..e6f9cc6b3668 100644 --- a/pkgs/development/python-modules/manifest-ml/default.nix +++ b/pkgs/development/python-modules/manifest-ml/default.nix @@ -1,34 +1,34 @@ { lib +, accelerate +, aiohttp , buildPythonPackage +, fastapi , fetchFromGitHub -, pythonOlder +, flask , numpy +, pg8000 +, pillow , pydantic +, pytestCheckHook +, pythonOlder , redis , requests -, aiohttp +, sentence-transformers +, setuptools +, sqlalchemy , sqlitedict , tenacity , tiktoken -, xxhash -, # optional dependencies - accelerate -, flask -, sentence-transformers , torch , transformers -, fastapi , uvicorn -, pillow -, pg8000 -, sqlalchemy -, pytestCheckHook +, xxhash }: buildPythonPackage rec { pname = "manifest-ml"; version = "0.1.9"; - format = "setuptools"; + pyproject = true; disabled = pythonOlder "3.8"; @@ -41,7 +41,11 @@ buildPythonPackage rec { __darwinAllowLocalNetworking = true; - propagatedBuildInputs = [ + build-system = [ + setuptools + ]; + + dependencies = [ numpy pydantic redis @@ -51,7 +55,7 @@ buildPythonPackage rec { tenacity tiktoken xxhash - ] ++ lib.flatten (lib.attrValues passthru.optional-dependencies); + ]; passthru.optional-dependencies = { api = [ @@ -79,7 +83,7 @@ buildPythonPackage rec { nativeCheckInputs = [ pytestCheckHook - ]; + ] ++ lib.flatten (lib.attrValues passthru.optional-dependencies); preCheck = '' export HOME=$TMPDIR From c0666485e5e29d07401c30f29c70be36e6e3abbb Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 28 Mar 2024 17:16:33 +0100 Subject: [PATCH 18/18] python312Packages.manifest-ml: disable failing tests --- .../python-modules/manifest-ml/default.nix | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/manifest-ml/default.nix b/pkgs/development/python-modules/manifest-ml/default.nix index e6f9cc6b3668..4465066682c9 100644 --- a/pkgs/development/python-modules/manifest-ml/default.nix +++ b/pkgs/development/python-modules/manifest-ml/default.nix @@ -11,6 +11,7 @@ , pydantic , pytestCheckHook , pythonOlder +, pythonRelaxDepsHook , redis , requests , sentence-transformers @@ -41,7 +42,12 @@ buildPythonPackage rec { __darwinAllowLocalNetworking = true; + pythonRelaxDeps = [ + "pydantic" + ]; + build-system = [ + pythonRelaxDepsHook setuptools ]; @@ -95,12 +101,17 @@ buildPythonPackage rec { ]; disabledTests = [ - # these tests have db access + # Tests require DB access "test_init" "test_key_get_and_set" "test_get" - # this test has network access + # Tests require network access + "test_abatch_run" + "test_batch_run" "test_retry_handling" + "test_run_chat" + "test_run" + "test_score_run" # Test is time-senstive "test_timing" ];