- runtime: install zh_core_web_sm from vendored wheel (reused from runtime-ray) instead of 'python -m spacy download' (GitHub 403 on server) - runtime / runtime-ray / backend-python: replace nltk.download (GitHub + nltk_data.nltk.org unreachable from server) with vendored zips extracted to /usr/local/nltk_data/packages/{tokenizers,taggers}