Class ImageGenerationRequest
Creates an image given a prompt.
public sealed class ImageGenerationRequest- Inheritance
- 
      
      ImageGenerationRequest
- Inherited Members
Constructors
ImageGenerationRequest(string, Model, int?, string, ImageResponseFormat, string, int?, string, string, string, string, string)
Constructor.
public ImageGenerationRequest(string prompt, Model model = null, int? numberOfResults = null, string quality = null, ImageResponseFormat responseFormat = (ImageResponseFormat)0, string outputFormat = null, int? outputCompression = null, string size = null, string moderation = null, string background = null, string style = null, string user = null)Parameters
- promptstring
- A text description of the desired image(s). The maximum length is 32000 characters for - gpt-image-1, 1000 characters for- dall-e-2and 4000 characters for- dall-e-3.
- modelModel
- The model to use for image generation. One of - dall-e-2,- dall-e-3, or- gpt-image-1. Defaults to- dall-e-2unless a parameter specific to- gpt-image-1is used.
- numberOfResultsint?
- The number of images to generate. Must be between 1 and 10. For dall-e-3, only n=1 is supported. 
- qualitystring
- The quality of the image that will be generated. - auto(default value) will automatically select the best quality for the given model.
- high,- mediumand- loware supported for- gpt-image-1.
- hdand- standardare supported for- dall-e-3.
- standardis the only option for- dall-e-2.
 
- responseFormatImageResponseFormat
- The format in which generated images with - dall-e-2and- dall-e-3are returned. Must be one of- urlor- b64_json. URLs are only valid for 60 minutes after the image has been generated.- gpt-image-1does not support urls and only supports base64-encoded images.
- outputFormatstring
- The format in which the generated images are returned. Must be one of - png,- jpeg, or- webp.
 This parameter is only supported for- gpt-image-1.
- outputCompressionint?
- The compression level (0-100%) for the generated images. 
 This parameter is only supported for the- webpor- jpegoutput formats, and defaults to 100.
 This parameter is only supported for- gpt-image-1.
- sizestring
- The size of the generated images. Must be one of - 1024x1024,- 1536x1024(landscape),- 1024x1536(portrait), or- auto(default value) for- gpt-image-1, one of- 256x256,- 512x512, or- 1024x1024for- dall-e-2, and one of- 1024x1024,- 1792x1024, or- 1024x1792for- dall-e-3.
- moderationstring
- Control the content-moderation level for images generated by - gpt-image-1. Must be either- lowfor less restrictive filtering or- auto(default value).
 This parameter is only supported for- gpt-image-1.
- backgroundstring
- Allows to set transparency for the background of the generated image(s). Must be one of - transparent,- opaqueor- auto(default value). When- autois used, the model will automatically determine the best background for the image. If- transparent, the output format needs to support transparency, so it should be set to either- png(default value) or- webp.
 This parameter is only supported for- gpt-image-1.
- stylestring
- The style of the generated images. Must be one of - vividor- natural. Vivid causes the model to lean towards generating hyper-real and dramatic images. Natural causes the model to produce more natural, less hyper-real looking images.
 This parameter is only supported for- dall-e-3.
- userstring
- A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse. 
Properties
Background
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.
If transparent, the output format needs to support transparency,
so it should be set to either png (default value) or webp.
[JsonPropertyName("background")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
[FunctionProperty("Allows to set transparency for the background of the generated image(s). This parameter is only supported for `gpt-image-1`. 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. If `transparent`, the output format needs to support transparency, so it should be set to either `png` (default value) or `webp`.", false, null, new object[] { "transparent", "opaque", "auto" })]
public string Background { get; }Property Value
Remarks
This parameter is only supported for gpt-image-1
Model
The model to use for image generation. One of dall-e-2, dall-e-3, or gpt-image-1.
Defaults to dall-e-2 unless a parameter specific to gpt-image-1 is used.
[JsonPropertyName("model")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
[FunctionProperty("The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` is used.", true, null, new object[] { "dall-e-2", "dall-e-3", "gpt-image-1" })]
public string Model { get; }Property Value
Moderation
Control the content-moderation level for images generated by gpt-image-1. Must be either low for less restrictive filtering or auto (default value).
[JsonPropertyName("moderation")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
[FunctionProperty("Control the content-moderation level for images generated by `gpt-image-1`. Must be either `low` for less restrictive filtering or `auto` (default value).", false, null, new object[] { "auto", "low" })]
public string Moderation { get; }Property Value
Remarks
This parameter is only supported for gpt-image-1
Number
The number of images to generate. Must be between 1 and 10. For dall-e-3, only n=1 is supported.
[JsonPropertyName("n")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[FunctionProperty("The number of images to generate. Must be between 1 and 10. For dall-e-3, only n=1 is supported.", true, 1, new object[] { })]
public int? Number { get; }Property Value
- int?
OutputCompression
The compression level (0-100%) for the generated images.
This parameter is only supported the webp or jpeg output formats, and defaults to 100.
[JsonPropertyName("output_compression")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[FunctionProperty("The compression level (0-100%) for the generated images. This parameter is only supported for `gpt-image-1` with the `webp` or `jpeg` output formats, and defaults to 100.", false, null, new object[] { })]
public int? OutputCompression { get; }Property Value
- int?
Remarks
This parameter is only supported for gpt-image-1
OutputFormat
The format in which the generated images are returned.
Must be one of png, jpeg, or webp.
[JsonPropertyName("output_format")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
[FunctionProperty("The format in which the generated images are returned. This parameter is only supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`.", false, "png", new object[] { "png", "jpeg", "webp" })]
public string OutputFormat { get; }Property Value
Remarks
This parameter is only supported for gpt-image-1.
Prompt
A text description of the desired image(s).
The maximum length is 32000 characters for gpt-image-1, 1000 characters for dall-e-2 and 4000 characters for dall-e-3.
[JsonPropertyName("prompt")]
[FunctionProperty("A text description of the desired image(s). The maximum length is 32000 characters for `gpt-image-1`, 1000 characters for `dall-e-2` and 4000 characters for `dall-e-3`.", true, null, new object[] { })]
public string Prompt { get; }Property Value
Quality
The quality of the image that will be generated.
- auto(default value) will automatically select the best quality for the given model.
- high,- mediumand- loware supported for- gpt-image-1.
- hdand- standardare supported for- dall-e-3.
- standardis the only option for- dall-e-2.
[JsonPropertyName("quality")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[FunctionProperty("The quality of the image that will be generated.\n- `auto` (default value) will automatically select the best quality for the given model.\n- `high`, `medium` and `low` are supported for `gpt-image-1`.\n- `hd` and `standard` are supported for `dall-e-3`.\n- `standard` is the only option for `dall-e-2`.", false, null, new object[] { "auto", "high", "hd", "standard" })]
public string Quality { get; }Property Value
ResponseFormat
The format in which generated images with dall-e-2 and dall-e-3
are returned. Must be one of url or b64_json. URLs are only
valid for 60 minutes after the image has been generated.
[JsonPropertyName("response_format")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
[JsonConverter(typeof(JsonStringEnumConverter<ImageResponseFormat>))]
[FunctionProperty("The format in which generated images with `dall-e-2` and `dall-e-3` are returned. Must be one of `url` or `b64_json`. URLs are only valid for 60 minutes after the image has been generated. `gpt-image-1` does not support urls and only supports base64-encoded images.", false, null, new object[] { })]
public ImageResponseFormat ResponseFormat { get; }Property Value
Remarks
gpt-image-1 does not support urls and only supports base64-encoded images.
Size
The size of the generated images.
Must be one of 1024x1024, 1536x1024 (landscape), 1024x1536 (portrait), or auto (default value) for gpt-image-1,
one of 256x256, 512x512, or 1024x1024 for dall-e-2, and one of 1024x1024, 1792x1024, or 1024x1792 for dall-e-3.
[JsonPropertyName("size")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
[FunctionProperty("The size of the generated images. Must be one of `1024x1024`, `1536x1024` (landscape), `1024x1536` (portrait), or `auto` (default value) for `gpt-image-1`, one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`, and one of `1024x1024`, `1792x1024`, or `1024x1792` for `dall-e-3`.", false, null, new object[] { "256x256", "512x512", "1024x1024", "1536x1024", "1024x1536", "1792x1024", "1024x1792", "auto" })]
public string Size { get; }Property Value
Style
The style of the generated images. Must be one of vivid or natural.
Vivid causes the model to lean towards generating hyper-real and dramatic images.
Natural causes the model to produce more natural, less hyper-real looking images.
[JsonPropertyName("style")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
[FunctionProperty("The style of the generated images. This parameter is only supported for `dall-e-3`. Must be one of `vivid` or `natural`. Vivid causes the model to lean towards generating hyper-real and dramatic images. Natural causes the model to produce more natural, less hyper-real looking images.", false, null, new object[] { "vivid", "natural" })]
public string Style { get; }Property Value
Remarks
This parameter is only supported for dall-e-3.
User
A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse.
[JsonPropertyName("user")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[FunctionProperty("A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse.", false, null, new object[] { })]
public string User { get; }