From 71e8e2148d920ba6a1db6f64e94cf135620c4923 Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Thu, 30 Mar 2023 11:22:07 -0400 Subject: [PATCH 1/2] python310Packages.accelerate: init at 0.18.0 --- .../python-modules/accelerate/default.nix | 74 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 76 insertions(+) create mode 100644 pkgs/development/python-modules/accelerate/default.nix diff --git a/pkgs/development/python-modules/accelerate/default.nix b/pkgs/development/python-modules/accelerate/default.nix new file mode 100644 index 000000000000..be841e9bb4d5 --- /dev/null +++ b/pkgs/development/python-modules/accelerate/default.nix @@ -0,0 +1,74 @@ +{ stdenv +, lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, pytestCheckHook +, setuptools +, numpy +, packaging +, psutil +, pyyaml +, torch +, evaluate +, parameterized +, transformers +}: + +buildPythonPackage rec { + pname = "accelerate"; + version = "0.18.0"; + format = "pyproject"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "huggingface"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-fCIvVbMaWAWzRfPc5/1CZq3gZ8kruuk9wBt8mzLHmyw="; + }; + + nativeBuildInputs = [ setuptools ]; + + propagatedBuildInputs = [ + numpy + packaging + psutil + pyyaml + torch + ]; + + nativeCheckInputs = [ + evaluate + parameterized + pytestCheckHook + transformers + ]; + preCheck = '' + export HOME=$(mktemp -d) + export PATH=$out/bin:$PATH + ''; + pytestFlagsArray = [ "tests" ]; + disabledTests = [ + # try to download data: + "FeatureExamplesTests" + "test_infer_auto_device_map_on_t0pp" + ] ++ lib.optionals (stdenv.isLinux && stdenv.isAarch64) [ + # usual aarch64-linux RuntimeError: DataLoader worker (pid(s) <...>) exited unexpectedly + "CheckpointTest" + ]; + # numerous instances of torch.multiprocessing.spawn.ProcessRaisedException: + doCheck = !stdenv.isDarwin; + pythonImportsCheck = [ + "accelerate" + ]; + + meta = with lib; { + homepage = "https://huggingface.co/docs/accelerate"; + description = "A simple way to train and use PyTorch models with multi-GPU, TPU, mixed-precision"; + changelog = "https://github.com/huggingface/accelerate/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ bcdarwin ]; + mainProgram = "accelerate"; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7ed831a95adf..711758a558c3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -22,6 +22,8 @@ self: super: with self; { accessible-pygments = callPackage ../development/python-modules/accessible-pygments { }; + accelerate = callPackage ../development/python-modules/accelerate { }; + accuweather = callPackage ../development/python-modules/accuweather { }; accupy = callPackage ../development/python-modules/accupy { }; From e4f3b21d4d2e7f0d74df878d98f2f49a47533535 Mon Sep 17 00:00:00 2001 From: Ben Darwin Date: Thu, 30 Mar 2023 11:22:27 -0400 Subject: [PATCH 2/2] python310Packages.peft: init at 0.2.0 --- .../python-modules/peft/default.nix | 54 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 56 insertions(+) create mode 100644 pkgs/development/python-modules/peft/default.nix diff --git a/pkgs/development/python-modules/peft/default.nix b/pkgs/development/python-modules/peft/default.nix new file mode 100644 index 000000000000..24a0fe780643 --- /dev/null +++ b/pkgs/development/python-modules/peft/default.nix @@ -0,0 +1,54 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, pytestCheckHook +, setuptools +, numpy +, packaging +, psutil +, pyyaml +, torch +, transformers +, accelerate +}: + +buildPythonPackage rec { + pname = "peft"; + version = "0.2.0"; + format = "pyproject"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "huggingface"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-NPpY29HMQe5KT0JdlLAXY9MVycDslbP2i38NSTirB3I="; + }; + + nativeBuildInputs = [ setuptools ]; + + propagatedBuildInputs = [ + numpy + packaging + psutil + pyyaml + torch + transformers + accelerate + ]; + + doCheck = false; # tried to download pretrained model + pythonImportsCheck = [ + "peft" + ]; + + meta = with lib; { + homepage = "https://github.com/huggingface/peft"; + description = "State-of-the art parameter-efficient fine tuning"; + changelog = "https://github.com/huggingface/peft/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ bcdarwin ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 711758a558c3..bfb7e9444095 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7119,6 +7119,8 @@ self: super: with self; { pefile = callPackage ../development/python-modules/pefile { }; + peft = callPackage ../development/python-modules/peft { }; + pelican = callPackage ../development/python-modules/pelican { inherit (pkgs) glibcLocales git; };