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.
| Model Info | |
|---|---|
| More information | link ↗ | 
| Beta | Yes | 
| Unit Pricing | $0.00 per step | 
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
-  
promptstring required min 1A text description of the image you want to generate
 -  
negative_promptstringText describing elements to avoid in the generated image
 -  
heightinteger min 256 max 2048The height of the generated image in pixels
 -  
widthinteger min 256 max 2048The width of the generated image in pixels
 -  
imagearrayFor use with img2img tasks. An array of integers that represent the image data constrained to 8-bit unsigned integer values
-  
itemsnumberA value between 0 and 255
 
 -  
 -  
image_b64stringFor use with img2img tasks. A base64-encoded string of the input image
 -  
maskarrayAn array representing An array of integers that represent mask image data for inpainting constrained to 8-bit unsigned integer values
-  
itemsnumberA value between 0 and 255
 
 -  
 -  
num_stepsinteger default 20 max 20The number of diffusion steps; higher values can improve quality but take longer
 -  
strengthnumber 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
 -  
guidancenumber default 7.5Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt
 -  
seedintegerRandom seed for reproducibility of the image generation
 
Output
The binding returns a ReadableStream with the image in
					JPEG or PNG format (check the model's output schema).
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"}Was this helpful?
- Resources
 - API
 - New to Cloudflare?
 - Directory
 - Sponsorships
 - Open Source
 
- Support
 - Help Center
 - System Status
 - Compliance
 - GDPR
 
- Company
 - cloudflare.com
 - Our team
 - Careers
 
- © 2025 Cloudflare, Inc.
 - Privacy Policy
 - Terms of Use
 - Report Security Issues
 - Trademark