outputs.mdx 1.91 KB
Newer Older
Patrick von Platen's avatar
Patrick von Platen committed
1
<!--Copyright 2023 The HuggingFace Team. All rights reserved.
Nathan Lambert's avatar
Nathan Lambert committed
2
3
4
5
6
7
8
9
10
11
12

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.
-->

Patrick von Platen's avatar
Patrick von Platen committed
13
# BaseOutputs
Nathan Lambert's avatar
Nathan Lambert committed
14

Steven Liu's avatar
Steven Liu committed
15
16
All models have outputs that are subclasses of [`~utils.BaseOutput`]. Those are
data structures containing all the information returned by the model, but they can also be used as tuples or
Patrick von Platen's avatar
Patrick von Platen committed
17
dictionaries.
Nathan Lambert's avatar
Nathan Lambert committed
18

Steven Liu's avatar
Steven Liu committed
19
For example:
Nathan Lambert's avatar
Nathan Lambert committed
20

Patrick von Platen's avatar
Patrick von Platen committed
21
22
```python
from diffusers import DDIMPipeline
Nathan Lambert's avatar
Nathan Lambert committed
23

Patrick von Platen's avatar
Patrick von Platen committed
24
25
26
pipeline = DDIMPipeline.from_pretrained("google/ddpm-cifar10-32")
outputs = pipeline()
```
Nathan Lambert's avatar
Nathan Lambert committed
27

Steven Liu's avatar
Steven Liu committed
28
The `outputs` object is a [`~pipelines.ImagePipelineOutput`] which means it has an image attribute.
Patrick von Platen's avatar
Patrick von Platen committed
29

Steven Liu's avatar
Steven Liu committed
30
You can access each attribute as you normally would or with a keyword lookup, and if that attribute is not returned by the model, you will get `None`:
Patrick von Platen's avatar
Patrick von Platen committed
31
32
33
34
35
36

```python
outputs.images
outputs["images"]
```

Steven Liu's avatar
Steven Liu committed
37
38
When considering the `outputs` object as a tuple, it only considers the attributes that don't have `None` values.
For instance, retrieving an image by indexing into it returns the tuple `(outputs.images)`:
Patrick von Platen's avatar
Patrick von Platen committed
39
40
41
42
43

```python
outputs[:1]
```

Steven Liu's avatar
Steven Liu committed
44
45
46
47
48
<Tip>

To check a specific pipeline or model output, refer to its corresponding API documentation.

</Tip>
Patrick von Platen's avatar
Patrick von Platen committed
49
50
51
52
53

## BaseOutput

[[autodoc]] utils.BaseOutput
    - to_tuple
Steven Liu's avatar
Steven Liu committed
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69

## ImagePipelineOutput

[[autodoc]] pipelines.ImagePipelineOutput

## FlaxImagePipelineOutput

[[autodoc]] pipelines.pipeline_flax_utils.FlaxImagePipelineOutput

## AudioPipelineOutput

[[autodoc]] pipelines.AudioPipelineOutput

## ImageTextPipelineOutput

[[autodoc]] ImageTextPipelineOutput