I don't see the difference between "local, open weights" and "local, proprietary weights". Is that just the handful of lines of code that call the inference?
The model itself is just a binary blob, like a compiled program. Either you get its source code (the complete training data) or you don't.