diff options
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/openai-whisper/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/openai-whisper/default.nix | 47 |
1 files changed, 19 insertions, 28 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/openai-whisper/default.nix b/nixpkgs/pkgs/development/python-modules/openai-whisper/default.nix index 68f692e4c37a..7983abd2e985 100644 --- a/nixpkgs/pkgs/development/python-modules/openai-whisper/default.nix +++ b/nixpkgs/pkgs/development/python-modules/openai-whisper/default.nix @@ -2,22 +2,23 @@ , fetchFromGitHub , buildPythonPackage , substituteAll -, cudaSupport ? false + +# build-system +, setuptools # runtime , ffmpeg-headless # propagates -, numpy -, torch -, torchWithCuda -, tqdm , more-itertools -, transformers , numba +, numpy , openai-triton , scipy , tiktoken +, torch +, tqdm +, transformers # tests , pytestCheckHook @@ -25,14 +26,14 @@ buildPythonPackage rec { pname = "whisper"; - version = "20230918"; - format = "setuptools"; + version = "20231117"; + pyproject = true; src = fetchFromGitHub { owner = "openai"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-wBAanFVEIIzTcoX40P9eI26UdEu0SC/xuife/zi2Xho="; + hash = "sha256-MJ1XjB/GuYUiECCuuHS0NWHvvs+ko0oTvLuDI7zLNiY="; }; patches = [ @@ -42,32 +43,22 @@ buildPythonPackage rec { }) ]; + nativeBuildInputs = [ + setuptools + ]; + propagatedBuildInputs = [ - numpy - tqdm more-itertools - transformers numba + numpy + openai-triton scipy tiktoken - ] ++ lib.optionals (!cudaSupport) [ torch - ] ++ lib.optionals (cudaSupport) [ - openai-triton - torchWithCuda + tqdm + transformers ]; - postPatch = '' - substituteInPlace requirements.txt \ - --replace "tiktoken==0.3.3" "tiktoken>=0.3.3" - '' - # openai-triton is only needed for CUDA support. - # triton needs CUDA to be build. - # -> by making it optional, we can build whisper without unfree packages enabled - + lib.optionalString (!cudaSupport) '' - sed -i '/if sys.platform.startswith("linux") and platform.machine() == "x86_64":/{N;d}' setup.py - ''; - preCheck = '' export HOME=$TMPDIR ''; @@ -85,7 +76,7 @@ buildPythonPackage rec { ]; meta = with lib; { - changelog = "https://github.com/openai/whisper/blob/v$[version}/CHANGELOG.md"; + changelog = "https://github.com/openai/whisper/blob/v${version}/CHANGELOG.md"; description = "General-purpose speech recognition model"; homepage = "https://github.com/openai/whisper"; license = licenses.mit; |