depot/third_party/nixpkgs/pkgs/development/python-modules/numpyro/default.nix

83 lines
1.8 KiB
Nix
Raw Normal View History

{ lib
, buildPythonPackage
, pythonOlder
, fetchPypi
, jax
, jaxlib
, multipledispatch
, numpy
, tqdm
, funsor
, pytestCheckHook
# TODO: uncomment when tensorflow-probability gets fixed.
# , tensorflow-probability
}:
buildPythonPackage rec {
pname = "numpyro";
version = "0.13.2";
format = "setuptools";
disabled = pythonOlder "3.9";
src = fetchPypi {
inherit version pname;
hash = "sha256-Um8LFVGAlMeOaN9uMwycHJzqEnTaxp8FYXIk+m2VTug=";
};
propagatedBuildInputs = [
jax
jaxlib
multipledispatch
numpy
tqdm
];
nativeCheckInputs = [
funsor
pytestCheckHook
# TODO: uncomment when tensorflow-probability gets fixed.
# tensorflow-probability
];
pythonImportsCheck = [
"numpyro"
];
disabledTests = [
# AssertionError due to tolerance issues
"test_beta_binomial_log_prob"
"test_collapse_beta"
"test_cpu"
"test_gamma_poisson"
"test_gof"
"test_hpdi"
"test_kl_dirichlet_dirichlet"
"test_kl_univariate"
"test_mean_var"
# Tests want to download data
"data_load"
"test_jsb_chorales"
# RuntimeWarning: overflow encountered in cast
"test_zero_inflated_logits_probs_agree"
# NameError: unbound axis name: _provenance
"test_model_transformation"
# Using deprecated (removed in jax==0.4.24) jax.core.safe_map
# https://github.com/pyro-ppl/numpyro/issues/1733
"test_beta_bernoulli"
];
# TODO: remove when tensorflow-probability gets fixed.
disabledTestPaths = [
"test/test_distributions.py"
];
meta = with lib; {
description = "Library for probabilistic programming with NumPy";
homepage = "https://num.pyro.ai/";
changelog = "https://github.com/pyro-ppl/numpyro/releases/tag/${version}";
license = licenses.asl20;
maintainers = with maintainers; [ fab ];
};
}