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.
This updates DJL Serving to follow the engine initialization standards set in deepjavalibrary/djl#2885. First, it updates the PyEngineProvider to follow the EngineProvider conventions.
It also updates the DependencyManager, fixing some bugs that inspired deepjavalibrary/djl#2934. The dependency manager before this change would always re-register the engine with a new provider. Beforehand, the engine was fully static and unable to re-initialize, so this would not accidentally re-initialize engines. After this, it would re-initialize engines that did not support it causing errors. Instead, it should only register new engines rather than all providers to avoid these accidental re-initialization.