It is possible to give only the inference.py script if you have your model.tar.gz in s3. Not sure if it works with hub.
When you create the HuggingFaceModel() object, give it source dir (local folder where inference.py script is), entry point (inference.py) and model_data (s3 url).
Then next time you do HuggingFaceModel.deploy() it will use the inference script from your local folder and the model from s3.