From 249bd9d260ce15477af42e63b4fb0ebdbb1100e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20P=2E=20D=C3=BCrholt?= Date: Tue, 11 Nov 2025 14:28:00 +0100 Subject: [PATCH] prevent warning --- botorch/models/deterministic.py | 6 ++++++ test/models/test_deterministic.py | 11 +++-------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/botorch/models/deterministic.py b/botorch/models/deterministic.py index 15252a405d..acf04bee2d 100644 --- a/botorch/models/deterministic.py +++ b/botorch/models/deterministic.py @@ -40,6 +40,12 @@ class DeterministicModel(EnsembleModel): """Abstract base class for deterministic models.""" + def _set_transformed_inputs(self): + """Overwrites the parent method to prevent raise of + warning "Could not update `train_inputs` with transformed inputs." + """ + return None + @abstractmethod def forward(self, X: Tensor) -> Tensor: r"""Compute the (deterministic) model output at X. diff --git a/test/models/test_deterministic.py b/test/models/test_deterministic.py index 8b8ebe20c2..b9d785ad84 100644 --- a/test/models/test_deterministic.py +++ b/test/models/test_deterministic.py @@ -4,7 +4,6 @@ # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. -import warnings import torch from botorch.acquisition.objective import ScalarizedPosteriorTransform @@ -149,15 +148,11 @@ def test_with_transforms(self): # check that the posterior output agrees with the manually transformed one test_X = torch.rand(3, dim) expected_Y, _ = octf.untransform(model.forward(intf(test_X))) - with warnings.catch_warnings(record=True) as ws: - posterior = model.posterior(test_X) - msg = "does not have a `train_inputs` attribute" - self.assertTrue(any(msg in str(w.message) for w in ws)) + posterior = model.posterior(test_X) self.assertAllClose(expected_Y, posterior.mean) - # check that model.train/eval works and raises the warning + # check that model.train/eval works model.train() - with self.assertWarns(RuntimeWarning): - model.eval() + model.eval() def test_posterior_transform(self): def f(X):