Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
329 commits
Select commit Hold shift + click to select a range
a1c7ca4
New ExperimentData container (for modeling layer) (#3851)
saitcakmak Jun 4, 2025
13ffa1f
Eliminate duplicate underscore in OneHot encoded parameter names (#3858)
saitcakmak Jun 4, 2025
e0414d1
Use existing data type instead of default one when joining Data objec…
Cesar-Cardoso Jun 4, 2025
993e7c5
Refactor auxiliary experiment storage (again) (#3829)
Cesar-Cardoso Jun 4, 2025
2978542
Add metadata to ExperimentData (#3852)
saitcakmak Jun 4, 2025
45d20f4
CenterGenerationNode: Fallback to Sobol if center is infeasible (#3863)
saitcakmak Jun 4, 2025
8b01aef
Fixing incompatible device in client.compute_analyses (#3839)
VMLC-PV Jun 4, 2025
7f2f50c
Update Trial Status Filtering in Plots (#3854)
eonofrey Jun 4, 2025
6af7667
Color constant addition (#3869)
Jun 4, 2025
82583c3
Adding auxiliary experiment methods to Experiment class (#3861)
ItsMrLin Jun 4, 2025
f55e8f6
Typo in `FAILURE_EXCEEDED_MSG` (#3870)
SebastianAment Jun 5, 2025
9265698
Rename gen to gen_single_trial (#3844)
mgarrard Jun 5, 2025
ed722e9
rename gen_for_multiple_trials_with_mulitple_nodes to gen (#3846)
mgarrard Jun 5, 2025
ecd3d92
Add ExperimentData input to Transform constructors (#3856)
saitcakmak Jun 5, 2025
5278d95
Implement IntToFloat.transform_experiment_data (#3871)
saitcakmak Jun 5, 2025
cd1c014
Implement Log.transform_experiment_data (#3872)
saitcakmak Jun 5, 2025
b61a289
Changes throughtout to reflect addition of color constants (#3877)
Jun 5, 2025
d7a6d9a
Deprecate `no_bayesian_optimization` (#3857)
bernardbeckerman Jun 5, 2025
ead3731
Addressing strange status quo dotted line on Scatter (#3884)
Jun 5, 2025
1948b46
Implement RemoveFixed.transform_experiment_data (#3873)
saitcakmak Jun 5, 2025
2028304
Implement ChoiceToNumericChoice.transform_experiment_data (#3874)
saitcakmak Jun 5, 2025
2a9ab7f
Implement FillMissingParameters.transform_experiment_data (#3875)
saitcakmak Jun 6, 2025
9983105
Implement Logit.transform_experiment_data (#3876)
saitcakmak Jun 6, 2025
f1daf09
Implement OneHot.transform_experiment_data (#3886)
saitcakmak Jun 6, 2025
0593421
Speed up sensitivity analyses by using batch dimension (#3891)
esantorella Jun 6, 2025
fd3adb7
Remove unused arguments from `SobolSensitivityGPMean` (#3892)
esantorella Jun 6, 2025
9d151bf
Implement BilogY.transform_experiment_data (#3887)
saitcakmak Jun 6, 2025
a8e35ac
Implement UnitX.transform_experiment_data (#3888)
saitcakmak Jun 6, 2025
2d433d2
Re-enable slow sensitivity plot tests (#3893)
esantorella Jun 7, 2025
dbf7bef
Sort experiment data by trial_index, arm_name, and metrics (#3885)
andycylmeta Jun 7, 2025
6bdc4d9
Always create new docusaurus version, only keep latest patch fo… (#3898)
CristianLara Jun 9, 2025
b2c7eb2
Fix showing the whole dataframe on 1 point when hovering
andycylmeta Jun 10, 2025
f59d328
add attribute for AF on BoTorchGenerator (#3883)
sdaulton Jun 10, 2025
7050f8a
Remove SearchSpaceToFloat transform (#3897)
saitcakmak Jun 10, 2025
ba1e644
Use mini batches in Sobol sensitivity analysis (#3904)
saitcakmak Jun 10, 2025
dee8e55
Always use model predictions, not empirical best, for best-point (#3894)
esantorella Jun 10, 2025
e6a0d82
Remove IVW transform from Y_trans (#3900)
saitcakmak Jun 10, 2025
ac4e718
Implement StandardizeY.transform_experiment_data (#3889)
saitcakmak Jun 11, 2025
4b2b2a6
Implement Winsorize.transform_experiment_data (#3890)
saitcakmak Jun 11, 2025
41b1a3e
Implement SearchSpaceToChoice.transform_experiment_data (#3896)
saitcakmak Jun 11, 2025
0f9d673
Implement TrialAsTask.transform_experiment_data (#3902)
saitcakmak Jun 11, 2025
42132f9
MapKeyToFloat Transform Client API integration tests (#3907)
ltiao Jun 11, 2025
8e86f36
PreferenceOptimizationConfig (#3906)
ItsMrLin Jun 11, 2025
f88710c
Fix transforms used in get_tensor_converter_adapter (#3908)
saitcakmak Jun 11, 2025
dd57506
Fix unused code in _relativize_values (#3909)
saitcakmak Jun 11, 2025
cefb3b7
Fix ArmEffectsPlot x-label overlay + sorting issue (#3901)
andycylmeta Jun 12, 2025
87548dd
support warped SAAS model in dispatch (#3903)
sdaulton Jun 12, 2025
652d798
Make model-registry-base easier to make child classes (#3895)
CompRhys Jun 13, 2025
dc699d0
Fix overlapping Xlabel and legends in ArmEffect (#3915)
andycylmeta Jun 13, 2025
eb1a811
Use optimize_acqf_mixed_alternating for categorical paramters (#3918)
Balandat Jun 13, 2025
4fc2ed9
implement Relativize.transform_experiment_data (#3916)
saitcakmak Jun 13, 2025
636dffd
Use mini batches in predict_from_model (#3912)
saitcakmak Jun 13, 2025
8975577
Do not unsqueeze X when evaluating posterior in Sobol sensitivity (#3…
saitcakmak Jun 13, 2025
4ac27d6
Implement TransformToNewSQ.transform_experiment_data (#3917)
saitcakmak Jun 13, 2025
5cf01dd
Remove n_points > 1 option from best-point selector
esantorella Jun 13, 2025
6444317
Allow BenchmarkMethod.get_best_parameters to return None if there is …
esantorella Jun 13, 2025
c8471c3
Update MetadataToFloat tests to use an actual experiment (#3921)
saitcakmak Jun 13, 2025
ed7af13
Update MapKeyToFloat transfrom tests to use data from an actual exper…
saitcakmak Jun 14, 2025
f41b19e
Remove a redundant error for MOO in `BenchmarkMethod.get_best_paramet…
esantorella Jun 15, 2025
ec8902e
Remove `optimization_config` as argument from `BenchmarkMethod.get_be…
esantorella Jun 15, 2025
28ad3d6
Move `get_best_parameters` off of `BenchmarkMethod` (#3925)
esantorella Jun 15, 2025
527a13f
WIP - Validate that all fb experiments have owners when saving (#3511)
eonofrey Jun 16, 2025
fe4a74d
Support ExperimentData in MetadataToFloat & MapKeyToFloat transforms
saitcakmak Jun 16, 2025
6a953d0
Add names to SAAS model configs (#3910)
bletham Jun 16, 2025
3a37c33
Refactor surrogate CV to support data fission (#3911)
bletham Jun 16, 2025
affb85b
Implement StratifiedStandardizeY.transform_experiment_data (#3920)
saitcakmak Jun 16, 2025
383240c
Fix edge cases with no / single point initialization in choose_GS (#3…
saitcakmak Jun 17, 2025
250698a
Update Client.predict to return SEM not variance (#3940)
saitcakmak Jun 17, 2025
6e36d08
Remove unused _raise_deprecation_warning (#3943)
saitcakmak Jun 17, 2025
d0eaa1b
AnalysisTree refactor (#3882)
Cesar-Cardoso Jun 18, 2025
d27c726
Add storage for AnalysisCardBase (#3938)
Cesar-Cardoso Jun 18, 2025
ba5e032
Move AnalyisCardBase and children to their own module in ax/analysis …
Cesar-Cardoso Jun 18, 2025
914a1e9
Add helper for creating error cards (#3881)
Cesar-Cardoso Jun 18, 2025
35c94df
Add str helper method on AnalysisCardBase (#3880)
Cesar-Cardoso Jun 18, 2025
46cb9c1
OverviewAnalysis (#3937)
Cesar-Cardoso Jun 18, 2025
1fb946a
Add HealthChecks to OverviewAnalysis (#3939)
Cesar-Cardoso Jun 18, 2025
ee38231
Fix for better code formatting (#3944)
Jun 18, 2025
2ed6274
Implement Cast.transform_experiment_data (#3935)
saitcakmak Jun 18, 2025
e13f439
Reduce mocking in DiscreteAdapter tests (#3945)
saitcakmak Jun 18, 2025
8860d8b
Add helper for extracting list[Observation] from ExperimentData (#3948)
saitcakmak Jun 21, 2025
d1fd82f
Consolidate DataRequiredError handling in transforms (#3950)
saitcakmak Jun 21, 2025
c3d016a
Add botorch modular registry for custom mll (#3953)
bletham Jun 24, 2025
c9bfe02
relativize by default in ResultsAnalysis and improve tests (#3951)
sdaulton Jun 24, 2025
023d096
fix spelling error (#3952)
sdaulton Jun 24, 2025
41160fc
Delete redundant variable assignment (#3955)
ltiao Jun 24, 2025
6236133
Use Ax API in AxSearcher (#3776)
mpolson64 Jun 24, 2025
f3c5506
Implementation of complete_batch_trial and attach_batch_data (#3956)
Jun 24, 2025
7a20898
Code modularization for BatchTrial instanaces (#3957)
Jun 24, 2025
c3ce127
Change tensor shapes in unit tests so that stricter equality checks p…
esantorella Jun 24, 2025
e56e9a6
remove parallel coordinates from fbcode dispatch until fixed (#3961)
mgarrard Jun 24, 2025
a960972
Merge `AxTorchTestCaseMixin` into `TestCase` (#3962)
esantorella Jun 25, 2025
321964f
Use `assertAllClose` in test cases (#3960)
esantorella Jun 25, 2025
f89efd1
Reduce mocking in Derelativize transform tests (#3958)
saitcakmak Jun 25, 2025
ae43108
Update get_branin_data_multi_objective to return data for specified o…
saitcakmak Jun 25, 2025
4a3a2aa
Add a function for getting augmented Branin BenchmarkProblem (#3969)
esantorella Jun 25, 2025
7dff0c8
Raise exception when `BatchTrial` is passed to `BaseEarlyStoppingStra…
SebastianAment Jun 25, 2025
4750216
Support loading all objectives in `BaseEarlyStoppingStrategy` (#3966)
SebastianAment Jun 25, 2025
9dcf9aa
Allow for best-point predictions in MF/MT settings (#3970)
esantorella Jun 25, 2025
832d22d
Allow loading of learning curves with NaNs and Infs in `TensorboardMe…
SebastianAment Jun 26, 2025
c712c28
check that overview analysis does not error out for offline experimen…
sdaulton Jun 26, 2025
a9ac20d
Multi-objective branin test experiments with map-metrics (#3968)
SebastianAment Jun 26, 2025
c002c69
fix f-string typo (#3972)
SamuelGabriel Jun 27, 2025
b646b2c
Implementation for generation strategy (#3973)
Jun 27, 2025
0b63ca5
Refactor MapKeyToFloat Transform Client API integration tests (#3976)
ltiao Jun 27, 2025
f3fbbdb
fetch_data implementation (#3977)
Jun 28, 2025
ae9bb13
Enable default use of map keys representing with contextual progressi…
ltiao Jun 30, 2025
54dbae7
Reduce mocking in tile_fitted tests (#3964)
saitcakmak Jun 30, 2025
dfda621
Toggle default to incorporate incompleted map metrics (#3978)
ltiao Jun 30, 2025
f6a492b
Refactor for get_metrics (#3985)
Jul 2, 2025
5b4687b
Change Default Continuous Optimization Hyper-Parameters (#3965)
SamuelGabriel Jul 2, 2025
9bfe005
Replace PairwiseAdapter with TorchAdapter (#3986)
ItsMrLin Jul 2, 2025
4cd5ace
Improve sanitization of metric names in API (#3990)
mpolson64 Jul 3, 2025
cc7b68f
Tutorial Updates to inlude fetch and run (#3994)
Jul 3, 2025
ccbb01a
Sanitize colon away from metric names (#3991)
mpolson64 Jul 3, 2025
6cb6c85
Clean up ax service logging loose end (#3995)
bletham Jul 3, 2025
fe8c467
Testing `_is_row_feasible` with missing data (#3996)
SebastianAment Jul 7, 2025
066d665
Refactor & Extend Plot Relativization Logic (#3987)
eonofrey Jul 7, 2025
bd79b4d
Refactor & Extend Plot Relativization Logic (#3988)
eonofrey Jul 7, 2025
2915726
Silence sort_values warnings in parameter_from_config (#3997)
saitcakmak Jul 7, 2025
101d080
Make higher-dimension embedding explicit, restrict it to BoTorch prob…
esantorella Jul 7, 2025
64b33a2
Fix broken test (#3983)
esantorella Jul 7, 2025
12da0d5
Construct benchmark tracking variables after optimization loop (#3979)
esantorella Jul 7, 2025
b05b916
Move test for `BenchmarkResult` to new module for `BenchmarkResult` t…
esantorella Jul 7, 2025
db23329
Pull out function that produces an `Experiment` from `benchmark_repli…
esantorella Jul 7, 2025
939518a
Update MergeRepeatedMeasurements to use arm name rather than hash (#3…
saitcakmak Jul 7, 2025
0b10ca1
Add display_cards back to Analysis module (#3998)
mpolson64 Jul 7, 2025
d9f33d2
Add `display` to AnalysisBase (#3999)
mpolson64 Jul 7, 2025
cb27b40
Removing dead code in failure rate checking (#4000)
SebastianAment Jul 7, 2025
1d0c37e
Combine Data and BaseData (#4005)
esantorella Jul 8, 2025
41db4f1
Resolve inconsistent override in MinimumTrialsInStatus transition cri…
bernardbeckerman Jul 8, 2025
14db59f
Update website documentation (#4001)
CristianLara Jul 8, 2025
e59b43f
Remove unused `Data.df_hash` and `Data.get_filtered_results` (#4007)
esantorella Jul 8, 2025
34164f6
Remove unused Data method 'from_fidelity_evaluation', and associated …
esantorella Jul 8, 2025
8e521c7
Remove unused `set_single_trial` (#4009)
esantorella Jul 8, 2025
dc4b2e2
Remove `TFidelityTrialEvaluation`; typing improvements (#4010)
esantorella Jul 8, 2025
c9cf1c6
Require mean and sem on MapData (#4016)
esantorella Jul 8, 2025
ec6196b
Create MarginalEffectsPlot Analysis (#3974)
eonofrey Jul 9, 2025
bdd21bd
Support ExperimentData in MergeRepeatedMeasurements transform (#3982)
saitcakmak Jul 9, 2025
41b4f7e
Removing ineffectual pyre-ignores (#4022)
SebastianAment Jul 9, 2025
8d581fe
Add option to raise errors when `Parameter.validate` is `False` (#4020)
SebastianAment Jul 10, 2025
c334754
Dont use plotly utilities to calculate constraints feasibility (#4017)
mpolson64 Jul 10, 2025
57db0e3
Remove unused utilities (#4018)
mpolson64 Jul 10, 2025
c3c6aa9
Move all color constants to color_constants (#4019)
mpolson64 Jul 10, 2025
c024e1a
add warning to delete_generation_strategy (#4024)
sdaulton Jul 10, 2025
e0ba254
Prevent loading analysis_cards along with Experiment (#4025)
mpolson64 Jul 11, 2025
ebf8ef2
Adding remove_tracking_metric handle (#4026)
Jul 11, 2025
117e565
Add relativization to Insights, TopSurfaces (#4029)
eonofrey Jul 11, 2025
216f3ed
Remove subclasses of Analysis (#4006)
mpolson64 Jul 11, 2025
8bf6ba9
Add title, subtitle to AnalysisCardGroups (#4011)
mpolson64 Jul 11, 2025
9cb84a5
Render AnalysisCardGroup title, subtitle in notebooks (#4014)
mpolson64 Jul 11, 2025
5f4fbd2
Use OverviewAnalysis (instead of _choose_analyses) in Client (#4013)
mpolson64 Jul 11, 2025
53b61c4
Do not flatten in compute_analyses (#4015)
mpolson64 Jul 11, 2025
8c8a12f
Delete choose_analyses (#4012)
mpolson64 Jul 11, 2025
ae41fce
Faster plotly render (#4023)
mpolson64 Jul 11, 2025
38c42ce
Allow for importing "save_analysis_card" to fail in non sqlalchemy en…
mgrange1998 Jul 11, 2025
8c4c7eb
Remove log & logit-scale options from MapKeyToFloat / MetadataToFloat…
saitcakmak Jul 11, 2025
7f394b5
Update AnalysisCardGroup Titles and Subtitles
mpolson64 Jul 11, 2025
d51f6e0
Update Search Space Analysis Warning wording (#4033)
bernardbeckerman Jul 14, 2025
af00cfd
fix sensitivity collision (#4034)
mgarrard Jul 14, 2025
80353f0
Move subtitle to expandable, style updates (#4035)
CristianLara Jul 15, 2025
30bb0c4
be explicit about task feature in TL (#4021)
sdaulton Jul 15, 2025
522dbe6
Fix regex in _sanitize_name (#4036)
mpolson64 Jul 15, 2025
c135ec7
don't clamp small noise values (#4039)
sdaulton Jul 16, 2025
5add8ee
Deprecate GPBased ESS classes (#4037)
saitcakmak Jul 16, 2025
7328c42
Filter Trials for Sampled Points on Plots (#4038)
eonofrey Jul 16, 2025
df8f0c9
Refactor `constraint_from_str` (#4032)
SebastianAment Jul 16, 2025
4e587d4
Add "quality" method to configure_generation_strategy (#4042)
mpolson64 Jul 16, 2025
1a053d4
filter for unique rows in _get_shared_rows (#4040)
sdaulton Jul 17, 2025
da222b1
Fix repitition in analyses view in bento (#4041)
mgarrard Jul 17, 2025
1822b91
Refactor data-loading for LCBench surrogate benchmark problem (#3634)
ltiao Jul 17, 2025
e9628dc
Add title/subtitle for `MarginalEffectsPlot` (#4047)
eonofrey Jul 18, 2025
e28399c
Add MarginalEffectsPlot and BanditRollout to init (#4046)
eonofrey Jul 18, 2025
42c45d0
fix bug in pfeasible computation (#4048)
sdaulton Jul 18, 2025
f7e954c
Refactor of MultiTask / FullyBayesianMultiTaskGP to use ProductKernel…
Jul 18, 2025
bed7da0
address feedback from previous diff (#4049)
sdaulton Jul 18, 2025
076e4b9
Apply `rounding_func` when using `HitAndRunPolytopeSampler` fallback …
Balandat Jul 21, 2025
78617a5
change batch limit back to 5 to be safe (#4052)
SamuelGabriel Jul 21, 2025
dfa031b
Correct typo in title for MarginalEffectsPlot (#4053)
eonofrey Jul 21, 2025
9103576
Rename default map key of _APIMetric to "step" for consistency (#4054)
saitcakmak Jul 21, 2025
2693cac
Add ExperimentData.metric_names property (#4055)
saitcakmak Jul 21, 2025
d9ada7c
Remove old import paths/files moved from ax/adapter to ax/generation_…
saitcakmak Jul 21, 2025
55ee051
Changes to enable benchmarking with PFNs within Ax (#4003)
SamuelGabriel Jul 21, 2025
41eea2c
Trial-level analyses (#4051)
Cesar-Cardoso Jul 22, 2025
fb07e3b
Select properties fields when cloning Experiments (#4057)
eonofrey Jul 22, 2025
f1441ff
Fix for the map key error when using BatchClient for experiments that…
Jul 23, 2025
00dd220
Remove unused factory functions (#4060)
saitcakmak Jul 24, 2025
939a860
Let `is_row_feasible` return None for any row whose feasibilitity can…
SebastianAment Jul 24, 2025
0e13402
xgboost surrogate models on MNIST (#4061)
kayween Jul 24, 2025
230a6b1
Update discrete_dims input to optimize_acqf_mixed_alternating for com…
saitcakmak Jul 25, 2025
23af0a3
include additional arms in scatter/arm effects plots (#4063)
sdaulton Jul 25, 2025
bb2089b
support plotting p(feasible) in ScatterPlot and ArmEffectsPlot (#4064)
sdaulton Jul 25, 2025
e31f130
Actually save the GS to db after candidate generation (#4066)
saitcakmak Jul 25, 2025
0b42598
Make GS a required input in WithDBSettingsBase._save_generation_strat…
saitcakmak Jul 26, 2025
b5eb4b5
Update group wording (#4068)
mgarrard Jul 28, 2025
708ace0
Update syntax of calls to `optimize_acqf_mixed_alternating` (#4069)
esantorella Jul 29, 2025
adfa5f4
MultiAcquisition (#4074)
sdaulton Jul 30, 2025
619de66
Support additional metadata columns in ExperimentData.observation_dat…
saitcakmak Jul 30, 2025
16942c7
Support ExperimentData in TimeAsFeature transform (#4072)
saitcakmak Jul 30, 2025
49bae6a
Fix Relativize.transform_experiment_data (#4075)
saitcakmak Jul 30, 2025
4a8e400
add new Key for Ax Acquisition kwargs (#4077)
sdaulton Jul 30, 2025
46efb79
Minor update to use built-in method `.timestamp()` to improve readabi…
ltiao Jul 30, 2025
32255b2
T231841440 : Remove trace hover in contour plot (#4079)
shrutipatel31 Jul 30, 2025
9fed015
fix input constructor for LogProbabilityOfFeasibility (#4080)
sdaulton Jul 31, 2025
e1acfe1
Guard against missing dataframes during notebook conversion (#4085)
CristianLara Jul 31, 2025
fa26286
Updating ax.dev code snippet to reflect tutorial (#4088)
mgrange1998 Jul 31, 2025
680a977
Updates to configure_optimization in BatchClient for better quality o…
Jul 31, 2025
23a7508
Fix TransformToNewSQ.transform_experiment_data (#4081)
saitcakmak Aug 1, 2025
51c4320
Fix FillMissingParameters.transform_experiment_data (#4082)
saitcakmak Aug 1, 2025
911baf6
Update ExperimentData.convert_to_list_of_observations to support map …
saitcakmak Aug 1, 2025
888dcaa
add Analysis card for the objective vs p_feasible frontier (#4083)
sdaulton Aug 1, 2025
e2bc79e
Fixing dead code sleep statement in orchestrator _sleep_if_too_early_…
mgrange1998 Aug 1, 2025
58f6974
add obj-pfeas plot to ResultsAnalysis and rename Trial -1 -> Addition…
sdaulton Aug 4, 2025
b5a2b11
retain all metrics when changing the optimization config (#4092)
sdaulton Aug 4, 2025
7e28eb3
Consolidate match_ci_width implementations (#4096)
saitcakmak Aug 5, 2025
35b7a40
Implement PowerTransformY.transform_experiment_data (#4089)
saitcakmak Aug 5, 2025
3f95558
Add SEM check for bias correction when relativizing data (#4093)
andycylmeta Aug 6, 2025
6f45279
Updating the summarize method for user convenience (#4102)
Aug 6, 2025
53c4a2e
Fixes to InsightsAnalysis and TopSurfacesAnalysis (#4095)
mpolson64 Aug 6, 2025
9331539
Fix AnalysisCardGroup rendering in website (#4104)
mpolson64 Aug 6, 2025
d0aec91
Update Search Space Analysis Warning wording to capture bound (#4107)
bernardbeckerman Aug 6, 2025
dbffbd1
XGBoost surrogate model on FashionMNIST (#4097)
kayween Aug 6, 2025
cb93901
Use trusted publishing for cron test.pypi uploads (#4106)
saitcakmak Aug 6, 2025
28d92e1
Make subtitle optional in Analysis groups (#4105)
shrutipatel31 Aug 6, 2025
d3e15b1
refactor the MNIST surrogate to facilitate code sharing (#4111)
kayween Aug 6, 2025
1bd4c6a
Remove reference to parallel coordinates plot in tutorial (#4113)
mpolson64 Aug 6, 2025
b2f85d4
Silence excessive warnings from ESS (#4108)
saitcakmak Aug 7, 2025
ac4e06d
Update MapKeyToFloat.transform_experiment_data to fill NaN progressio…
saitcakmak Aug 7, 2025
e71e598
Update MetadataToParameter.transform_experiment_data to retain the or…
saitcakmak Aug 7, 2025
fd90287
Updating input parameters for private method (#4117)
Aug 7, 2025
da8b59c
Group CVs as AnalysisCardGroup in DiagnosticAnalysis (#4112)
shrutipatel31 Aug 7, 2025
1506826
Filtering by trial status added to summarize (#4118)
Aug 7, 2025
7df5b0e
Updating docstrings for better code quality (#4119)
Aug 7, 2025
3f9c123
Add reliable identifier to ModelConfig (#4101)
bletham Aug 8, 2025
c5856a6
Add model sampling to Surrogate for batch generation (#4109)
bletham Aug 8, 2025
55d9a96
Add multi-model acquisition to MultiAcquisition (#4110)
bletham Aug 8, 2025
1a332db
Change Continuous Colors to Earth over PrGn (#4120)
eonofrey Aug 8, 2025
0d3281d
Add additional logging to Client (#4044)
mpolson64 Aug 8, 2025
6e3af6c
Move remove_tracking_metrics (#4122)
mpolson64 Aug 8, 2025
1964c45
Work around CV errors due to insufficient data (#4123)
saitcakmak Aug 9, 2025
3817cf3
Move out of sample filter in ContourPlot (#4124)
mpolson64 Aug 11, 2025
67f0d60
Use floating-point map key types in Benchmark MapMetrics (#4126)
ltiao Aug 11, 2025
0b31ac7
Adapt max_batch_size to model batch shape in optimize_acqf_discrete (…
saitcakmak Aug 11, 2025
4262878
Remove print statement from Getting Started (#4129)
mpolson64 Aug 11, 2025
49925ba
fix: removes typo in `existing-data` recipe (#4125)
javiergarea Aug 11, 2025
8f2b8ca
Add changelog ahead of 1.1.0 (#4130)
mpolson64 Aug 11, 2025
c2e6c01
Remove unused argument `excluded_columns` from `Data.column_data_type…
esantorella Aug 12, 2025
ed082ac
Fix Duplicate Candidate Trial Plotting Bug (#4133)
eonofrey Aug 12, 2025
0c0c892
Pin botorch to 0.15.1 (#4135)
mpolson64 Aug 12, 2025
3771dfe
Merge branch 'main' into docusaurus-versions-1.1.0
CristianLara Aug 12, 2025
37fb3da
Create version 1.1.0 of site in Docusaurus
CristianLara Aug 12, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .github/workflows/cron.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,8 @@ jobs:
deploy-test-pypi:

runs-on: ubuntu-latest
permissions:
id-token: write # This is required for PyPI OIDC authentication.
env:
# `uv pip ...` requires venv by default. This skips that requirement.
UV_SYSTEM_PYTHON: 1
Expand Down Expand Up @@ -73,8 +75,6 @@ jobs:
- name: Deploy to Test PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.TEST_PYPI_TOKEN }}
repository-url: https://test.pypi.org/legacy/
skip-existing: true
verbose: true
31 changes: 0 additions & 31 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,39 +22,8 @@ jobs:
pinned_botorch: true
secrets: inherit

check-versions:
needs: tests-and-coverage-pinned
name: Check if major or minor version changed
runs-on: ubuntu-latest
outputs:
major_minor_changed: ${{ steps.compare.outputs.major_minor_changed }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
fetch-tags: true
ref: ${{ github.sha }}
- name: Check if major or minor version changed
id: compare
run: |
git fetch --tags --force
previous_version=$(git describe --tags --abbrev=0 ${{ github.event.release.tag_name }}^)
prev=$(cut -d '.' -f 1-2 <<< $previous_version) # remove patch number
prev=${prev#v} # remove optional "v" prefix
next=$(cut -d '.' -f 1-2 <<< ${{ github.event.release.tag_name }})
next=${next#v}

echo "Updating from version $previous_version to ${{ github.event.release.tag_name }}"
if [[ "$prev" == "$next" ]]; then
echo "::warning::Major/Minor version was not changed. Skipping website & docs generation step."
else
echo major_minor_changed=true >> $GITHUB_OUTPUT
fi

version-and-publish-website:
needs: check-versions
name: Version and Publish website
if: ${{ needs.check-versions.outputs.major_minor_changed == 'true' }}
uses: ./.github/workflows/publish_website.yml
with:
new_version: ${{ github.event.release.tag_name }}
Expand Down
33 changes: 31 additions & 2 deletions .github/workflows/publish_website.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ on:
pinned_botorch:
required: true
type: boolean
dry_run:
required: false
type: boolean
default: false
workflow_dispatch:
inputs:
run_tutorials:
Expand All @@ -21,9 +25,12 @@ on:
pinned_botorch:
required: true
type: boolean
dry_run:
required: true
type: boolean
default: false

jobs:

build-website:
runs-on: ubuntu-latest
permissions:
Expand Down Expand Up @@ -68,7 +75,28 @@ jobs:
name: Run Tutorials
run: |
python scripts/run_tutorials.py -w $(pwd)
- if: ${{ inputs.new_version }}
- if: ${{ inputs.new_version && !inputs.dry_run }}
name: Delete existing similar versions from Docusaurus
run: |
# Delete existing versions for same Major and Minor version numbers.
# We do this to keep only the latest patch for a given major/minor version.
MAJOR_MINOR_VERSION=$(cut -d '.' -f 1-2 <<< ${{ inputs.new_version }}) # remove patch number
MAJOR_MINOR_VERSION=${MAJOR_MINOR_VERSION#v} # remove optional "v" prefix
for dir in website/versioned_docs/version-$MAJOR_MINOR_VERSION.*; do
if [ -d "$dir" ]; then
OLD_VERSION=$(basename "$dir" | sed 's/^version-//') # remove "version-" prefix from the directory name
echo "Deleting older version $OLD_VERSION with the same major and minor version numbers as $NEW_VERSION"
# Delete version from the three locations Docusaurus uses:
# - versioned_docs/version-X.Y.Z/
# - versioned_sidebars/version-X.Y.Z-sidebars.json
# - versions.json
# https://docusaurus.io/docs/versioning#deleting-an-existing-version
rm -rf "$dir"
rm "website/versioned_sidebars/version-$OLD_VERSION-sidebars.json"
sed -i "/\"$OLD_VERSION\"/d" website/versions.json
fi
done
- if: ${{ inputs.new_version && !inputs.dry_run }}
name: Create new docusaurus version
run: |
python3 scripts/convert_ipynb_to_mdx.py --clean
Expand All @@ -89,6 +117,7 @@ jobs:
path: website/build/

deploy-website:
if: ${{ !inputs.dry_run }}
needs: build-website
permissions:
pages: write
Expand Down
22 changes: 22 additions & 0 deletions .github/workflows/test_website.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Test Website

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
paths:
- "tutorials/**"
- "docs/**"
- "scripts/**"
- "website/**"
workflow_dispatch:

jobs:
website:
name: Test building website
uses: ./.github/workflows/publish_website.yml
with:
dry_run: true
pinned_botorch: false
run_tutorials: false
29 changes: 28 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1 +1,28 @@
Ax uses GitHub tags for managing releases. See changelog [here](https://github.com/facebook/Ax/releases).
# Changelog

The release log for Ax.

## [1.1.0] -- Aug 11, 2025
#### New Features
* New option for the `method` parameter in `client.configure_generation_strategy`:
`quality` -- allows uers to indicate they would like Ax to generate the highest
quality candidates it is able to at the expense of slower runtime (#4042)
* New logic for deciding which analyses to produce by default in
`client.compute_analyses` (#4013)
* New parameters in `client.summarize` allow users to filter their summary by trial
index and/or trial status (#4012, #4118)

#### Bug Fixes
* Allow `client.summarize` to be called without a `GenerationStrategy` being set
(i.e. before `client.configure_generation_strategy` or `client.get_next_trails`
has been called.) (#3801)
* Fixed incorrect grouping in `TopSurfacesAnalysis` (#4095)
* Fixed `ContourPlot` failing to compute in certain search spaces with parameter
constraints (#4124)
* Misc. plotting fixes and improvements

#### Other changes
* Bumped pinned [botorch](https://github.com/pytorch/botorch) version to 0.15.1
* Performance improvements in `SensitivityAnalysis` (#3891)
* Improved optimization performance in constrained optimization settings (#3585)
* Augmented logging in `Client`, early stopping module (#4044, #4108)
27 changes: 1 addition & 26 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,33 +77,8 @@ We use [Pyre](https://pyre-check.org/) for static type checking and require code

## Website

The Ax website was created with [Docusaurus](https://docusaurus.io/), with heavy customization to support tutorials, complete API documentation via Sphinx, and versioning.
The Ax website was created with [Docusaurus](https://docusaurus.io/), with some customization to support tutorials, and supplemented with Sphinx for API documentation. See the [website/README.md](website/README.md) for more details.

FontAwesome icons were used under the [Creative Commons Attribution 4.0 International](https://fontawesome.com/license).

### Local Building

You will need [Node](https://nodejs.org/en/) >= 8.x and [Yarn](https://yarnpkg.com/en/) >= 1.5
to build the Sphinx docs and Docusaurus site (which embeds the Sphinx docs inside). The
following command will both build the docs and serve the (unversioned) site locally:
```
./scripts/make_docs.sh
```

Open http://localhost:3000 (if doesn't automatically open). Anytime you change the contents of the page, the page should auto-update.

To build a static version, add the `-b` flag.

Additional details:

* This is the unversioned site built off of the current repository. Versioning is much more complex, and is generally not necessary for testing the site. Versioning is automatically handled when publishing the site to `gh-pages`.
* Skipping Sphinx API & tutorials: to build the site without running Sphinx or compiling the tutorials, pass the `-o` flag to the `make_docs.sh` script. This is especially useful when you want to iterate quickly on making changes to the Docusaurus config and you've already run Sphinx and tutorial generation (the outputs are still in `website` subdirectory and will be picked up).
* Tutorials: we embed tutorials written in Jupyter notebooks into the site. By default, these tutorials are converted to HTML without execution. However, you can execute all tutorials via `./scripts/make_docs.sh -t`. If you do execute the tutorials, please keep in mind that the version of Ax you have installed should match the version of Ax you're trying to build tutorials for.

### Publishing
The site is hosted as a GitHub page (on the `gh-pages` branch). We build the [latest version](https://ax.dev/versions/latest/index.html) of the site with every commit to the `main` branch via GitHub Actions. The latest version of the site can be manually updated using `./scripts/publish_site.sh` (assuming proper credentials).

When new version of Ax rolls out, we add a new version to the site via `./scripts/publish_site.sh -v [version]`.

## License
By contributing to Ax, you agree that your contributions will be licensed
Expand Down
16 changes: 5 additions & 11 deletions ax/modelbridge/__init__.py → ax/adapter/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,11 @@
# pyre-strict

# flake8: noqa F401
from ax.modelbridge import transforms
from ax.modelbridge.base import Adapter
from ax.modelbridge.factory import (
Generators,
get_factorial,
get_sobol,
get_thompson,
get_uniform,
)
from ax.modelbridge.torch import TorchAdapter
from ax.adapter import transforms
from ax.adapter.base import Adapter
from ax.adapter.factory import get_factorial, get_sobol, get_thompson
from ax.adapter.registry import Generators
from ax.adapter.torch import TorchAdapter

__all__ = [
"Adapter",
Expand All @@ -25,6 +20,5 @@
"get_factorial",
"get_sobol",
"get_thompson",
"get_uniform",
"transforms",
]
Loading