Class: OpenAI::Models::Beta::BetaTool::ImageGeneration

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/openai/models/beta/beta_tool.rb

Defined Under Namespace

Modules: Action, Background, InputFidelity, Model, Moderation, OutputFormat, Quality, Size Classes: InputImageMask

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, 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, #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(file_id: nil, image_url: nil) ⇒ Object

Some parameter documentations has been truncated, see InputImageMask for more details.

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

Parameters:

  • file_id (String) (defaults to: nil)

    File ID for the mask image.

  • image_url (String) (defaults to: nil)

    Base64-encoded mask image.



# File 'lib/openai/models/beta/beta_tool.rb', line 651

Instance Attribute Details

#actionSymbol, ...

Whether to generate a new image or edit an existing image. Default: auto.



557
# File 'lib/openai/models/beta/beta_tool.rb', line 557

optional :action, enum: -> { OpenAI::Beta::BetaTool::ImageGeneration::Action }

#backgroundSymbol, ...

Allows to set transparency for the background of the generated image(s). This parameter is only supported for GPT image models that support transparent backgrounds. 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 and gpt-image-2-2026-04-21 do not support transparent backgrounds. Requests with background set to transparent will return an error for these models; use opaque or auto instead.

If transparent, the output format needs to support transparency, so it should be set to either png (default value) or webp.



574
# File 'lib/openai/models/beta/beta_tool.rb', line 574

optional :background, enum: -> { OpenAI::Beta::BetaTool::ImageGeneration::Background }

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



583
584
585
586
587
# File 'lib/openai/models/beta/beta_tool.rb', line 583

optional :input_fidelity,
enum: -> {
  OpenAI::Beta::BetaTool::ImageGeneration::InputFidelity
},
nil?: true

#input_image_maskOpenAI::Models::Beta::BetaTool::ImageGeneration::InputImageMask?

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



594
# File 'lib/openai/models/beta/beta_tool.rb', line 594

optional :input_image_mask, -> { OpenAI::Beta::BetaTool::ImageGeneration::InputImageMask }

#modelString, ...

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



600
# File 'lib/openai/models/beta/beta_tool.rb', line 600

optional :model, union: -> { OpenAI::Beta::BetaTool::ImageGeneration::Model }

#moderationSymbol, ...

Moderation level for the generated image. Default: auto.



606
# File 'lib/openai/models/beta/beta_tool.rb', line 606

optional :moderation, enum: -> { OpenAI::Beta::BetaTool::ImageGeneration::Moderation }

#output_compressionInteger?

Compression level for the output image. Default: 100.

Returns:

  • (Integer, nil)


612
# File 'lib/openai/models/beta/beta_tool.rb', line 612

optional :output_compression, Integer

#output_formatSymbol, ...

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



619
# File 'lib/openai/models/beta/beta_tool.rb', line 619

optional :output_format, enum: -> { OpenAI::Beta::BetaTool::ImageGeneration::OutputFormat }

#partial_imagesInteger?

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

Returns:

  • (Integer, nil)


626
# File 'lib/openai/models/beta/beta_tool.rb', line 626

optional :partial_images, Integer

#qualitySymbol, ...

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



633
# File 'lib/openai/models/beta/beta_tool.rb', line 633

optional :quality, enum: -> { OpenAI::Beta::BetaTool::ImageGeneration::Quality }

#sizeString, ...

The size of the generated images. For gpt-image-2 and gpt-image-2-2026-04-21, 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.



649
# File 'lib/openai/models/beta/beta_tool.rb', line 649

optional :size, union: -> { OpenAI::Beta::BetaTool::ImageGeneration::Size }

#typeSymbol, :image_generation

The type of the image generation tool. Always image_generation.

Returns:

  • (Symbol, :image_generation)


551
# File 'lib/openai/models/beta/beta_tool.rb', line 551

required :type, const: :image_generation

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/openai/models/beta/beta_tool.rb', line 691