Skip to content

Conversation

@saitcakmak
Copy link
Contributor

@saitcakmak saitcakmak commented Mar 12, 2025

Summary:

  • Merges DiscreteMaxValueBase into MaxValueBase. An abstract base class that only has one subclass, which is also an abstract base class, doesn't really provide much value and creates unreachable code that can only be tested by defining dummy subclasses.
  • Adds an explicit error when multi-output models are used. Both batched SingleTaskGP and ModelListGP would error out with different reasons. I suspect the underlying code supports it but e2e support needs some modifications.
  • Errors out if expand is provided to qMultiFidelityLowerBoundMaxValueEntropy. It produces outputs of wrong shape, which points to some missing handling of the different tensor shapes within the underlying code.
  • Adds a very basic test for expand with qMultiFidelityMaxValueEntropy, which produces output of correct shape.
  • Updates tests to use actual models rather than mock models. Testing that some functionality (like multi-output model support) works with a mock model doesn't actually mean it works. We should be using mock models a lot more sparingly in tests.

Differential Revision: D71051750

@facebook-github-bot facebook-github-bot added the CLA Signed Do not delete this pull request or issue due to inactivity. label Mar 12, 2025
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D71051750

@codecov
Copy link

codecov bot commented Mar 12, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 99.99%. Comparing base (641b16f) to head (c773094).
Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2769      +/-   ##
==========================================
- Coverage   99.99%   99.99%   -0.01%     
==========================================
  Files         202      202              
  Lines       18506    18495      -11     
==========================================
- Hits        18505    18494      -11     
  Misses          1        1              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

saitcakmak added a commit to saitcakmak/botorch that referenced this pull request Mar 13, 2025
Summary:

- Merges `DiscreteMaxValueBase` into `MaxValueBase`. An abstract base class that only has one subclass, which is also an abstract base class, doesn't really provide much value and creates unreachable code that can only be tested by defining dummy subclasses.
- Adds an explicit error when multi-output models are used. Both batched `SingleTaskGP` and `ModelListGP` would error out with different reasons. I suspect the underlying code supports it but e2e support needs some modifications.
- Errors out if `expand` is provided to `qMultiFidelityLowerBoundMaxValueEntropy`. It produces outputs of wrong shape, which points to some missing handling of the different tensor shapes within the underlying code.
- Adds a very basic test for `expand` with `qMultiFidelityMaxValueEntropy`, which produces output of correct shape.
- Updates tests to use actual models rather than mock models. Testing that some functionality (like multi-output model support) works with a mock model doesn't actually mean it works. We should be using mock models a lot more sparingly in tests.

Differential Revision: D71051750
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D71051750

Summary:

- Merges `DiscreteMaxValueBase` into `MaxValueBase`. An abstract base class that only has one subclass, which is also an abstract base class, doesn't really provide much value and creates unreachable code that can only be tested by defining dummy subclasses.
- Adds an explicit error when multi-output models are used. Both batched `SingleTaskGP` and `ModelListGP` would error out with different reasons. I suspect the underlying code supports it but e2e support needs some modifications.
- Errors out if `expand` is provided to `qMultiFidelityLowerBoundMaxValueEntropy`. It produces outputs of wrong shape, which points to some missing handling of the different tensor shapes within the underlying code.
- Adds a very basic test for `expand` with `qMultiFidelityMaxValueEntropy`, which produces output of correct shape.
- Updates tests to use actual models rather than mock models. Testing that some functionality (like multi-output model support) works with a mock model doesn't actually mean it works. We should be using mock models a lot more sparingly in tests.

Reviewed By: esantorella

Differential Revision: D71051750
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D71051750

@facebook-github-bot
Copy link
Contributor

This pull request has been merged in 3dc2838.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed Do not delete this pull request or issue due to inactivity. fb-exported Merged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants