pipelines.rst 6.43 KB
Newer Older
Sylvain Gugger's avatar
Sylvain Gugger committed
1
2
3
4
5
6
7
8
9
10
11
12
.. 
    Copyright 2020 The HuggingFace Team. All rights reserved.

    Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
    the License. You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
    an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
    specific language governing permissions and limitations under the License.

Lysandre Debut's avatar
Lysandre Debut committed
13
Pipelines
Sylvain Gugger's avatar
Sylvain Gugger committed
14
-----------------------------------------------------------------------------------------------------------------------
Lysandre Debut's avatar
Lysandre Debut committed
15

Sylvain Gugger's avatar
Sylvain Gugger committed
16
17
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
18
19
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
20
21
22

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

Sylvain Gugger's avatar
Sylvain Gugger committed
23
24
25
- The :func:`~transformers.pipeline` which is the most powerful object encapsulating all other pipelines.
- The other task-specific pipelines:

26
    - :class:`~transformers.AutomaticSpeechRecognitionPipeline`
Sylvain Gugger's avatar
Sylvain Gugger committed
27
28
29
30
31
32
33
34
35
    - :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`
36
    - :class:`~transformers.ZeroShotClassificationPipeline`
37
    - :class:`~transformers.Text2TextGenerationPipeline`
38
    - :class:`~transformers.TableQuestionAnsweringPipeline`
39
    - :class:`~transformers.ImageClassificationPipeline`
Lysandre Debut's avatar
Lysandre Debut committed
40
41

The pipeline abstraction
Sylvain Gugger's avatar
Sylvain Gugger committed
42
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lysandre Debut's avatar
Lysandre Debut committed
43

Sylvain Gugger's avatar
Sylvain Gugger committed
44
45
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
46

Sylvain Gugger's avatar
Sylvain Gugger committed
47
.. autofunction:: transformers.pipeline
Lysandre Debut's avatar
Lysandre Debut committed
48
49
50


The task specific pipelines
Sylvain Gugger's avatar
Sylvain Gugger committed
51
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lysandre Debut's avatar
Lysandre Debut committed
52

53
54
55
56
57
58
59
AutomaticSpeechRecognitionPipeline
=======================================================================================================================

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

Sylvain Gugger's avatar
Sylvain Gugger committed
60
ConversationalPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
61
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
62

Sylvain Gugger's avatar
Sylvain Gugger committed
63
.. autoclass:: transformers.Conversation
Lysandre Debut's avatar
Lysandre Debut committed
64

Sylvain Gugger's avatar
Sylvain Gugger committed
65
66
67
68
69
.. autoclass:: transformers.ConversationalPipeline
    :special-members: __call__
    :members:

FeatureExtractionPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
70
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
71

Sylvain Gugger's avatar
Sylvain Gugger committed
72
73
74
.. autoclass:: transformers.FeatureExtractionPipeline
    :special-members: __call__
    :members:
Lysandre Debut's avatar
Lysandre Debut committed
75
76

FillMaskPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
77
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
78
79

.. autoclass:: transformers.FillMaskPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
80
81
    :special-members: __call__
    :members:
Lysandre Debut's avatar
Lysandre Debut committed
82

83
84
85
86
87
88
89
ImageClassificationPipeline
=======================================================================================================================

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

Sylvain Gugger's avatar
Sylvain Gugger committed
90
NerPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
91
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
92

93
94
95
.. autoclass:: transformers.NerPipeline

See :class:`~transformers.TokenClassificationPipeline` for all details.
Lysandre Debut's avatar
Lysandre Debut committed
96
97

QuestionAnsweringPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
98
=======================================================================================================================
Lysandre Debut's avatar
Lysandre Debut committed
99
100

.. autoclass:: transformers.QuestionAnsweringPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
101
102
    :special-members: __call__
    :members:
103
104

SummarizationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
105
=======================================================================================================================
106
107

.. autoclass:: transformers.SummarizationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
108
109
    :special-members: __call__
    :members:
110

111
112
113
114
115
116
117
TableQuestionAnsweringPipeline
=======================================================================================================================

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


Sylvain Gugger's avatar
Sylvain Gugger committed
118
TextClassificationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
119
=======================================================================================================================
Sylvain Gugger's avatar
Sylvain Gugger committed
120
121
122
123

.. autoclass:: transformers.TextClassificationPipeline
    :special-members: __call__
    :members:
124
125

TextGenerationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
126
=======================================================================================================================
127
128

.. autoclass:: transformers.TextGenerationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
129
130
    :special-members: __call__
    :members:
131

132
Text2TextGenerationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
133
=======================================================================================================================
134
135
136
137
138

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

Sylvain Gugger's avatar
Sylvain Gugger committed
139
TokenClassificationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
140
=======================================================================================================================
141

Sylvain Gugger's avatar
Sylvain Gugger committed
142
143
144
145
.. autoclass:: transformers.TokenClassificationPipeline
    :special-members: __call__
    :members:

146
147
148
149
150
151
152
TranslationPipeline
=======================================================================================================================

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

153
ZeroShotClassificationPipeline
Sylvain Gugger's avatar
Sylvain Gugger committed
154
=======================================================================================================================
155
156
157
158
159

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

Sylvain Gugger's avatar
Sylvain Gugger committed
160
Parent class: :obj:`Pipeline`
Sylvain Gugger's avatar
Sylvain Gugger committed
161
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sylvain Gugger's avatar
Sylvain Gugger committed
162
163
164

.. autoclass:: transformers.Pipeline
    :members: