diff --git a/pkgs/development/python-modules/snorkel/default.nix b/pkgs/development/python-modules/snorkel/default.nix new file mode 100644 index 000000000000..6e918c2f9145 --- /dev/null +++ b/pkgs/development/python-modules/snorkel/default.nix @@ -0,0 +1,69 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, tensorboard +, scipy +, tqdm +, scikit-learn +, munkres +, networkx +, torch +, pandas +# test dependencies +, pytestCheckHook +, spacy +, pyspark +, dill +, dask +, spacy_models +}: +let + pname = "snorkel"; + version = "0.9.9"; +in +buildPythonPackage { + inherit pname version; + format = "setuptools"; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "snorkel-team"; + repo = pname; + rev = "v${version}"; + hash = "sha256-IDWYvblS0Q8ubuHzgIc7fU/gwpJ43Dd7VMWycMfAJxc="; + }; + + propagatedBuildInputs = [ + tensorboard + scipy + tqdm + scikit-learn + munkres + networkx + torch + pandas + ]; + + # test fail because of some wrong path references + # things like No such file or directory: '/nix/store/8r9x7xv9nfwmd36ca28a39xaharcjdzj-python3.10-pyspark-3.4.0/lib/python3.10/site-packages/pyspark/./bin/spark-submit' + doCheck = false; + + nativeCheckInputs = [ + pytestCheckHook + spacy + pyspark + dill + dask + spacy_models.en_core_web_sm + ] ++ dask.optional-dependencies.distributed; + + meta = with lib; { + description = "A system for quickly generating training data with weak supervision"; + homepage = "https://github.com/snorkel-team/snorkel"; + changelog = "https://github.com/snorkel/snorkel/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ happysalada ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b8b19c3784f1..10c288d67b0a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11386,6 +11386,8 @@ self: super: with self; { snitun = callPackage ../development/python-modules/snitun { }; + snorkel = callPackage ../development/python-modules/snorkel { }; + snowballstemmer = callPackage ../development/python-modules/snowballstemmer { }; snowflake-connector-python = callPackage ../development/python-modules/snowflake-connector-python { };