提交 e0642ffc 编写于 作者: K KP

Update doc strings.

上级 ba0dc3c1
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
import os import os
from abc import ABC from abc import ABC
from abc import abstractmethod from abc import abstractmethod
from typing import Any
from typing import List from typing import List
from typing import Union from typing import Union
...@@ -32,50 +33,70 @@ class BaseExecutor(ABC): ...@@ -32,50 +33,70 @@ class BaseExecutor(ABC):
@abstractmethod @abstractmethod
def _get_pretrained_path(self, tag: str) -> os.PathLike: def _get_pretrained_path(self, tag: str) -> os.PathLike:
""" """
Download and returns pretrained resources path of current task. Download and returns pretrained resources path of current task.
Args:
tag (str): A tag of pretrained model.
Returns:
os.PathLike: The path on which resources of pretrained model locate.
""" """
pass pass
@abstractmethod @abstractmethod
def _init_from_path(self, *args, **kwargs): def _init_from_path(self, *args, **kwargs):
""" """
Init model and other resources from a specific path. Init model and other resources from arguments. This method should be called by `__call__()`.
""" """
pass pass
@abstractmethod @abstractmethod
def preprocess(self, input: Union[str, os.PathLike]): def preprocess(self, input: Any, *args, **kwargs):
""" """
Input preprocess and return paddle.Tensor stored in self.input. Input preprocess and return paddle.Tensor stored in self._inputs.
Input content can be a text(tts), a file(asr, cls) or a streaming(not supported yet). Input content can be a text(tts), a file(asr, cls), a stream(not supported yet) or anything needed.
Args:
input (Any): Input text/file/stream or other content.
""" """
pass pass
@paddle.no_grad() @paddle.no_grad()
@abstractmethod @abstractmethod
def infer(self, device: str): def infer(self, *args, **kwargs):
""" """
Model inference and result stored in self.output. Model inference and put results into self._outputs.
This method get input tensors from self._inputs, and write output tensors into self._outputs.
""" """
pass pass
@abstractmethod @abstractmethod
def postprocess(self) -> Union[str, os.PathLike]: def postprocess(self, *args, **kwargs) -> Union[str, os.PathLike]:
""" """
Output postprocess and return human-readable results such as texts and audio files. Output postprocess and return results.
This method get model output from self._outputs and convert it into human-readable results.
Returns:
Union[str, os.PathLike]: Human-readable results such as texts and audio files.
""" """
pass pass
@abstractmethod @abstractmethod
def execute(self, argv: List[str]) -> bool: def execute(self, argv: List[str]) -> bool:
""" """
Command line entry. Command line entry. This method can only be accessed by a command line such as `paddlespeech asr`.
Args:
argv (List[str]): Arguments from command line.
Returns:
int: Result of the command execution. `True` for a success and `False` for a failure.
""" """
pass pass
@abstractmethod @abstractmethod
def __call__(self, *arg, **kwargs): def __call__(self, *arg, **kwargs):
""" """
Python API to call an executor. Python API to call an executor.
""" """
pass pass
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册