Hi @butterstulle -
There are a few ways to handle this. You could compress the file, then use Git LFS, which Streamlit sharing now supports. Or, you could make the file publicly accessible on AWS as you mention (or any other cloud provider), then use something like the requests library to bring the data into your Python session.
If you choose to go the download route, be sure to use st.cache so that the file is only downloaded once. Otherwise, your users are going to have a bad experience 
Best,
Randy