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 commit introduces the ability to define an async
setup
function on your predictor. For simplicity an asyncsetup()
function is only supported alongside an asyncpredict()
function. An error will be raised during setup if this is not the case.Various pieces of the code have been extracted into smaller methods in order to achieve this. A new
_handle_setup_error
context manager has been created to handle setup errors and send appropriateDone
event over the worker channel.The
_setup()
method has been split into two phases, first we perform validation on the requirements for async/concurrency support. Then we attempt to run thesetup()
method either as a direct call for the non-async path or as part of the event loop in the async path.TODO