stable-diffusion-xl-lightning Beta
Text-to-Image • bytedanceSDXL-Lightning is a lightning-fast text-to-image generation model. It can generate high-quality 1024px images in a few steps.
Usage
Workers - TypeScript
export interface Env { AI: Ai;}
export default { async fetch(request, env): Promise<Response> {
const inputs = { prompt: "cyberpunk cat", };
const response = await env.AI.run( "@cf/bytedance/stable-diffusion-xl-lightning", inputs );
return new Response(response, { headers: { "content-type": "image/jpg", }, }); },} satisfies ExportedHandler<Env>;
curl
curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run/@cf/bytedance/stable-diffusion-xl-lightning \ -X POST \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ -d '{ "prompt": "cyberpunk cat" }'
Parameters
* indicates a required field
Input
-
prompt *
string min 1A text description of the image you want to generate
-
negative_prompt
stringText describing elements to avoid in the generated image
-
height
integer min 256 max 2048The height of the generated image in pixels
-
width
integer min 256 max 2048The width of the generated image in pixels
-
image
arrayFor use with img2img tasks. An array of integers that represent the image data constrained to 8-bit unsigned integer values
-
items
numberA value between 0 and 255
-
-
image_b64
stringFor use with img2img tasks. A base64-encoded string of the input image
-
mask
arrayAn array representing An array of integers that represent mask image data for inpainting constrained to 8-bit unsigned integer values
-
items
numberA value between 0 and 255
-
-
num_steps
integer default 20 max 20The number of diffusion steps; higher values can improve quality but take longer
-
strength
number default 1A value between 0 and 1 indicating how strongly to apply the transformation during img2img tasks; lower values make the output closer to the input image
-
guidance
number default 7.5Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt
-
seed
integerRandom seed for reproducibility of the image generation
Output
API Schemas
The following schemas are based on JSON Schema
{ "type": "object", "properties": { "prompt": { "type": "string", "minLength": 1, "description": "A text description of the image you want to generate" }, "negative_prompt": { "type": "string", "description": "Text describing elements to avoid in the generated image" }, "height": { "type": "integer", "minimum": 256, "maximum": 2048, "description": "The height of the generated image in pixels" }, "width": { "type": "integer", "minimum": 256, "maximum": 2048, "description": "The width of the generated image in pixels" }, "image": { "type": "array", "description": "For use with img2img tasks. An array of integers that represent the image data constrained to 8-bit unsigned integer values", "items": { "type": "number", "description": "A value between 0 and 255" } }, "image_b64": { "type": "string", "description": "For use with img2img tasks. A base64-encoded string of the input image" }, "mask": { "type": "array", "description": "An array representing An array of integers that represent mask image data for inpainting constrained to 8-bit unsigned integer values", "items": { "type": "number", "description": "A value between 0 and 255" } }, "num_steps": { "type": "integer", "default": 20, "maximum": 20, "description": "The number of diffusion steps; higher values can improve quality but take longer" }, "strength": { "type": "number", "default": 1, "description": "A value between 0 and 1 indicating how strongly to apply the transformation during img2img tasks; lower values make the output closer to the input image" }, "guidance": { "type": "number", "default": 7.5, "description": "Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt" }, "seed": { "type": "integer", "description": "Random seed for reproducibility of the image generation" } }, "required": [ "prompt" ]}
{ "type": "string", "contentType": "image/png", "format": "binary", "description": "The generated image in PNG format"}