Google's latest Imagen 4.0 text-to-image generation model with significantly better text rendering and overall image quality
Imagen 4.0 Generate 001 API OpenAI-compatible
Integrate Imagen 4.0 Generate 001 into your workflow via Lumenfall's OpenAI-compatible API to generate high-quality images and precise text-in-image renders.
https://api.lumenfall.ai/openai/v1
imagen-4.0-generate-001
Code Examples
Text to Image
/v1/images/generationscurl -X POST \
https://api.lumenfall.ai/openai/v1/images/generations \
-H "Authorization: Bearer $LUMENFALL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "imagen-4.0-generate-001",
"prompt": "",
"size": "1024x1024"
}'
# Response:
# { "created": 1234567890, "data": [{ "url": "https://...", "revised_prompt": "..." }] }
import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.lumenfall.ai/openai/v1'
});
const response = await client.images.generate({
model: 'imagen-4.0-generate-001',
prompt: '',
size: '1024x1024'
});
// { created: 1234567890, data: [{ url: "https://...", revised_prompt: "..." }] }
console.log(response.data[0].url);
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.lumenfall.ai/openai/v1"
)
response = client.images.generate(
model="imagen-4.0-generate-001",
prompt="",
size="1024x1024"
)
# { created: 1234567890, data: [{ url: "https://...", revised_prompt: "..." }] }
print(response.data[0].url)
Parameter Reference
Core Parameters
| Parameter | Type | Description | Modes |
|---|---|---|---|
prompt
|
string | Required. Text prompt for image generation |
T2I
|
negative_prompt
|
string | Negative prompt to guide generation away from undesired content |
T2I
|
seed
|
integer | Random seed for reproducibility |
T2I
|
Size & Layout
| Parameter | Type | Description | Modes |
|---|---|---|---|
size
|
string |
Image dimensions as WxH pixels (e.g. "1024x1024") or aspect ratio (e.g. "16:9")
WxH determines both shape and scale (aspect_ratio and resolution are ignored when size is provided). W:H format is equivalent to aspect_ratio.
|
T2I
|
aspect_ratio
|
string |
Aspect ratio of the output image (e.g. "16:9", "1:1")
9:16
3:4
1:1
4:3
16:9
Controls shape independently of scale. Use with resolution to control both. If size is also provided, size takes precedence. Any ratio is accepted and mapped to the nearest supported value.
|
T2I
|
resolution
|
string |
Output resolution tier (e.g. "1K", "4K")
1K
2K
Controls scale independently of shape. Higher tiers produce larger images and cost more. If size is also provided, size takes precedence for scale. Any tier is accepted and mapped to the nearest supported value.
|
T2I
|
1K 5 sizes
| Output |
size
|
aspect_ratio
+
resolution
|
|
|---|---|---|---|
| 1183 × 887 | "1183x887" |
or |
"4:3"
+
"1K"
|
| 1024 × 1024 | "1024x1024" |
or |
"1:1"
+
"1K"
|
| 887 × 1182 | "887x1182" |
or |
"3:4"
+
"1K"
|
| 768 × 1365 | "768x1365" |
or |
"9:16"
+
"1K"
|
| 1365 × 768 | "1365x768" |
or |
"16:9"
+
"1K"
|
2K 5 sizes
| Output |
size
|
aspect_ratio
+
resolution
|
|
|---|---|---|---|
| 1774 × 2365 | "1774x2365" |
or |
"3:4"
+
"2K"
|
| 2365 × 1774 | "2365x1774" |
or |
"4:3"
+
"2K"
|
| 1536 × 2731 | "1536x2731" |
or |
"9:16"
+
"2K"
|
| 2731 × 1536 | "2731x1536" |
or |
"16:9"
+
"2K"
|
| 2048 × 2048 | "2048x2048" |
or |
"1:1"
+
"2K"
|
How these parameters work
size
Exact pixel dimensions
"1920x1080"
aspect_ratio
Shape only, default scale
"16:9"
resolution
Scale tier, preserves shape
"1K"
Priority when combined
size is most specific and always wins. aspect_ratio and resolution control shape and scale independently.
How matching works
7:1 on a model with
4:1 and 8:1,
you get 8:1.
0.5K 1K 2K 4K)
or megapixel tiers (0.25 1).
If the exact tier isn't available, you get the nearest one.
Output & Format
| Parameter | Type | Description | Modes |
|---|---|---|---|
response_format
|
string |
How to return the image
url
b64_json
Default:
"url" |
T2I
|
output_format
|
string |
Output image format
png
jpeg
gif
webp
avif
Gateway converts to requested format if provider doesn't support it natively.
|
T2I
|
output_compression
|
integer | Compression level for lossy formats (JPEG, WebP, AVIF) |
T2I
|
n
|
integer |
Number of images to generate
Default:
1Gateway generates multiple images in parallel even if provider only supports 1.
|
T2I
|
Additional Parameters
| Parameter | Type | Description | Modes |
|---|---|---|---|
image_size
replicate
|
string |
Resolution of the generated image
1K
2K
|
T2I
|
personGeneration
gemini
|
string |
Whether to allow generation of people. 'allow_adult' permits adults only; 'dont_allow' blocks all human generation.
allow_adult
dont_allow
|
T2I
|
safety_filter_level
replicate
|
string |
block_low_and_above is strictest, block_medium_and_above blocks some prompts, block_only_high is most permissive but some prompts will still be blocked
block_low_and_above
block_medium_and_above
block_only_high
|
T2I
|
safety_tolerance
fal
|
string |
The safety tolerance level for content moderation. 1 is the most strict (blocks most content), 6 is the least strict.
1
2
3
4
5
6
|
T2I
|
sync_mode
fal
|
boolean | If `True`, the media will be returned as a data URI and the output data won't be available in the request history. |
T2I
|
Parameter Normalization
How we handle parameters across different providers
Not every provider speaks the same language. When you send a parameter, we handle it in one of four ways depending on what the model supports:
| Behavior | What happens | Example |
|---|---|---|
passthrough |
Sent as-is to the provider | style, quality |
renamed |
Same value, mapped to the field name the provider expects | prompt |
converted |
Transformed to the provider's native format | size |
emulated |
Works even if the provider has no concept of it | n, response_format |
Parameters we don't recognize pass straight through to the upstream API, so provider-specific options still work.