diff --git a/pkgs/development/python-modules/kserve/default.nix b/pkgs/development/python-modules/kserve/default.nix index bd7125cffe1af..04cde32164969 100644 --- a/pkgs/development/python-modules/kserve/default.nix +++ b/pkgs/development/python-modules/kserve/default.nix @@ -3,6 +3,7 @@ stdenv, buildPythonPackage, fetchFromGitHub, + fetchpatch2, # build-system setuptools, @@ -51,7 +52,7 @@ tomlkit, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "kserve"; version = "0.16.0"; pyproject = true; @@ -59,23 +60,22 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "kserve"; repo = "kserve"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-f6ILZMLxfckEpy7wSgCqUx89JWSnn0DbQiqRSHcQHms="; }; - # Fix vllm 0.12.0 compatibility - # Patch submitted upstream: https://github.com/kserve/kserve/pull/4882 - postPatch = '' - substituteInPlace kserve/protocol/rest/openai/types/__init__.py \ - --replace-fail \ - "from vllm.entrypoints.openai.protocol import EmbeddingRequest, EmbeddingResponse as Embedding, EmbeddingResponseData, EmbeddingCompletionRequest" \ - "from vllm.entrypoints.pooling.embed.protocol import EmbeddingRequest, EmbeddingResponse as Embedding, EmbeddingResponseData, EmbeddingCompletionRequest" \ - --replace-fail \ - "from vllm.entrypoints.openai.protocol import RerankRequest, RerankResponse as Rerank" \ - "from vllm.entrypoints.pooling.score.protocol import RerankRequest, RerankResponse as Rerank" - ''; + patches = [ + # Fix vllm imports in python/kserve/kserve/protocol/rest/openai/types/__init__.py + # Submitted upstream: https://github.com/kserve/kserve/pull/4882 + (fetchpatch2 { + name = "update-vllm-imports-to-fix-compat"; + url = "https://github.com/kserve/kserve/commit/dd1575501e56f588103f448efca684bc54569b81.patch"; + stripLen = 2; + hash = "sha256-K0ImsDADhH6G3R+27nRX/sD7UdRXptYIkLaoxuwB8+M="; + }) + ]; - sourceRoot = "${src.name}/python/kserve"; + sourceRoot = "${finalAttrs.src.name}/python/kserve"; pythonRelaxDeps = [ "fastapi" @@ -142,7 +142,7 @@ buildPythonPackage rec { pytestCheckHook tomlkit ] - ++ lib.concatAttrValues optional-dependencies; + ++ lib.concatAttrValues finalAttrs.passthru.optional-dependencies; pythonImportsCheck = [ "kserve" ]; @@ -205,8 +205,8 @@ buildPythonPackage rec { meta = { description = "Standardized Serverless ML Inference Platform on Kubernetes"; homepage = "https://github.com/kserve/kserve/tree/master/python/kserve"; - changelog = "https://github.com/kserve/kserve/releases/tag/${src.tag}"; + changelog = "https://github.com/kserve/kserve/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ GaetanLepage ]; }; -} +}) diff --git a/pkgs/development/python-modules/vllm/default.nix b/pkgs/development/python-modules/vllm/default.nix index 86b3c493f3357..9cf7eaca36a06 100644 --- a/pkgs/development/python-modules/vllm/default.nix +++ b/pkgs/development/python-modules/vllm/default.nix @@ -133,8 +133,8 @@ let cutlass-flashmla = fetchFromGitHub { owner = "NVIDIA"; repo = "cutlass"; - tag = "v3.9.0"; - hash = "sha256-Q6y/Z6vahASeSsfxvZDwbMFHGx8CnsF90IlveeVLO9g="; + rev = "147f5673d0c1c3dcf66f78d677fd647e4a020219"; + hash = "sha256-dHQto08IwTDOIuFUp9jwm1MWkFi8v2YJ/UESrLuG71g="; }; flashmla = stdenv.mkDerivation { @@ -148,8 +148,8 @@ let name = "FlashMLA-source"; owner = "vllm-project"; repo = "FlashMLA"; - rev = "46d64a8ebef03fa50b4ae74937276a5c940e3f95"; - hash = "sha256-jtMzWB5hKz8mJGsdK6q4YpQbGp9IrQxbwmB3a64DIl0="; + rev = "c2afa9cb93e674d5a9120a170a6da57b89267208"; + hash = "sha256-pKlwxV6G9iHag/jbu3bAyvYvnu5TbrQwUMFV0AlGC3s="; }; dontConfigure = true; @@ -324,14 +324,14 @@ in buildPythonPackage.override { stdenv = torch.stdenv; } (finalAttrs: { pname = "vllm"; - version = "0.14.0"; + version = "0.15.1"; pyproject = true; src = fetchFromGitHub { owner = "vllm-project"; repo = "vllm"; tag = "v${finalAttrs.version}"; - hash = "sha256-gUfEjoNgS/FgSDqQDnDe/onWGigzwkKuPgmdRZHVGn0="; + hash = "sha256-qsAvcOB8ugGlBqBrLfNHqaIUcxLwaXBTg8xWRnGyd94="; }; patches = [