Pipeline API接口
openmind.pipeline方法
功能描述
将模型的预处理、推理、后处理等步骤进行封装,用户可以直接调用该方法,从而对多种领域的AI模型进行快速推理。
接口原型
python
openmind.pipeline(
task: Optional[str] = None,
model=None,
config=None,
tokenizer=None,
feature_extractor=None,
image_processor=None,
framework: Optional[str] = None,
backend: Optional[str] = None,
model_kwargs: Optional[Dict[str, Any]] = None,
**kwargs,
)
参数列表
- task(
str, 可选):推理任务名称,详见pipeline当前支持的推理任务及其默认模型。 - model(
str或PreTrainedModel或BaseModel或Model或Tuple[str, str],可选):pipeline中进行推理所用到的模型,可以是hub侧模型ID、本地的模型路径或者模型实例,其模型实例支持PretrainedModel(PyTorch)以及Model, BaseModel(MindSpore)。 - config (
str或PretrainedConfig,可选):pipeline中进行模型初始化等所用到的配置项,可以是hub侧模型ID、本地的模型路径或者模型实例,其模型实例支持PretrainedConfig。 - tokenizer(
str或PreTrainedTokenizer或PreTrainedTokenizerFast或BaseTokenizer,可选):pipeline中用于模型数据编码(data encode),可以是hub侧模型ID、本地的模型路径或tokenizer实例。如果没有提供该参数,则会自动加载对应框架默认的tokenizer实例。 - feature_extractor(
str或PreTrainedFeatureExtractor,可选):pipeline中用于进行非NLP任务模型(例如语音、视觉、多模态)的特征提取,可以是hub侧模型ID、本地的模型路径或真正的实例化对象PreTrainedFeatureExtractor。 - image_processor(
BaseImageProcessor,可选):pipeline中进行图像数据编码所用的处理器,其实例化对象支持BaseImageProcessor继承类。 - framework(
pt或ms,可选):后端对接框架名,支持pt(PyTorch)和ms(MindSpore)。 - backend(
transformers,diffusers或mindformers或mindnlp,可选):后端对接套件名,当framework为pt时,支持backend配置为transformers和diffusers,当framework为ms时,支持backend配置为mindformers或mindnlp。 - kwargs(可选): 用于构建pipeline对象的定制化参数。例如:
- revision:要使用的特定型号版本。它可以是分支名称、标签名称或提交ID。
- use_fast:是否使用fast tokenizer。
- token:访问hub非公开数据时需要的用户访问令牌(访问非公开数据时
use_auth_token和token必须配置一个,建议配置token)。 - device:仅支持PyTorch。指定的pipeline对象在哪个设备上运行,支持NPU、CPU。
- device_map:仅支持PyTorch。用于定义如何在多个设备之间分配模型的不同部分,是一种并行化策略。
- torch_dtype:仅支持PyTorch。表示torch.Tensor类型对象的数据类型。
- trust_remote_code:是否允许在Hub的模型文件中定义自定义模型。此选项需要在您信任该模型库并且已阅读代码时设置为
True,因为它将在您的本地机器上执行Hub上存在的代码。 - model_kwargs:model相关的关键字参数字典。
- pipeline_class:pipeline类型。
- use_auth_token:仅支持PyTorch。访问hub非公开数据时需要的用户访问令牌(待废弃)。
- audio_processor(
BaseAudioProcessor,可选):仅支持MindSpore。pipeline进行音频数据编码所用的处理器,其实例化对象支持BaseAudioProcessor继承类。 - ge_config_path:仅支持MindsporeLite。配置文件路径。
- device_id:仅支持mindformers。指定的pipeline对象在哪个设备号上运行。
- device_target:仅支持mindformers。指定的pipeline对象在哪个设备上运行。