parasolpy.interactive
Interactive CLI helpers for epsilon experiment workflows.
These functions handle user prompting and input validation; they contain no analysis logic. Import them in scripts that need a terminal-based interface for iterating on epsilon non-dominance parameters.
Functions
|
Load epsilon defaults from a saved experiment JSON file. |
|
Prompt for an epsilon value per objective, carrying forward the current value as default. |
|
Prompt the user for a filesystem-safe experiment name. |
|
Optionally seed starting epsilons from a previously saved experiment. |
Exceptions
Raised when the user requests to exit an interactive CLI workflow. |
- exception parasolpy.interactive.ExitInteractiveSession[source]
Bases:
ExceptionRaised when the user requests to exit an interactive CLI workflow.
- parasolpy.interactive.prompt_experiment_name(prompt_text='\nExperiment name: ')[source]
Prompt the user for a filesystem-safe experiment name.
- Returns:
A sanitized, non-empty experiment name suitable for use in filenames.
- Return type:
str
- parasolpy.interactive.prompt_epsilons(objective_names, current_epsilons)[source]
Prompt for an epsilon value per objective, carrying forward the current value as default.
- Parameters:
objective_names – List of objective name strings shown as labels.
current_epsilons – List of current epsilon floats used as defaults.
- Returns:
New epsilon values, one per objective.
- Return type:
list of float
- parasolpy.interactive.load_experiment_epsilons(output_folder, experiment_name, objective_names)[source]
Load epsilon defaults from a saved experiment JSON file.
- Parameters:
output_folder – Folder containing per-experiment JSON files.
experiment_name – Experiment suffix used in eps_experiment_<name>.json.
objective_names – Ordered list of objectives to align the returned epsilons.
- Returns:
Epsilons ordered to match objective_names.
- Return type:
list of float