ray.get#
- ray.get(object_refs: Sequence[ObjectRef[R]], *, timeout: float | None = None) List[R][source]#
- ray.get(object_refs: Sequence[ObjectRef[Any]], *, timeout: float | None = None) List[Any]
- ray.get(object_refs: ObjectRef[R], *, timeout: float | None = None) R
- ray.get(object_refs: Sequence[CompiledDAGRef], *, timeout: float | None = None) List[Any]
- ray.get(object_refs: CompiledDAGRef, *, timeout: float | None = None) Any
Get a remote object or a list of remote objects from the object store.
This method blocks until the object corresponding to the object ref is available in the local object store. If this object is not in the local object store, it will be shipped from an object store that has it (once the object has been created). If object_refs is a list, then the objects corresponding to each object in the list will be returned.
Ordering for an input list of object refs is preserved for each object returned. That is, if an object ref to A precedes an object ref to B in the input list, then A will precede B in the returned list.
This method will issue a warning if it’s running inside async context, you can use
await object_refinstead ofray.get(object_ref). For a list of object refs, you can useawait asyncio.gather(*object_refs).Passing
ObjectRefGeneratoris not allowed.Related patterns and anti-patterns:
Anti-pattern: Calling ray.get unnecessarily harms performance
Anti-pattern: Processing results in submission order using ray.get increases runtime
Anti-pattern: Fetching too many objects at once with ray.get causes failure
- Parameters:
object_refs – Object ref of the object to get or a list of object refs to get.
timeout (Optional[float]) – The maximum amount of time in seconds to wait before returning. Set this to None will block until the corresponding object becomes available. Setting
timeout=0will return the object immediately if it’s available, else raise GetTimeoutError in accordance with the above docstring._use_object_store – [Alpha] To fetch an RDT object through the object store instead of using its designated tensor transport. You can set this to True for cases where the caller does not support the object’s tensor transport, e.g., the tensor transport is “nccl” and the caller is not part of the collective. When this is False (default), Ray will use the object store for normal objects, and attempt to use the object’s tensor transport for RDT objects.
- Returns:
A Python object or a list of Python objects.
- Raises:
GetTimeoutError – A GetTimeoutError is raised if a timeout is set and the get takes longer than timeout to return.
Exception – An exception is raised immediately if any task that created the object or that created one of the objects raised an exception, without waiting for the remaining ones to finish.