Skip to content
b

flux-1-schnell Beta

Text-to-Imageblack-forest-labs
@cf/black-forest-labs/flux-1-schnell

FLUX.1 [schnell] is a 12 billion parameter rectified flow transformer capable of generating images from text descriptions.

    Usage

    Workers - Returning a data URI - TypeScript

    export interface Env {
    AI: Ai;
    }
    export default {
    async fetch(request, env): Promise<Response> {
    const response = await env.AI.run('@cf/black-forest-labs/flux-1-schnell', {
    prompt: 'a cyberpunk lizard',
    });
    // response.image is base64 encoded which can be used directly as an <img src=""> data URI
    const dataURI = `data:image/jpeg;charset=utf-8;base64,${response.image}`;
    return Response.json({ dataURI });
    },
    } satisfies ExportedHandler<Env>;

    Workers - Returning an image - TypeScript

    export interface Env {
    AI: Ai;
    }
    export default {
    async fetch(request, env): Promise<Response> {
    const response = await env.AI.run('@cf/black-forest-labs/flux-1-schnell', {
    prompt: 'a cyberpunk lizard',
    });
    // Convert from base64 string
    const binaryString = atob(response.image);
    // Create byte representation
    const img = Uint8Array.from(binaryString, (m) => m.codePointAt(0));
    return new Response(img, {
    headers: {
    'Content-Type': 'image/jpeg',
    },
    });
    },
    } satisfies ExportedHandler<Env>;

    curl

    Terminal window
    curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run/@cf/black-forest-labs/flux-1-schnell \
    -X POST \
    -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    -d '{ "prompt": "cyberpunk cat" }'

    Parameters

    Input

    • prompt string min 1

      A text description of the image you want to generate

    • num_steps integer default 4 max 8

      The number of diffusion steps; higher values can improve quality but take longer

    Output

    • image string

      The generated image in Base64 format.

    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"
    },
    "num_steps": {
    "type": "integer",
    "default": 4,
    "maximum": 8,
    "description": "The number of diffusion steps; higher values can improve quality but take longer"
    }
    },
    "required": [
    "prompt"
    ]
    }