ray.serve.schema.TaskProcessorAdapter#
- class ray.serve.schema.TaskProcessorAdapter(*args, **kwargs)[source]#
Bases:
ABCAbstract base class for task processing adapters.
Subclasses can support different combinations of sync and async operations. Use supports_async_capability() to check if a specific async operation is supported.
PublicAPI (alpha): This API is in alpha and may change before becoming stable.
- abstract register_task_handle(func: Callable, name: str | None = None)[source]#
Register a function as a task handler.
- Parameters:
func – The function to register as a task handler.
name – Custom name for the task.
- abstract enqueue_task_sync(task_name: str, args: Any | None = None, kwargs: Any | None = None, **options) TaskResult[source]#
Enqueue a task for execution synchronously.
- Parameters:
task_name – Name of the registered task to execute.
args – Positional arguments to pass to the task function.
kwargs – Keyword arguments to pass to the task function.
**options – Additional adapter-specific options for task execution.
- Returns:
Object containing task ID, status, and other metadata.
- Return type:
- abstract get_task_status_sync(task_id: str) TaskResult[source]#
Retrieve the current status of a task synchronously.
- Parameters:
task_id – Unique identifier of the task to query.
- Returns:
Object containing current task status, result, and other metadata.
- Return type:
- abstract stop_consumer(timeout: float = 10.0)[source]#
Stop the task consumer gracefully.
- Parameters:
timeout – Maximum time in seconds to wait for the consumer to stop.
- abstract cancel_task_sync(task_id: str)[source]#
Cancel a task synchronously.
- Parameters:
task_id – Unique identifier of the task to cancel.
- abstract get_metrics_sync() Dict[str, Any][source]#
Get metrics synchronously.
- Returns:
Adapter-specific metrics data.
- Return type:
Dict[str, Any]
- abstract health_check_sync() List[Dict][source]#
Perform health check synchronously.
- Returns:
Health status information for workers/components.
- Return type:
List[Dict]
- async enqueue_task_async(task_name: str, args: Any | None = None, kwargs: Any | None = None, **options) TaskResult[source]#
Enqueue a task asynchronously.
- Parameters:
task_name – Name of the registered task to execute.
args – Positional arguments to pass to the task function.
kwargs – Keyword arguments to pass to the task function.
**options – Additional adapter-specific options for task execution.
- Returns:
Object containing task ID, status, and other metadata.
- Return type:
- Raises:
NotImplementedError – If subclass didn’t implement enqueue_task_async function
- async get_task_status_async(task_id: str) TaskResult[source]#
Get task status asynchronously.
- Parameters:
task_id – Unique identifier of the task to query.
- Returns:
Object containing current task status, result, and other metadata.
- Return type:
- Raises:
NotImplementedError – If subclass didn’t implement get_task_status_async function
- async cancel_task_async(task_id: str)[source]#
Cancel a task.
- Parameters:
task_id – Unique identifier of the task to cancel.
- Raises:
NotImplementedError – If subclass didn’t implement cancel_task_async function
- async get_metrics_async() Dict[str, Any][source]#
Get metrics asynchronously.
- Returns:
Adapter-specific metrics data.
- Return type:
Dict[str, Any]
- Raises:
NotImplementedError – If subclass didn’t implement get_metrics_async function
- async health_check_async() List[Dict][source]#
Perform health check asynchronously.
- Returns:
Health status information for workers/components.
- Return type:
List[Dict]
- Raises:
NotImplementedError – If subclass didn’t implement health_check_async function