Imagen 3
Model Overview
Google's latest text-to-image AI model, designed to generate high-quality, photorealistic images from text descriptions with improved detail, lighting, and fewer artifacts. It boasts enhanced natural language understanding and better text rendering.
Setup your API Key
If you don’t have an API key for the AI/ML API yet, feel free to use our Quickstart guide.
API Schema
The text prompt describing the content, style, or composition of the image to be generated.
If True, the URL to the image will be returned; otherwise, the file will be provided in base64 format.
falseThe number of images to generate.
1The same seed and the same prompt given to the same version of the model will output the same image every time.
Optional parameter to use an LLM-based prompt rewriting feature for higher-quality images that better match the original prompt. Disabling it may affect image quality and prompt alignment.
trueThe aspect ratio of the generated image.
1:1Possible values: Allow generation of people.
allow_adultPossible values: Adds a filter level to safety filtering.
block_medium_and_abovePossible values: Add an invisible watermark to the generated images.
falseSuccessfully generated image
async function main() {
const response = await fetch('https://api.aimlapi.com/v1/images/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer <YOUR_AIMLAPI_KEY>',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: 'imagen-3.0-generate-002',
prompt: 'A T-Rex relaxing on a beach, lying on a sun lounger and wearing sunglasses.',
}),
});
const data = await response.json();
console.log(JSON.stringify(data, null, 2));
}
main();Successfully generated image
{
"status": "text",
"prompt": [
"text"
],
"model": "text",
"model_owner": "text",
"tags": {
"ANY_ADDITIONAL_PROPERTY": null
},
"num_returns": 1,
"args": {
"model": "text",
"prompt": "text",
"n": 1,
"steps": 1,
"size": "text"
},
"subjobs": [],
"output": {
"choices": [
{
"image_base64": "text"
}
]
}
}Quick Example
Let's generate an image of the specified size using a simple prompt.
import requests
import json # for getting a structured output with indentation
def main():
response = requests.post(
"https://api.aimlapi.com/v1/images/generations",
headers={
# Insert your AIML API Key instead of <YOUR_AIMLAPI_KEY>:
"Authorization": "Bearer <YOUR_AIMLAPI_KEY>",
"Content-Type": "application/json",
},
json={
"prompt": "Racoon eating ice-cream",
"model": "imagen-3.0-generate-002",
"convert_base64_to_url": True,
}
)
data = response.json()
print(json.dumps(data, indent=2, ensure_ascii=False))
if __name__ == "__main__":
main()async function main() {
const response = await fetch('https://api.aimlapi.com/v1/images/generations', {
method: 'POST',
headers: {
// Insert your AIML API Key instead of <YOUR_AIMLAPI_KEY>:
'Authorization': 'Bearer <YOUR_AIMLAPI_KEY>',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: 'imagen-3.0-generate-002',
prompt: 'A T-Rex relaxing on a beach, lying on a sun lounger and wearing sunglasses.',
convert_base64_to_url: true
}),
});
const data = await response.json();
console.log(data);
}
main();Note that prompt enhancement is enabled by default. The model will also return the enhanced prompt in the response. If you prefer not to use this feature, set the parameter enhance_prompt to False.
Default aspect ratio is 1:1, so we obtained the following 1024x1024 image by running this code example:

Last updated
Was this helpful?