Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
2.0 kB · 87 lines
Nix
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788{ lib, stdenv, buildPythonPackage, fetchFromGitHub, gpytorch, linear-operator, multipledispatch, pyre-extensions, pyro-ppl, setuptools, setuptools-scm, torch, scipy, pytestCheckHook, pythonAtLeast,}:
buildPythonPackage rec { pname = "botorch"; version = "0.14.0"; pyproject = true;
src = fetchFromGitHub { owner = "pytorch"; repo = "botorch"; tag = "v${version}"; hash = "sha256-IyRi5kXePnDv2q6SrXLtdltQ1/2/zQ3EBx5phtuX8sE="; };
build-system = [ setuptools setuptools-scm ];
dependencies = [ gpytorch linear-operator multipledispatch pyre-extensions pyro-ppl scipy torch ];
nativeCheckInputs = [ pytestCheckHook ];
disabledTests = [ "test_all_cases_covered"
# Skip tests that take too much time "TestQMultiObjectivePredictiveEntropySearch" "TestQPredictiveEntropySearch" ] ++ lib.optionals (pythonAtLeast "3.13") [ # RuntimeError: Boolean value of Tensor with more than one value is ambiguous "test_optimize_acqf_mixed_binary_only" ] ++ lib.optionals (stdenv.buildPlatform.system == "x86_64-linux") [ # stuck tests on hydra "test_moo_predictive_entropy_search" ] ++ lib.optionals (stdenv.hostPlatform.isDarwin) [ # RuntimeError: required keyword attribute 'value' has the wrong type "test_posterior_in_trace_mode" ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ # Numerical error slightly above threshold # AssertionError: Tensor-likes are not close! "test_model_list_gpytorch_model" ];
pythonImportsCheck = [ "botorch" ];
# needs lots of undisturbed CPU time or prone to getting stuck requiredSystemFeatures = [ "big-parallel" ];
meta = { changelog = "https://github.com/pytorch/botorch/blob/${src.tag}/CHANGELOG.md"; description = "Bayesian Optimization in PyTorch"; homepage = "https://botorch.org"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ veprbl ]; };}