@google/genai 1.17.0 → 1.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/web/web.d.ts CHANGED
@@ -437,6 +437,22 @@ export declare class Batches extends BaseModule {
437
437
  * ```
438
438
  */
439
439
  create: (params: types.CreateBatchJobParameters) => Promise<types.BatchJob>;
440
+ /**
441
+ * **Experimental** Creates an embedding batch job.
442
+ *
443
+ * @param params - The parameters for create embedding batch job request.
444
+ * @return The created batch job.
445
+ *
446
+ * @example
447
+ * ```ts
448
+ * const response = await ai.batches.createEmbeddings({
449
+ * model: 'text-embedding-004',
450
+ * src: {fileName: 'files/my_embedding_input'},
451
+ * });
452
+ * console.log(response);
453
+ * ```
454
+ */
455
+ createEmbeddings: (params: types.CreateEmbeddingsBatchJobParameters) => Promise<types.BatchJob>;
440
456
  /**
441
457
  * Lists batch job configurations.
442
458
  *
@@ -452,6 +468,11 @@ export declare class Batches extends BaseModule {
452
468
  * ```
453
469
  */
454
470
  list: (params?: types.ListBatchJobsParameters) => Promise<Pager<types.BatchJob>>;
471
+ private createInlinedGenerateContentRequest;
472
+ private createInlinedEmbedContentRequest;
473
+ private getGcsUri;
474
+ private getBigqueryUri;
475
+ private formatDestination;
455
476
  /**
456
477
  * Internal method to create batch job.
457
478
  *
@@ -460,6 +481,14 @@ export declare class Batches extends BaseModule {
460
481
  *
461
482
  */
462
483
  private createInternal;
484
+ /**
485
+ * Internal method to create batch job.
486
+ *
487
+ * @param params - The parameters for create batch job request.
488
+ * @return The created batch job.
489
+ *
490
+ */
491
+ private createEmbeddingsInternal;
463
492
  /**
464
493
  * Gets batch job configurations.
465
494
  *
@@ -558,6 +587,11 @@ export declare interface BatchJobDestination {
558
587
  the input requests.
559
588
  */
560
589
  inlinedResponses?: InlinedResponse[];
590
+ /** The responses to the requests in the batch. Returned when the batch was
591
+ built using inlined requests. The responses will be in the same order as
592
+ the input requests.
593
+ */
594
+ inlinedEmbedContentResponses?: InlinedEmbedContentResponse[];
561
595
  }
562
596
 
563
597
  export declare type BatchJobDestinationUnion = BatchJobDestination | string;
@@ -1351,6 +1385,35 @@ export declare interface CreateChatParameters {
1351
1385
  history?: Content[];
1352
1386
  }
1353
1387
 
1388
+ /** Config for optional parameters. */
1389
+ export declare interface CreateEmbeddingsBatchJobConfig {
1390
+ /** Used to override HTTP request options. */
1391
+ httpOptions?: HttpOptions;
1392
+ /** Abort signal which can be used to cancel the request.
1393
+
1394
+ NOTE: AbortSignal is a client-only operation. Using it to cancel an
1395
+ operation will not cancel the request in the service. You will still
1396
+ be charged usage for any applicable operations.
1397
+ */
1398
+ abortSignal?: AbortSignal;
1399
+ /** The user-defined name of this BatchJob.
1400
+ */
1401
+ displayName?: string;
1402
+ }
1403
+
1404
+ /** Config for batches.create parameters. */
1405
+ export declare interface CreateEmbeddingsBatchJobParameters {
1406
+ /** The name of the model to produces the predictions via the BatchJob.
1407
+ */
1408
+ model?: string;
1409
+ /** input data to run batch job".
1410
+ */
1411
+ src: EmbeddingsBatchJobSource;
1412
+ /** Optional parameters for creating a BatchJob.
1413
+ */
1414
+ config?: CreateEmbeddingsBatchJobConfig;
1415
+ }
1416
+
1354
1417
  /** Used to override the default configuration. */
1355
1418
  export declare interface CreateFileConfig {
1356
1419
  /** Used to override HTTP request options. */
@@ -1454,6 +1517,8 @@ export declare interface CreateTuningJobConfig {
1454
1517
  batchSize?: number;
1455
1518
  /** The learning rate hyperparameter for tuning. If not set, a default of 0.001 or 0.0002 will be calculated based on the number of training examples. */
1456
1519
  learningRate?: number;
1520
+ /** Optional. The labels with user-defined metadata to organize TuningJob and generated resources such as Model and Endpoint. Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. See https://goo.gl/xmQnxf for more information and examples of labels. */
1521
+ labels?: Record<string, string>;
1457
1522
  }
1458
1523
 
1459
1524
  /** Supervised fine-tuning job creation parameters - optional fields. */
@@ -1794,6 +1859,16 @@ export declare enum EditMode {
1794
1859
  EDIT_MODE_PRODUCT_IMAGE = "EDIT_MODE_PRODUCT_IMAGE"
1795
1860
  }
1796
1861
 
1862
+ /** Parameters for the embed_content method. */
1863
+ export declare interface EmbedContentBatch {
1864
+ /** The content to embed. Only the `parts.text` fields will be counted.
1865
+ */
1866
+ contents?: ContentListUnion;
1867
+ /** Configuration that contains optional parameters.
1868
+ */
1869
+ config?: EmbedContentConfig;
1870
+ }
1871
+
1797
1872
  /** Optional parameters for the embed_content method. */
1798
1873
  export declare interface EmbedContentConfig {
1799
1874
  /** Used to override HTTP request options. */
@@ -1862,6 +1937,16 @@ export declare class EmbedContentResponse {
1862
1937
  metadata?: EmbedContentMetadata;
1863
1938
  }
1864
1939
 
1940
+ export declare interface EmbeddingsBatchJobSource {
1941
+ /** The Gemini Developer API's file resource name of the input data
1942
+ (e.g. "files/12345").
1943
+ */
1944
+ fileName?: string;
1945
+ /** The Gemini Developer API's inlined input data to run batch job.
1946
+ */
1947
+ inlinedRequests?: EmbedContentBatch;
1948
+ }
1949
+
1865
1950
  /** Represents a customer-managed encryption key spec that can be applied to a top-level resource. */
1866
1951
  export declare interface EncryptionSpec {
1867
1952
  /** Required. The Cloud KMS resource identifier of the customer managed encryption key used to protect a resource. Has the form: `projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key`. The key needs to be in the same region as where the compute resource is created. */
@@ -2866,6 +2951,8 @@ export declare interface GenerateVideosConfig {
2866
2951
  be associated with a type. Veo 2 supports up to 3 asset images *or* 1
2867
2952
  style image. */
2868
2953
  referenceImages?: VideoGenerationReferenceImage[];
2954
+ /** The mask to use for generating videos. */
2955
+ mask?: VideoGenerationMask;
2869
2956
  /** Compression quality of the generated videos. */
2870
2957
  compressionQuality?: VideoCompressionQuality;
2871
2958
  }
@@ -2882,13 +2969,13 @@ export declare class GenerateVideosOperation implements Operation<GenerateVideos
2882
2969
  error?: Record<string, unknown>;
2883
2970
  /** The generated videos. */
2884
2971
  response?: GenerateVideosResponse;
2885
- /** The full HTTP response. */
2886
- sdkHttpResponse?: HttpResponse;
2887
2972
  /**
2888
2973
  * Instantiates an Operation of the same type as the one being called with the fields set from the API response.
2889
2974
  * @internal
2890
2975
  */
2891
2976
  _fromAPIResponse({ apiResponse, isVertexAI, }: OperationFromAPIResponseParameters): Operation<GenerateVideosResponse>;
2977
+ /** The full HTTP response. */
2978
+ sdkHttpResponse?: HttpResponse;
2892
2979
  }
2893
2980
 
2894
2981
  /** Class that represents the parameters for generating videos. */
@@ -3667,6 +3754,16 @@ export declare enum ImagePromptLanguage {
3667
3754
  es = "es"
3668
3755
  }
3669
3756
 
3757
+ /** Config for `inlined_embedding_responses` parameter. */
3758
+ export declare class InlinedEmbedContentResponse {
3759
+ /** The response to the request.
3760
+ */
3761
+ response?: SingleEmbedContentResponse;
3762
+ /** The error encountered while processing the request.
3763
+ */
3764
+ error?: JobError;
3765
+ }
3766
+
3670
3767
  /** Config for inlined request. */
3671
3768
  export declare interface InlinedRequest {
3672
3769
  /** ID of the model to use. For a list of models, see `Google models
@@ -5521,12 +5618,14 @@ export declare interface Part {
5521
5618
  /** An opaque signature for the thought so it can be reused in subsequent requests.
5522
5619
  * @remarks Encoded as base64 string. */
5523
5620
  thoughtSignature?: string;
5621
+ /** A predicted [FunctionCall] returned from the model that contains a string
5622
+ representing the [FunctionDeclaration.name] and a structured JSON object
5623
+ containing the parameters and their values. */
5624
+ functionCall?: FunctionCall;
5524
5625
  /** Optional. Result of executing the [ExecutableCode]. */
5525
5626
  codeExecutionResult?: CodeExecutionResult;
5526
5627
  /** Optional. Code generated by the model that is meant to be executed. */
5527
5628
  executableCode?: ExecutableCode;
5528
- /** Optional. A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] with the parameters and their values. */
5529
- functionCall?: FunctionCall;
5530
5629
  /** Optional. The result output of a [FunctionCall] that contains a string representing the [FunctionDeclaration.name] and a structured JSON object containing any output from the function call. It is used as context to the model. */
5531
5630
  functionResponse?: FunctionResponse;
5532
5631
  /** Optional. Text part (can be code). */
@@ -6284,6 +6383,16 @@ export declare interface SessionResumptionConfig {
6284
6383
  */
6285
6384
  export declare function setDefaultBaseUrls(baseUrlParams: BaseUrlParameters): void;
6286
6385
 
6386
+ /** Config for `response` parameter. */
6387
+ export declare class SingleEmbedContentResponse {
6388
+ /** The response to the request.
6389
+ */
6390
+ embedding?: ContentEmbedding;
6391
+ /** The error encountered while processing the request.
6392
+ */
6393
+ tokenCount?: string;
6394
+ }
6395
+
6287
6396
  /** Context window will be truncated by keeping only suffix of it.
6288
6397
 
6289
6398
  Context window will always be cut at start of USER role turn. System
@@ -7018,9 +7127,9 @@ declare namespace types {
7018
7127
  VideoMetadata,
7019
7128
  Blob_2 as Blob,
7020
7129
  FileData,
7130
+ FunctionCall,
7021
7131
  CodeExecutionResult,
7022
7132
  ExecutableCode,
7023
- FunctionCall,
7024
7133
  FunctionResponse,
7025
7134
  Part,
7026
7135
  Content,
@@ -7166,6 +7275,7 @@ declare namespace types {
7166
7275
  Video,
7167
7276
  GenerateVideosSource,
7168
7277
  VideoGenerationReferenceImage,
7278
+ VideoGenerationMask,
7169
7279
  GenerateVideosConfig,
7170
7280
  GenerateVideosParameters,
7171
7281
  GeneratedVideo,
@@ -7236,10 +7346,16 @@ declare namespace types {
7236
7346
  BatchJobSource,
7237
7347
  JobError,
7238
7348
  InlinedResponse,
7349
+ SingleEmbedContentResponse,
7350
+ InlinedEmbedContentResponse,
7239
7351
  BatchJobDestination,
7240
7352
  CreateBatchJobConfig,
7241
7353
  CreateBatchJobParameters,
7242
7354
  BatchJob,
7355
+ EmbedContentBatch,
7356
+ EmbeddingsBatchJobSource,
7357
+ CreateEmbeddingsBatchJobConfig,
7358
+ CreateEmbeddingsBatchJobParameters,
7243
7359
  GetBatchJobConfig,
7244
7360
  GetBatchJobParameters,
7245
7361
  CancelBatchJobConfig,
@@ -7634,6 +7750,16 @@ export declare enum VideoCompressionQuality {
7634
7750
  LOSSLESS = "LOSSLESS"
7635
7751
  }
7636
7752
 
7753
+ /** A mask for video generation. */
7754
+ export declare interface VideoGenerationMask {
7755
+ /** The image mask to use for generating videos. */
7756
+ image?: Image_2;
7757
+ /** Describes how the mask will be used. Inpainting masks must
7758
+ match the aspect ratio of the input video. Outpainting masks can be
7759
+ either 9:16 or 16:9. */
7760
+ maskMode?: string;
7761
+ }
7762
+
7637
7763
  /** A reference image for video generation. */
7638
7764
  export declare interface VideoGenerationReferenceImage {
7639
7765
  /** The reference image. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@google/genai",
3
- "version": "1.17.0",
3
+ "version": "1.19.0",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "dist/node/index.mjs",