Class: OpenAI::Models::ImageEditParams

Inherits:
Internal::Type::BaseModel show all
Extended by:
Internal::Type::RequestParameters::Converter
Includes:
Internal::Type::RequestParameters
Defined in:
lib/openai/models/image_edit_params.rb,
sig/openai/models/image_edit_params.rbs

Overview

See Also:

  • OpenAI::Resources::Images#edit
  • OpenAI::Resources::Images#edit_stream_raw

Defined Under Namespace

Modules: Background, Image, InputFidelity, Model, OutputFormat, Quality, ResponseFormat, Size

Instance Attribute Summary collapse

Attributes included from Internal::Type::RequestParameters

#request_options

Attributes inherited from Internal::Type::BaseModel

#last_response

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Internal::Type::RequestParameters::Converter

dump_request

Methods included from Internal::Type::RequestParameters

included

Methods inherited from Internal::Type::BaseModel

==, #==, #[], #_request_id, #_set_last_response, coerce, #deconstruct_keys, #deep_to_h, dump, #encode_with, fields, hash, #hash, inherited, #inspect, inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, coerce_with_error, dump, #dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(image:, prompt:, background: nil, input_fidelity: nil, mask: nil, model: nil, n: nil, output_compression: nil, output_format: nil, partial_images: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) ⇒ Object

Parameters:

  • image (Pathname, StringIO, IO, String, OpenAI::FilePart, Array<Pathname, StringIO, IO, String, OpenAI::FilePart>)

    The image(s) to edit. Must be a supported image file or an array of images.

    For the GPT image models (gpt-image-1, gpt-image-1-mini, gpt-image-1.5, gpt-image-2, gpt-image-2-2026-04-21, gpt-image-2.5-sunburst, gpt-image-2.5-sunburst-2026-09-08, gpt-image-2.5-flare, gpt-image-2.5-flare-2026-09-08, and chatgpt-image-latest), each image should be a png, webp, or jpg file less than 50MB. You can provide up to 16 images.

    For dall-e-2, you can only provide one image, and it should be a square png file less than 4MB.

    String, StringIO, and pathless IO inputs are sent with generic upload metadata. Use OpenAI::FilePart when you need to override the filename or content type.

  • prompt (String)

    A text description of the desired image(s). The maximum length is 1000 characters for dall-e-2, and 32000 characters for the GPT image models.

  • background (Symbol, OpenAI::Models::ImageEditParams::Background, nil) (defaults to: nil)

    Allows to set transparency for the background of the generated image(s). Must be one of transparent, opaque, or auto (default value). When auto is used, the model will automatically determine the best background for the image.

    gpt-image-2.5-sunburst and gpt-image-2.5-flare, including their 2026-09-08 snapshots, support opaque and transparent backgrounds. Transparent backgrounds are available for supported GPT Image models. For gpt-image-2 and gpt-image-2-2026-04-21, this support is in preview. When using transparent, set the output format to png or webp.

  • input_fidelity (Symbol, OpenAI::Models::ImageEditParams::InputFidelity, nil) (defaults to: nil)

    Control how much effort the model will exert to match the style and features, especially facial features, of input images. This parameter is only supported for gpt-image-1 and gpt-image-1.5 and later models, unsupported for gpt-image-1-mini. Supports high and low. Defaults to low.

  • mask (Pathname, StringIO, IO, String, OpenAI::FilePart) (defaults to: nil)

    An additional image whose fully transparent areas (e.g. where alpha is zero) indicate where image should be edited. If there are multiple images provided, the mask will be applied on the first image. Must be a valid PNG file, less than 4MB, and have the same dimensions as image.

    String, StringIO, and pathless IO inputs are sent with generic upload metadata. Use OpenAI::FilePart when you need to override the filename or content type.

  • model (String, Symbol, OpenAI::Models::ImageModel, nil) (defaults to: nil)

    The model to use for image generation. One of dall-e-2 or a GPT image model (gpt-image-1, gpt-image-1-mini, gpt-image-1.5, gpt-image-2, gpt-image-2-2026-04-21, gpt-image-2.5-sunburst, gpt-image-2.5-sunburst-2026-09-08, gpt-image-2.5-flare, gpt-image-2.5-flare-2026-09-08, or chatgpt-image-latest). Defaults to gpt-image-1.5.

  • n (Integer, nil) (defaults to: nil)

    The number of images to generate. Must be between 1 and 10.

  • output_compression (Integer, nil) (defaults to: nil)

    The compression level (0-100%) for the generated images. This parameter is only supported for the GPT image models with the webp or jpeg output formats, and defaults to 100.

  • output_format (Symbol, OpenAI::Models::ImageEditParams::OutputFormat, nil) (defaults to: nil)

    The format in which the generated images are returned. This parameter is only supported for the GPT image models. Must be one of png, jpeg, or webp. The default value is png.

  • partial_images (Integer, nil) (defaults to: nil)

    The number of partial images to generate. This parameter is used for streaming responses that return partial images. Value must be between 0 and 3. When set to 0, the response will be a single image sent in one streaming event.

    Note that the final image may be sent before the full number of partial images are generated if the full image is generated more quickly.

  • quality (Symbol, OpenAI::Models::ImageEditParams::Quality, nil) (defaults to: nil)

    The quality of the image that will be generated for GPT image models. The GPT image models support low, medium, and high. gpt-image-2.5-sunburst and gpt-image-2.5-flare, including their 2026-09-08 snapshots, also support xhigh and max. Defaults to auto.

  • response_format (Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil) (defaults to: nil)

    The format in which the generated images are returned. Must be one of url or b64_json. URLs are only valid for 60 minutes after the image has been generated. This parameter is only supported for dall-e-2 (default is url for dall-e-2), as GPT image models always return base64-encoded images.

  • size (String, Symbol, OpenAI::Models::ImageEditParams::Size, nil) (defaults to: nil)

    The size of the generated images. For gpt-image-2, gpt-image-2-2026-04-21, gpt-image-2.5-sunburst, gpt-image-2.5-sunburst-2026-09-08, gpt-image-2.5-flare, and gpt-image-2.5-flare-2026-09-08, arbitrary resolutions are supported as WIDTHxHEIGHT strings, for example 1536x864. Width and height must both be divisible by 16 and the requested aspect ratio must be between 1:3 and 3:1. Resolutions above 2560x1440 are experimental, and the maximum supported resolution is 3840x2160. The requested size must also satisfy the model's current pixel and edge limits. The standard sizes 1024x1024, 1536x1024, and 1024x1536 are supported by the GPT image models; auto is supported for models that allow automatic sizing. For dall-e-2, use one of 256x256, 512x512, or 1024x1024. For dall-e-3, use one of 1024x1024, 1792x1024, or 1024x1792.

  • user (String) (defaults to: nil)

    A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse. Learn more.

  • request_options (OpenAI::RequestOptions, Hash{Symbol=>Object}) (defaults to: {})


# File 'lib/openai/models/image_edit_params.rb', line 162

Instance Attribute Details

#backgroundSymbol, ...

Allows to set transparency for the background of the generated image(s). Must be one of transparent, opaque, or auto (default value). When auto is used, the model will automatically determine the best background for the image.

gpt-image-2.5-sunburst and gpt-image-2.5-flare, including their 2026-09-08 snapshots, support opaque and transparent backgrounds. Transparent backgrounds are available for supported GPT Image models. For gpt-image-2 and gpt-image-2-2026-04-21, this support is in preview. When using transparent, set the output format to png or webp.

Parameters:

  • value (OpenAI::Models::ImageEditParams::background, nil)

Returns:



51
# File 'lib/openai/models/image_edit_params.rb', line 51

optional :background, enum: -> { OpenAI::ImageEditParams::Background }, nil?: true

#imagePathname, ...

The image(s) to edit. Must be a supported image file or an array of images.

For the GPT image models (gpt-image-1, gpt-image-1-mini, gpt-image-1.5, gpt-image-2, gpt-image-2-2026-04-21, gpt-image-2.5-sunburst, gpt-image-2.5-sunburst-2026-09-08, gpt-image-2.5-flare, gpt-image-2.5-flare-2026-09-08, and chatgpt-image-latest), each image should be a png, webp, or jpg file less than 50MB. You can provide up to 16 images.

For dall-e-2, you can only provide one image, and it should be a square png file less than 4MB.

String, StringIO, and pathless IO inputs are sent with generic upload metadata. Use OpenAI::FilePart when you need to override the filename or content type.

Parameters:

  • value (OpenAI::Models::ImageEditParams::image)

Returns:



30
# File 'lib/openai/models/image_edit_params.rb', line 30

required :image, union: -> { OpenAI::ImageEditParams::Image }

#input_fidelitySymbol, ...

Control how much effort the model will exert to match the style and features, especially facial features, of input images. This parameter is only supported for gpt-image-1 and gpt-image-1.5 and later models, unsupported for gpt-image-1-mini. Supports high and low. Defaults to low.

Parameters:

  • value (OpenAI::Models::ImageEditParams::input_fidelity, nil)

Returns:



60
# File 'lib/openai/models/image_edit_params.rb', line 60

optional :input_fidelity, enum: -> { OpenAI::ImageEditParams::InputFidelity }, nil?: true

#maskPathname, ...

An additional image whose fully transparent areas (e.g. where alpha is zero) indicate where image should be edited. If there are multiple images provided, the mask will be applied on the first image. Must be a valid PNG file, less than 4MB, and have the same dimensions as image.

String, StringIO, and pathless IO inputs are sent with generic upload metadata. Use OpenAI::FilePart when you need to override the filename or content type.

Parameters:

  • (OpenAI::Internal::file_input)

Returns:



73
# File 'lib/openai/models/image_edit_params.rb', line 73

optional :mask, OpenAI::Internal::Type::FileInput

#modelString, ...

The model to use for image generation. One of dall-e-2 or a GPT image model (gpt-image-1, gpt-image-1-mini, gpt-image-1.5, gpt-image-2, gpt-image-2-2026-04-21, gpt-image-2.5-sunburst, gpt-image-2.5-sunburst-2026-09-08, gpt-image-2.5-flare, gpt-image-2.5-flare-2026-09-08, or chatgpt-image-latest). Defaults to gpt-image-1.5.

Parameters:

  • value (OpenAI::Models::ImageEditParams::model, nil)

Returns:



84
# File 'lib/openai/models/image_edit_params.rb', line 84

optional :model, union: -> { OpenAI::ImageEditParams::Model }, nil?: true

#nInteger?

The number of images to generate. Must be between 1 and 10.

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


90
# File 'lib/openai/models/image_edit_params.rb', line 90

optional :n, Integer, nil?: true

#output_compressionInteger?

The compression level (0-100%) for the generated images. This parameter is only supported for the GPT image models with the webp or jpeg output formats, and defaults to 100.

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


98
# File 'lib/openai/models/image_edit_params.rb', line 98

optional :output_compression, Integer, nil?: true

#output_formatSymbol, ...

The format in which the generated images are returned. This parameter is only supported for the GPT image models. Must be one of png, jpeg, or webp. The default value is png.

Parameters:

  • value (OpenAI::Models::ImageEditParams::output_format, nil)

Returns:



106
# File 'lib/openai/models/image_edit_params.rb', line 106

optional :output_format, enum: -> { OpenAI::ImageEditParams::OutputFormat }, nil?: true

#partial_imagesInteger?

The number of partial images to generate. This parameter is used for streaming responses that return partial images. Value must be between 0 and 3. When set to 0, the response will be a single image sent in one streaming event.

Note that the final image may be sent before the full number of partial images are generated if the full image is generated more quickly.

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


117
# File 'lib/openai/models/image_edit_params.rb', line 117

optional :partial_images, Integer, nil?: true

#promptString

A text description of the desired image(s). The maximum length is 1000 characters for dall-e-2, and 32000 characters for the GPT image models.

Parameters:

  • value (String)

Returns:

  • (String)


37
# File 'lib/openai/models/image_edit_params.rb', line 37

required :prompt, String

#qualitySymbol, ...

The quality of the image that will be generated for GPT image models. The GPT image models support low, medium, and high. gpt-image-2.5-sunburst and gpt-image-2.5-flare, including their 2026-09-08 snapshots, also support xhigh and max. Defaults to auto.

Parameters:

  • value (OpenAI::Models::ImageEditParams::quality, nil)

Returns:



126
# File 'lib/openai/models/image_edit_params.rb', line 126

optional :quality, enum: -> { OpenAI::ImageEditParams::Quality }, nil?: true

#response_formatSymbol, ...

The format in which the generated images are returned. Must be one of url or b64_json. URLs are only valid for 60 minutes after the image has been generated. This parameter is only supported for dall-e-2 (default is url for dall-e-2), as GPT image models always return base64-encoded images.

Parameters:

  • value (OpenAI::Models::ImageEditParams::response_format, nil)

Returns:



135
# File 'lib/openai/models/image_edit_params.rb', line 135

optional :response_format, enum: -> { OpenAI::ImageEditParams::ResponseFormat }, nil?: true

#sizeString, ...

The size of the generated images. For gpt-image-2, gpt-image-2-2026-04-21, gpt-image-2.5-sunburst, gpt-image-2.5-sunburst-2026-09-08, gpt-image-2.5-flare, and gpt-image-2.5-flare-2026-09-08, arbitrary resolutions are supported as WIDTHxHEIGHT strings, for example 1536x864. Width and height must both be divisible by 16 and the requested aspect ratio must be between 1:3 and 3:1. Resolutions above 2560x1440 are experimental, and the maximum supported resolution is 3840x2160. The requested size must also satisfy the model's current pixel and edge limits. The standard sizes 1024x1024, 1536x1024, and 1024x1536 are supported by the GPT image models; auto is supported for models that allow automatic sizing. For dall-e-2, use one of 256x256, 512x512, or 1024x1024. For dall-e-3, use one of 1024x1024, 1792x1024, or 1024x1792.

Parameters:

  • value (OpenAI::Models::ImageEditParams::size, nil)

Returns:



152
# File 'lib/openai/models/image_edit_params.rb', line 152

optional :size, union: -> { OpenAI::ImageEditParams::Size }, nil?: true

#userString?

A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse. Learn more.

Parameters:

  • (String)

Returns:

  • (String, nil)


160
# File 'lib/openai/models/image_edit_params.rb', line 160

optional :user, String

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/openai/models/image_edit_params.rb', line 314

.variantsArray(String, Symbol, OpenAI::Models::ImageModel)

Returns:



# File 'lib/openai/models/image_edit_params.rb', line 346

Instance Method Details

#to_hash{

Returns:

  • ({)


76
# File 'sig/openai/models/image_edit_params.rbs', line 76

def to_hash: -> {