Method: Stability::Client#generate_sd3
- Defined in:
- lib/stability/client.rb
#generate_sd3(prompt, options: {}, json: false) ⇒ Object
Performs a text-to-image or image-to-image generation request to the Stability API using Stable Diffusion 3.
87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
# File 'lib/stability/client.rb', line 87 def generate_sd3(prompt, options: {}, json: false) headers = { "Accept" => json ? "application/json" : "image/*" } parameters = { prompt: }.merge() # Ensure required parameters for image-to-image mode if parameters[:mode] == "image-to-image" raise ArgumentError, "image is required for image-to-image mode" unless parameters[:image] raise ArgumentError, "strength is required for image-to-image mode" unless parameters[:strength] end multipart_post(path: "/stable-image/generate/sd3", headers:, parameters:).tap do |response| raise ServerError, "Empty response from Stability. Might be worth retrying once or twice." if response.blank? raise ServerError, response.dig("error", "message") if response.dig("error", "message").present? end.with_indifferent_access end |