ImagenModel class

This API is provided as a preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.

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

ConstructorModifiersDescription
(constructor)(ai, modelParams, requestOptions)(Public Preview) Constructs a new instance of the ImagenModel class.

Properties

PropertyModifiersTypeDescription
generationConfigImagenGenerationConfig(Public Preview) The Imagen generation configuration.
requestOptionsRequestOptions | undefined(Public Preview)
safetySettingsImagenSafetySettings(Public Preview) Safety settings for filtering inappropriate content.

Methods

MethodModifiersDescription
generateImages(prompt)(Public Preview) Generates images using the Imagen model and returns them as base64-encoded strings.

ImagenModel.(constructor)

This API is provided as a preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.

Constructs a new instance of the ImagenModel class.

Signature:

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

Parameters

ParameterTypeDescription
aiAIan AI instance.
modelParamsImagenModelParamsParameters to use when making requests to Imagen.
requestOptionsRequestOptions | undefinedAdditional options to use when making requests.

Exceptions

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

ImagenModel.generationConfig

This API is provided as a preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.

The Imagen generation configuration.

Signature:

generationConfig?: ImagenGenerationConfig;

ImagenModel.requestOptions

This API is provided as a preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.

Signature:

requestOptions?: RequestOptions | undefined;

ImagenModel.safetySettings

This API is provided as a preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.

Safety settings for filtering inappropriate content.

Signature:

safetySettings?: ImagenSafetySettings;

ImagenModel.generateImages()

This API is provided as a preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.

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): Promise<ImagenGenerationResponse<ImagenInlineImage>>;

Parameters

ParameterTypeDescription
promptstringA text prompt describing the image(s) to generate.

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);
}