Skip to content

Commit 886a4df

Browse files
committed
Update to match API changes
1 parent bfc2c0f commit 886a4df

15 files changed

+218
-317
lines changed

common/api-review/vertexai.api.md

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,9 @@ export interface ImagenGCSImage {
447447

448448
// @public
449449
export interface ImagenGenerationConfig {
450+
addWatermark?: boolean;
450451
aspectRatio?: ImagenAspectRatio;
452+
imageFormat?: ImagenImageFormat;
451453
negativePrompt?: string;
452454
numberOfImages?: number;
453455
}
@@ -461,7 +463,7 @@ export interface ImagenGenerationResponse<T extends ImagenInlineImage | ImagenGC
461463
// @public
462464
export class ImagenImageFormat {
463465
compressionQuality?: number;
464-
static jpeg(compressionQuality: number): ImagenImageFormat;
466+
static jpeg(compressionQuality?: number): ImagenImageFormat;
465467
mimeType: string;
466468
static png(): ImagenImageFormat;
467469
}
@@ -475,23 +477,19 @@ export interface ImagenInlineImage {
475477
// @public
476478
export class ImagenModel extends VertexAIModel {
477479
constructor(vertexAI: VertexAI, modelParams: ImagenModelParams, requestOptions?: RequestOptions | undefined);
478-
generateImages(prompt: string, imagenRequestOptions?: ImagenGenerationConfig): Promise<ImagenGenerationResponse<ImagenInlineImage>>;
479-
generateImagesGCS(prompt: string, gcsURI: string, imagenRequestOptions?: ImagenGenerationConfig): Promise<ImagenGenerationResponse<ImagenGCSImage>>;
480-
readonly modelConfig: ImagenModelConfig;
480+
generateImages(prompt: string): Promise<ImagenGenerationResponse<ImagenInlineImage>>;
481+
generateImagesGCS(prompt: string, gcsURI: string): Promise<ImagenGenerationResponse<ImagenGCSImage>>;
482+
readonly generationConfig?: ImagenGenerationConfig;
481483
// (undocumented)
482484
readonly requestOptions?: RequestOptions | undefined;
485+
readonly safetySettings?: ImagenSafetySettings;
483486
}
484487

485488
// @public
486-
export interface ImagenModelConfig {
487-
addWatermark?: boolean;
488-
imageFormat?: ImagenImageFormat;
489-
safetySettings?: ImagenSafetySettings;
490-
}
491-
492-
// @public
493-
export interface ImagenModelParams extends ImagenModelConfig {
489+
export interface ImagenModelParams {
490+
generationConfig?: ImagenGenerationConfig;
494491
model: string;
492+
safetySettings?: ImagenSafetySettings;
495493
}
496494

497495
// @public

docs-devsite/_toc.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -540,8 +540,6 @@ toc:
540540
path: /docs/reference/js/vertexai.imageninlineimage.md
541541
- title: ImagenModel
542542
path: /docs/reference/js/vertexai.imagenmodel.md
543-
- title: ImagenModelConfig
544-
path: /docs/reference/js/vertexai.imagenmodelconfig.md
545543
- title: ImagenModelParams
546544
path: /docs/reference/js/vertexai.imagenmodelparams.md
547545
- title: ImagenSafetySettings

docs-devsite/vertexai.imagengenerationconfig.md

Lines changed: 31 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ https://github.com/firebase/firebase-js-sdk
1010
{% endcomment %}
1111

1212
# ImagenGenerationConfig interface
13-
Request-level configuration options for generating images with Imagen.
13+
Configuration options for generating images with Imagen.
14+
15+
See the \[Google Cloud Docs\](https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/imagen-api\#rest\_1).
1416

1517
<b>Signature:</b>
1618

@@ -22,23 +24,45 @@ export interface ImagenGenerationConfig
2224

2325
| Property | Type | Description |
2426
| --- | --- | --- |
25-
| [aspectRatio](./vertexai.imagengenerationconfig.md#imagengenerationconfigaspectratio) | [ImagenAspectRatio](./vertexai.md#imagenaspectratio) | The aspect ratio of the generated images. Defaults to <code>1:1</code>. |
26-
| [negativePrompt](./vertexai.imagengenerationconfig.md#imagengenerationconfignegativeprompt) | string | A text prompt describing what should not be included in the image. |
27-
| [numberOfImages](./vertexai.imagengenerationconfig.md#imagengenerationconfignumberofimages) | number | The number of images to generate. Must be between 1 and 4. Defaults to 1. |
27+
| [addWatermark](./vertexai.imagengenerationconfig.md#imagengenerationconfigaddwatermark) | boolean | If true, adds a SynthID watermark to the generated images. |
28+
| [aspectRatio](./vertexai.imagengenerationconfig.md#imagengenerationconfigaspectratio) | [ImagenAspectRatio](./vertexai.md#imagenaspectratio) | The aspect ratio of the generated images. The default value is 1:1. used. |
29+
| [imageFormat](./vertexai.imagengenerationconfig.md#imagengenerationconfigimageformat) | [ImagenImageFormat](./vertexai.imagenimageformat.md#imagenimageformat_class) | The image format of the generated images. The default is PNG. |
30+
| [negativePrompt](./vertexai.imagengenerationconfig.md#imagengenerationconfignegativeprompt) | string | A description of what should be omitted from the generated images. |
31+
| [numberOfImages](./vertexai.imagengenerationconfig.md#imagengenerationconfignumberofimages) | number | The number of images to generate. Must be between 1 and 4. The default value is 1. |
32+
33+
## ImagenGenerationConfig.addWatermark
34+
35+
If true, adds a SynthID watermark to the generated images.
36+
37+
<b>Signature:</b>
38+
39+
```typescript
40+
addWatermark?: boolean;
41+
```
2842

2943
## ImagenGenerationConfig.aspectRatio
3044

31-
The aspect ratio of the generated images. Defaults to `1:1`<!-- -->.
45+
The aspect ratio of the generated images. The default value is 1:1. used.
3246

3347
<b>Signature:</b>
3448

3549
```typescript
3650
aspectRatio?: ImagenAspectRatio;
3751
```
3852

53+
## ImagenGenerationConfig.imageFormat
54+
55+
The image format of the generated images. The default is PNG.
56+
57+
<b>Signature:</b>
58+
59+
```typescript
60+
imageFormat?: ImagenImageFormat;
61+
```
62+
3963
## ImagenGenerationConfig.negativePrompt
4064

41-
A text prompt describing what should not be included in the image.
65+
A description of what should be omitted from the generated images.
4266

4367
<b>Signature:</b>
4468

@@ -48,7 +72,7 @@ negativePrompt?: string;
4872

4973
## ImagenGenerationConfig.numberOfImages
5074

51-
The number of images to generate. Must be between 1 and 4. Defaults to 1.
75+
The number of images to generate. Must be between 1 and 4. The default value is 1.
5276

5377
<b>Signature:</b>
5478

docs-devsite/vertexai.imagenimageformat.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ Creates an ImagenImageFormat for a JPEG image.
6161
<b>Signature:</b>
6262

6363
```typescript
64-
static jpeg(compressionQuality: number): ImagenImageFormat;
64+
static jpeg(compressionQuality?: number): ImagenImageFormat;
6565
```
6666

6767
#### Parameters

docs-devsite/vertexai.imagenmodel.md

Lines changed: 30 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,16 @@ export declare class ImagenModel extends VertexAIModel
3131
3232
| Property | Modifiers | Type | Description |
3333
| --- | --- | --- | --- |
34-
| [modelConfig](./vertexai.imagenmodel.md#imagenmodelmodelconfig) | | [ImagenModelConfig](./vertexai.imagenmodelconfig.md#imagenmodelconfig_interface) | Model-level configurations to use when using Imagen. |
34+
| [generationConfig](./vertexai.imagenmodel.md#imagenmodelgenerationconfig) | | [ImagenGenerationConfig](./vertexai.imagengenerationconfig.md#imagengenerationconfig_interface) | The Imagen Generation Configuration. |
3535
| [requestOptions](./vertexai.imagenmodel.md#imagenmodelrequestoptions) | | [RequestOptions](./vertexai.requestoptions.md#requestoptions_interface) \| undefined | |
36+
| [safetySettings](./vertexai.imagenmodel.md#imagenmodelsafetysettings) | | [ImagenSafetySettings](./vertexai.imagensafetysettings.md#imagensafetysettings_interface) | Safety settings for filtering inappropriate content. |
3637
3738
## Methods
3839
3940
| Method | Modifiers | Description |
4041
| --- | --- | --- |
41-
| [generateImages(prompt, imagenRequestOptions)](./vertexai.imagenmodel.md#imagenmodelgenerateimages) | | Generates images using the Imagen model and returns them as base64-encoded strings. |
42-
| [generateImagesGCS(prompt, gcsURI, imagenRequestOptions)](./vertexai.imagenmodel.md#imagenmodelgenerateimagesgcs) | | Generates images to Google Cloud Storage (GCS) using the Imagen model. |
42+
| [generateImages(prompt)](./vertexai.imagenmodel.md#imagenmodelgenerateimages) | | Generates images using the Imagen model and returns them as base64-encoded strings. |
43+
| [generateImagesGCS(prompt, gcsURI)](./vertexai.imagenmodel.md#imagenmodelgenerateimagesgcs) | | Generates images to Google Cloud Storage (GCS) using the Imagen model. |
4344
4445
## ImagenModel.(constructor)
4546
@@ -63,14 +64,14 @@ constructor(vertexAI: VertexAI, modelParams: ImagenModelParams, requestOptions?:
6364
6465
If the `apiKey` or `projectId` fields are missing in your Firebase config.
6566
66-
## ImagenModel.modelConfig
67+
## ImagenModel.generationConfig
6768
68-
Model-level configurations to use when using Imagen.
69+
The Imagen Generation Configuration.
6970
7071
<b>Signature:</b>
7172
7273
```typescript
73-
readonly modelConfig: ImagenModelConfig;
74+
readonly generationConfig?: ImagenGenerationConfig;
7475
```
7576
7677
## ImagenModel.requestOptions
@@ -81,24 +82,33 @@ readonly modelConfig: ImagenModelConfig;
8182
readonly requestOptions?: RequestOptions | undefined;
8283
```
8384
85+
## ImagenModel.safetySettings
86+
87+
Safety settings for filtering inappropriate content.
88+
89+
<b>Signature:</b>
90+
91+
```typescript
92+
readonly safetySettings?: ImagenSafetySettings;
93+
```
94+
8495
## ImagenModel.generateImages()
8596
8697
Generates images using the Imagen model and returns them as base64-encoded strings.
8798
88-
If one or more images are filtered, the returned object will have a defined `filteredReason` property. If all images are filtered, the `images` array will be empty, and no error will be thrown.
99+
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.
89100
90101
<b>Signature:</b>
91102
92103
```typescript
93-
generateImages(prompt: string, imagenRequestOptions?: ImagenGenerationConfig): Promise<ImagenGenerationResponse<ImagenInlineImage>>;
104+
generateImages(prompt: string): Promise<ImagenGenerationResponse<ImagenInlineImage>>;
94105
```
95106
96107
#### Parameters
97108
98109
| Parameter | Type | Description |
99110
| --- | --- | --- |
100111
| prompt | string | The text prompt used to generate the images. |
101-
| imagenRequestOptions | [ImagenGenerationConfig](./vertexai.imagengenerationconfig.md#imagengenerationconfig_interface) | Configuration options for the Imagen generation request. See [ImagenGenerationConfig](./vertexai.imagengenerationconfig.md#imagengenerationconfig_interface)<!-- -->. |
102112
103113
<b>Returns:</b>
104114
@@ -114,12 +124,12 @@ If the request to generate images fails. This happens if the prompt is blocked.
114124
115125
Generates images to Google Cloud Storage (GCS) using the Imagen model.
116126
117-
If one or more images are filtered due to safety reasons, the returned object will have a defined `filteredReason` property. If all images are filtered, the `images` array will be empty, and no error will be thrown.
127+
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.
118128
119129
<b>Signature:</b>
120130
121131
```typescript
122-
generateImagesGCS(prompt: string, gcsURI: string, imagenRequestOptions?: ImagenGenerationConfig): Promise<ImagenGenerationResponse<ImagenGCSImage>>;
132+
generateImagesGCS(prompt: string, gcsURI: string): Promise<ImagenGenerationResponse<ImagenGCSImage>>;
123133
```
124134
125135
#### Parameters
@@ -128,7 +138,6 @@ generateImagesGCS(prompt: string, gcsURI: string, imagenRequestOptions?: ImagenG
128138
| --- | --- | --- |
129139
| prompt | string | The text prompt used to generate the images. |
130140
| gcsURI | string | The GCS URI where the images should be stored. This should be a directory. For example, <code>gs://my-bucket/my-directory/</code>. |
131-
| imagenRequestOptions | [ImagenGenerationConfig](./vertexai.imagengenerationconfig.md#imagengenerationconfig_interface) | Configuration options for the Imagen generation request. See [ImagenGenerationConfig](./vertexai.imagengenerationconfig.md#imagengenerationconfig_interface)<!-- -->. |
132141
133142
<b>Returns:</b>
134143
@@ -144,12 +153,17 @@ If the request fails to generate images fails. This happens if the prompt is blo
144153
145154
146155
```javascript
147-
const imagen = new ImagenModel(vertexAI, {
148-
model: 'imagen-3.0-generate-001'
149-
});
156+
const imagen = new ImagenModel(
157+
vertexAI,
158+
{
159+
model: 'imagen-3.0-generate-001'
160+
}
161+
);
150162

151163
const response = await imagen.generateImages('A photo of a cat');
152-
console.log(response.images[0].bytesBase64Encoded);
164+
if (response.images.length > 0) {
165+
console.log(response.images[0].bytesBase64Encoded);
166+
}
153167

154168
```
155169

docs-devsite/vertexai.imagenmodelconfig.md

Lines changed: 0 additions & 57 deletions
This file was deleted.

docs-devsite/vertexai.imagenmodelparams.md

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,26 @@ Parameters for configuring an [ImagenModel](./vertexai.imagenmodel.md#imagenmode
1515
<b>Signature:</b>
1616

1717
```typescript
18-
export interface ImagenModelParams extends ImagenModelConfig
18+
export interface ImagenModelParams
1919
```
20-
<b>Extends:</b> [ImagenModelConfig](./vertexai.imagenmodelconfig.md#imagenmodelconfig_interface)
2120

2221
## Properties
2322

2423
| Property | Type | Description |
2524
| --- | --- | --- |
25+
| [generationConfig](./vertexai.imagenmodelparams.md#imagenmodelparamsgenerationconfig) | [ImagenGenerationConfig](./vertexai.imagengenerationconfig.md#imagengenerationconfig_interface) | The Imagen Generation Configuration. |
2626
| [model](./vertexai.imagenmodelparams.md#imagenmodelparamsmodel) | string | The Imagen model to use for generating images. For example: <code>imagen-3.0-generate-001</code>. |
27+
| [safetySettings](./vertexai.imagenmodelparams.md#imagenmodelparamssafetysettings) | [ImagenSafetySettings](./vertexai.imagensafetysettings.md#imagensafetysettings_interface) | Safety settings for filtering inappropriate content. |
28+
29+
## ImagenModelParams.generationConfig
30+
31+
The Imagen Generation Configuration.
32+
33+
<b>Signature:</b>
34+
35+
```typescript
36+
generationConfig?: ImagenGenerationConfig;
37+
```
2738

2839
## ImagenModelParams.model
2940

@@ -34,3 +45,13 @@ The Imagen model to use for generating images. For example: `imagen-3.0-generate
3445
```typescript
3546
model: string;
3647
```
48+
49+
## ImagenModelParams.safetySettings
50+
51+
Safety settings for filtering inappropriate content.
52+
53+
<b>Signature:</b>
54+
55+
```typescript
56+
safetySettings?: ImagenSafetySettings;
57+
```

docs-devsite/vertexai.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ The Vertex AI in Firebase Web SDK.
5454
| [HarmSeverity](./vertexai.md#harmseverity) | Harm severity levels. |
5555
| [ImagenAspectRatio](./vertexai.md#imagenaspectratio) | Aspect ratios for Imagen images. |
5656
| [ImagenPersonFilterLevel](./vertexai.md#imagenpersonfilterlevel) | Person filter levels for Imagen. |
57-
| [ImagenSafetyFilterLevel](./vertexai.md#imagensafetyfilterlevel) | Safety filter levels for Imagen. |
57+
| [ImagenSafetyFilterLevel](./vertexai.md#imagensafetyfilterlevel) | Safety filter levels for Imagen |
5858
| [SchemaType](./vertexai.md#schematype) | Contains the list of OpenAPI data types as defined by the [OpenAPI specification](https://swagger.io/docs/specification/data-models/data-types/) |
5959
| [VertexAIErrorCode](./vertexai.md#vertexaierrorcode) | Standardized error codes that <code>[VertexAIError](./vertexai.vertexaierror.md#vertexaierror_class)</code> can have. |
6060

@@ -91,10 +91,9 @@ The Vertex AI in Firebase Web SDK.
9191
| [GroundingAttribution](./vertexai.groundingattribution.md#groundingattribution_interface) | |
9292
| [GroundingMetadata](./vertexai.groundingmetadata.md#groundingmetadata_interface) | Metadata returned to client when grounding is enabled. |
9393
| [ImagenGCSImage](./vertexai.imagengcsimage.md#imagengcsimage_interface) | An image generated by Imagen, stored in Google Cloud Storage (GCS). |
94-
| [ImagenGenerationConfig](./vertexai.imagengenerationconfig.md#imagengenerationconfig_interface) | Request-level configuration options for generating images with Imagen. |
94+
| [ImagenGenerationConfig](./vertexai.imagengenerationconfig.md#imagengenerationconfig_interface) | Configuration options for generating images with Imagen.<!-- -->See the \[Google Cloud Docs\](https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/imagen-api\#rest\_1). |
9595
| [ImagenGenerationResponse](./vertexai.imagengenerationresponse.md#imagengenerationresponse_interface) | The response from a request to generate images with Imagen. |
9696
| [ImagenInlineImage](./vertexai.imageninlineimage.md#imageninlineimage_interface) | An image generated by Imagen, represented as inline bytes. |
97-
| [ImagenModelConfig](./vertexai.imagenmodelconfig.md#imagenmodelconfig_interface) | Model-level configuration options for Imagen. |
9897
| [ImagenModelParams](./vertexai.imagenmodelparams.md#imagenmodelparams_interface) | Parameters for configuring an [ImagenModel](./vertexai.imagenmodel.md#imagenmodel_class)<!-- -->. |
9998
| [ImagenSafetySettings](./vertexai.imagensafetysettings.md#imagensafetysettings_interface) | Safety settings for Imagen. |
10099
| [InlineDataPart](./vertexai.inlinedatapart.md#inlinedatapart_interface) | Content part interface if the part represents an image. |
@@ -439,7 +438,7 @@ export declare enum ImagenPersonFilterLevel
439438

440439
## ImagenSafetyFilterLevel
441440

442-
Safety filter levels for Imagen.
441+
Safety filter levels for Imagen
443442

444443
<b>Signature:</b>
445444

0 commit comments

Comments
 (0)