pipelines.rst 4.73 KB
Newer Older
Lysandre Debut's avatar
Lysandre Debut committed
1
Pipelines
Sylvain Gugger's avatar
Sylvain Gugger committed
2
-----------------------------------------------------------------------------------------------------------------------
Lysandre Debut's avatar
Lysandre Debut committed
3

Sylvain Gugger's avatar
Sylvain Gugger committed
4
5
The pipelines are a great and easy way to use models for inference. These pipelines are objects that abstract most of
the complex code from the library, offering a simple API dedicated to several tasks, including Named Entity
Sylvain Gugger's avatar
Sylvain Gugger committed
6
7
Recognition, Masked Language Modeling, Sentiment Analysis, Feature Extraction and Question Answering. See the
:doc:`task summary <../task_summary>` for examples of use.
Lysandre Debut's avatar
Lysandre Debut committed
8
9
10

There are two categories of pipeline abstractions to be aware about:

Sylvain Gugger's avatar
Sylvain Gugger committed
11
12
13
14
15
16
17
18
19
20
21
22
- The :func:`~transformers.pipeline` which is the most powerful object encapsulating all other pipelines.
- The other task-specific pipelines:

    - :class:`~transformers.ConversationalPipeline`
    - :class:`~transformers.FeatureExtractionPipeline`
    - :class:`~transformers.FillMaskPipeline`
    - :class:`~transformers.QuestionAnsweringPipeline`
    - :class:`~transformers.SummarizationPipeline`
    - :class:`~transformers.TextClassificationPipeline`
    - :class:`~transformers.TextGenerationPipeline`
    - :class:`~transformers.TokenClassificationPipeline`
    - :class:`~transformers.TranslationPipeline`
23
    - :class:`~transformers.ZeroShotClassificationPipeline`
24
    - :class:`~transformers.Text2TextGenerationPipeline`
Lysandre Debut's avatar
Lysandre Debut committed
25
26

The pipeline abstraction
Sylvain Gugger's avatar
Sylvain Gugger committed
27
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lysandre Debut's avatar
Lysandre Debut committed
28

Sylvain Gugger's avatar
Sylvain Gugger committed
29
30
The `pipeline` abstraction is a wrapper around all the other available pipelines. It is instantiated as any other
pipeline but requires an additional argument which is the `task`.
Lysandre Debut's avatar
Lysandre Debut committed
31

Sylvain Gugger's avatar
Sylvain Gugger committed
32
.. autofunction:: transformers.pipeline
Lysandre Debut's avatar
Lysandre Debut committed
33
34
35


The task specific pipelines
Sylvain Gugger's avatar
Sylvain Gugger committed
36
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lysandre Debut's avatar
Lysandre Debut committed
37

Sylvain Gugger's avatar
Sylvain Gugger committed
38
ConversationalPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
39
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
40

Sylvain Gugger's avatar
Sylvain Gugger committed
41
.. autoclass:: transformers.Conversation
Lysandre Debut's avatar
Lysandre Debut committed
42

Sylvain Gugger's avatar
Sylvain Gugger committed
43
44
45
46
47
.. autoclass:: transformers.ConversationalPipeline
    :special-members: __call__
    :members:

FeatureExtractionPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
48
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
49

Sylvain Gugger's avatar
Sylvain Gugger committed
50
51
52
.. autoclass:: transformers.FeatureExtractionPipeline
    :special-members: __call__
    :members:
Lysandre Debut's avatar
Lysandre Debut committed
53
54

FillMaskPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
55
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
56
57

.. autoclass:: transformers.FillMaskPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
58
59
    :special-members: __call__
    :members:
Lysandre Debut's avatar
Lysandre Debut committed
60

Sylvain Gugger's avatar
Sylvain Gugger committed
61
NerPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
62
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
63

Sylvain Gugger's avatar
Sylvain Gugger committed
64
65
This class is an alias of the :class:`~transformers.TokenClassificationPipeline` defined below. Please refer to that
pipeline for documentation and usage examples.
Lysandre Debut's avatar
Lysandre Debut committed
66
67

QuestionAnsweringPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
68
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
69
70

.. autoclass:: transformers.QuestionAnsweringPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
71
72
    :special-members: __call__
    :members:
73
74

SummarizationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
75
=======================================================================================================================
76
77

.. autoclass:: transformers.SummarizationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
78
79
    :special-members: __call__
    :members:
80

Sylvain Gugger's avatar
Sylvain Gugger committed
81
TextClassificationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
82
=======================================================================================================================
Sylvain Gugger's avatar
Sylvain Gugger committed
83
84
85
86

.. autoclass:: transformers.TextClassificationPipeline
    :special-members: __call__
    :members:
87
88

TextGenerationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
89
=======================================================================================================================
90
91

.. autoclass:: transformers.TextGenerationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
92
93
    :special-members: __call__
    :members:
94

95
Text2TextGenerationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
96
=======================================================================================================================
97
98
99
100
101

.. autoclass:: transformers.Text2TextGenerationPipeline
    :special-members: __call__
    :members:

Sylvain Gugger's avatar
Sylvain Gugger committed
102
TokenClassificationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
103
=======================================================================================================================
104

Sylvain Gugger's avatar
Sylvain Gugger committed
105
106
107
108
.. autoclass:: transformers.TokenClassificationPipeline
    :special-members: __call__
    :members:

109
ZeroShotClassificationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
110
=======================================================================================================================
111
112
113
114
115

.. autoclass:: transformers.ZeroShotClassificationPipeline
    :special-members: __call__
    :members:

Sylvain Gugger's avatar
Sylvain Gugger committed
116
Parent class: :obj:`Pipeline`
Sylvain Gugger's avatar
Sylvain Gugger committed
117
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sylvain Gugger's avatar
Sylvain Gugger committed
118
119
120

.. autoclass:: transformers.Pipeline
    :members: