Class: RunApi::GptImage::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/runapi/gpt_image/client.rb

Overview

GPT Image 1.5 image generation API client.

Examples:

client = RunApi::GptImage::Client.new(api_key: "your-api-key")

# Text-to-image
result = client.text_to_image.run(
  model: "gpt-image/1.5-text-to-image", prompt: "A futuristic cityscape"
)

# Image-to-image
edited = client.edit_image.run(
  model: "gpt-image/1.5-image-to-image",
  prompt: "Transform into oil painting",
  input_urls: ["https://example.com/photo.jpg"]
)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key: nil, **options) ⇒ Client

Returns a new instance of Client.



27
28
29
30
31
32
33
34
# File 'lib/runapi/gpt_image/client.rb', line 27

def initialize(api_key: nil, **options)
  @api_key = Core::Auth.resolve_api_key(api_key)

  client_options = Core::ClientOptions.new(api_key: @api_key, **options)
  http = client_options.http_client || Core::HttpClient.new(client_options)
  @text_to_image = Resources::TextToImage.new(http)
  @edit_image = Resources::EditImage.new(http)
end

Instance Attribute Details

#edit_imageResources::EditImage (readonly)

Returns Image-to-image edit operations.

Returns:



25
26
27
# File 'lib/runapi/gpt_image/client.rb', line 25

def edit_image
  @edit_image
end

#text_to_imageResources::TextToImage (readonly)

Returns Text-to-image generation operations.

Returns:



23
24
25
# File 'lib/runapi/gpt_image/client.rb', line 23

def text_to_image
  @text_to_image
end