Feat: Add graceful import handling for QML frameworks #37
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi,
When setting up the environment, especially with potential conflicts between base libraries like PyTorch and TensorFlow, installing and importing all required QML frameworks (PennyLane, TFQ, TorchQuantum) can be challenging. Currently, if one framework needed by a specific model fails to import, the benchmark script might crash unexpectedly.
This PR makes the main benchmark script (
scripts/run_hyperparameter_search.py
) more robust by:try...except
blocks to specifically catchImportErrors
.requirements.txt
to remove QML frameworks, reinforcing that they require separate, careful installation based on user needs and environment compatibility.The aim while making the changes was to assist users to run benchmarks more reliably, receiving clear feedback if a specific model cannot run due to a missing framework, rather than encountering an unexpected crash. It makes the tool more resilient to the complexities of multi-framework environments.
Amazing work by the way.