Table of Contents

Class ImageGenerationTool

Namespace
OpenAI.Responses
Assembly
OpenAI-DotNet.dll

A tool that generates images using a model like gpt-image-1.

public sealed class ImageGenerationTool : ITool
Inheritance
ImageGenerationTool
Implements
Inherited Members

Constructors

ImageGenerationTool()

public ImageGenerationTool()

ImageGenerationTool(Model, string, InputImageMask, string, int?, string, int?, string, string)

public ImageGenerationTool(Model model = null, string background = null, InputImageMask inputImageMask = null, string moderation = null, int? outputCompression = null, string outputFormat = null, int? partialImages = null, string quality = null, string size = null)

Parameters

model Model
background string
inputImageMask InputImageMask
moderation string
outputCompression int?
outputFormat string
partialImages int?
quality string
size string

Properties

Background

Background type for the generated image. One of transparent, opaque, or auto. Default: auto.

[JsonInclude]
[JsonPropertyName("background")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string Background { get; }

Property Value

string

InputImageMask

Optional mask for inpainting. Contains image_url (string, optional) and file_id (string, optional).

[JsonInclude]
[JsonPropertyName("input_image_mask")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public InputImageMask InputImageMask { get; }

Property Value

InputImageMask

Model

The image generation model to use. Default: gpt-image-1.

[JsonInclude]
[JsonPropertyName("model")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string Model { get; }

Property Value

string

Moderation

Moderation level for the generated image. Default: auto.

[JsonInclude]
[JsonPropertyName("moderation")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string Moderation { get; }

Property Value

string

OutputCompression

Compression level for the output image. Default: 100.

[JsonInclude]
[JsonPropertyName("output_compression")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public int? OutputCompression { get; }

Property Value

int?

OutputFormat

The output format of the generated image. One of png, webp, or jpeg. Default: png.

[JsonInclude]
[JsonPropertyName("output_format")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string OutputFormat { get; }

Property Value

string

PartialImages

Number of partial images to generate in streaming mode, from 0 (default value) to 3.

[JsonInclude]
[JsonPropertyName("partial_images")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public int? PartialImages { get; }

Property Value

int?

Quality

The quality of the generated image. One of low, medium, high, or auto. Default: auto.

[JsonInclude]
[JsonPropertyName("quality")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string Quality { get; }

Property Value

string

Size

The size of the generated image. One of 1024x1024, 1024x1536, 1536x1024, or auto. Default: auto.

[JsonInclude]
[JsonPropertyName("size")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string Size { get; }

Property Value

string

Type

[JsonInclude]
[JsonPropertyName("type")]
public string Type { get; }

Property Value

string

Operators

implicit operator Tool(ImageGenerationTool)

public static implicit operator Tool(ImageGenerationTool imageGenerationTool)

Parameters

imageGenerationTool ImageGenerationTool

Returns

Tool