diff --git a/pkgs/development/python-modules/mistral-common/default.nix b/pkgs/development/python-modules/mistral-common/default.nix new file mode 100644 index 000000000000..7c438e960d4d --- /dev/null +++ b/pkgs/development/python-modules/mistral-common/default.nix @@ -0,0 +1,57 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + poetry-core, + numpy, + pydantic, + jsonschema, + sentencepiece, + typing-extensions, + tiktoken, + pillow, + requests, +}: + +buildPythonPackage rec { + pname = "mistral-common"; + version = "1.5.2"; + pyproject = true; + + src = fetchPypi { + pname = "mistral_common"; + inherit version; + hash = "sha256-nRFXsTdsSdNav8dD2+AITyyjezpavQPnQSdqG8ZshS8="; + }; + + # relax dependencies + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail 'pillow = "^10.3.0"' 'pillow = ">=10.3.0"' \ + --replace-fail 'tiktoken = "^0.7.0"' 'tiktoken = ">=0.7.0"' \ + ''; + + build-system = [ poetry-core ]; + + dependencies = [ + numpy + pydantic + jsonschema + sentencepiece + typing-extensions + tiktoken + pillow + requests + ]; + + doCheck = true; + + pythonImportsCheck = [ "mistral_common" ]; + + meta = with lib; { + description = "mistral-common is a set of tools to help you work with Mistral models."; + homepage = "https://github.com/mistralai/mistral-common"; + license = licenses.asl20; + maintainers = with maintainers; [ bgamari ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6aef54ccfe51..99936a954b18 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8278,6 +8278,8 @@ self: super: with self; { mistletoe = callPackage ../development/python-modules/mistletoe { }; + mistral-common = callPackage ../development/python-modules/mistral-common { }; + mistune = callPackage ../development/python-modules/mistune { }; mitmproxy = callPackage ../development/python-modules/mitmproxy { };