ImagenModel class

All Imagen models are deprecated and will shut down as early as June 2026. As a replacement, you can migrate your apps to use Gemini Image models (the "Nano Banana" models).

Class for Imagen model APIs.

This class provides methods for generating images using the Imagen model.

Signature:

export declare class ImagenModel extends AIModel 

Extends: AIModel

Constructors

Constructor Modifiers Description
(constructor)(ai, modelParams, requestOptions) Constructs a new instance of the ImagenModel class.

Properties

Property Modifiers Type Description
generationConfig ImagenGenerationConfig The Imagen generation configuration.
requestOptions RequestOptions | undefined
safetySettings ImagenSafetySettings Safety settings for filtering inappropriate content.

Methods

Method Modifiers Description
generateImages(prompt, singleRequestOptions) Generates images using the Imagen model and returns them as base64-encoded strings.

ImagenModel.(constructor)

Constructs a new instance of the ImagenModel class.

Signature:

constructor(ai: AI, modelParams: ImagenModelParams, requestOptions?: RequestOptions | undefined);

Parameters

Parameter Type Description
ai AI an AI instance.
modelParams ImagenModelParams Parameters to use when making requests to Imagen.
requestOptions RequestOptions | undefined Additional options to use when making requests.

Exceptions

If the apiKey or projectId fields are missing in your Firebase config.

ImagenModel.generationConfig

The Imagen generation configuration.

Signature:

generationConfig?: ImagenGenerationConfig;

ImagenModel.requestOptions

Signature:

requestOptions?: RequestOptions | undefined;

ImagenModel.safetySettings

Safety settings for filtering inappropriate content.

Signature:

safetySettings?: ImagenSafetySettings;

ImagenModel.generateImages()

Generates images using the Imagen model and returns them as base64-encoded strings.

If the prompt was not blocked, but one or more of the generated images were filtered, the returned object will have a filteredReason property. If all images are filtered, the images array will be empty.

Signature:

generateImages(prompt: string, singleRequestOptions?: SingleRequestOptions): Promise<ImagenGenerationResponse<ImagenInlineImage>>;

Parameters

Parameter Type Description
prompt string A text prompt describing the image(s) to generate.
singleRequestOptions SingleRequestOptions

Returns:

Promise<ImagenGenerationResponse<ImagenInlineImage>>

A promise that resolves to an ImagenGenerationResponse object containing the generated images.

Exceptions

If the request to generate images fails. This happens if the prompt is blocked.

Example

const imagen = new ImagenModel(
  ai,
  {
    model: 'imagen-3.0-generate-002'
  }
);

const response = await imagen.generateImages('A photo of a cat');
if (response.images.length > 0) {
  console.log(response.images[0].bytesBase64Encoded);
}