Is is true that with Python class inheritance i cannot have @ray.remote in both parent and child? What is the reason and where can i find this restriction documented?
To use Python class inheritance, you will need to apply
@ray.remote to the parent and child class separately. The best way to do this is to use
ray.remote() instead of the decorator syntax:
import ray class Parent: pass class Child(Parent): pass ParentRemote = ray.remote(Parent) ChildRemote = ray.remote(Child)
Thx, we do this already, but why is it that way?
ray.remote is a wrapper class that swaps out all the methods for
.remote versions. It gets a bit complicated if the class you want to wrap already has all
There is probably a way to make it work, but this strategy is simpler. Is this a blocker for you?
No, no blocker, we can live with the “workaround”. Out of curiosity, how can this be made to work? In fact we define our own decorator/annotation which delegates to the ray.remote() method.
Now for something completely different: Why is there no ray-2.0.0-cp310 pypi wheel for Windows (i opened a discussion about this very defect)?