@google/genai 1.29.0 → 1.30.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.
@@ -1,4 +1,3 @@
1
- // @ts-ignore
2
1
  import type { Client } from '@modelcontextprotocol/sdk/client/index.js';
3
2
  import { GoogleAuthOptions } from 'google-auth-library';
4
3
 
@@ -1558,7 +1557,7 @@ export declare function createModelContent(partOrString: PartListUnion | string)
1558
1557
  /**
1559
1558
  * Creates a `Part` object from a `base64` encoded `string`.
1560
1559
  */
1561
- export declare function createPartFromBase64(data: string, mimeType: string): Part;
1560
+ export declare function createPartFromBase64(data: string, mimeType: string, mediaResolution?: PartMediaResolutionLevel): Part;
1562
1561
 
1563
1562
  /**
1564
1563
  * Creates a `Part` object from the `outcome` and `output` of a `CodeExecutionResult` object.
@@ -1588,7 +1587,7 @@ export declare function createPartFromText(text: string): Part;
1588
1587
  /**
1589
1588
  * Creates a `Part` object from a `URI` string.
1590
1589
  */
1591
- export declare function createPartFromUri(uri: string, mimeType: string): Part;
1590
+ export declare function createPartFromUri(uri: string, mimeType: string, mediaResolution?: PartMediaResolutionLevel): Part;
1592
1591
 
1593
1592
  /** Fine-tuning job creation request - optional fields. */
1594
1593
  export declare interface CreateTuningJobConfig {
@@ -2719,6 +2718,10 @@ export declare interface FunctionCall {
2719
2718
  args?: Record<string, unknown>;
2720
2719
  /** Optional. The name of the function to call. Matches [FunctionDeclaration.name]. */
2721
2720
  name?: string;
2721
+ /** Optional. The partial argument value of the function call. If provided, represents the arguments/fields that are streamed incrementally. This field is not supported in Gemini API. */
2722
+ partialArgs?: PartialArg[];
2723
+ /** Optional. Whether this is the last part of the FunctionCall. If true, another partial message for the current FunctionCall is expected to follow. This field is not supported in Gemini API. */
2724
+ willContinue?: boolean;
2722
2725
  }
2723
2726
 
2724
2727
  /** Function calling config. */
@@ -2727,6 +2730,8 @@ export declare interface FunctionCallingConfig {
2727
2730
  mode?: FunctionCallingConfigMode;
2728
2731
  /** Optional. Function names to call. Only set when the Mode is ANY. Function names should match [FunctionDeclaration.name]. With mode set to ANY, model will predict a function call from the set of function names provided. */
2729
2732
  allowedFunctionNames?: string[];
2733
+ /** Optional. When set to true, arguments of a single function call will be streamed out in multiple parts/contents/responses. Partial parameter results will be returned in the [FunctionCall.partial_args] field. This field is not supported in Gemini API. */
2734
+ streamFunctionCallArguments?: boolean;
2730
2735
  }
2731
2736
 
2732
2737
  /** Config for the function calling config mode. */
@@ -2801,6 +2806,9 @@ export declare class FunctionResponseBlob {
2801
2806
  /** Required. Inline media bytes.
2802
2807
  * @remarks Encoded as base64 string. */
2803
2808
  data?: string;
2809
+ /** Optional. Display name of the blob.
2810
+ Used to provide a label or filename to distinguish blobs. */
2811
+ displayName?: string;
2804
2812
  }
2805
2813
 
2806
2814
  /** URI based data for function response. */
@@ -2809,6 +2817,9 @@ export declare class FunctionResponseFileData {
2809
2817
  fileUri?: string;
2810
2818
  /** Required. The IANA standard MIME type of the source data. */
2811
2819
  mimeType?: string;
2820
+ /** Optional. Display name of the file.
2821
+ Used to provide a label or filename to distinguish files. */
2822
+ displayName?: string;
2812
2823
  }
2813
2824
 
2814
2825
  /** A datatype containing media that is part of a `FunctionResponse` message.
@@ -4249,6 +4260,12 @@ export declare interface ImageConfig {
4249
4260
  values are `1K`, `2K`, `4K`. If not specified, the model will use default
4250
4261
  value `1K`. */
4251
4262
  imageSize?: string;
4263
+ /** MIME type of the generated image. This field is not
4264
+ supported in Gemini API. */
4265
+ outputMimeType?: string;
4266
+ /** Compression quality of the generated image (for
4267
+ ``image/jpeg`` only). This field is not supported in Gemini API. */
4268
+ outputCompressionQuality?: number;
4252
4269
  }
4253
4270
 
4254
4271
  /** Enum that specifies the language of the text in the prompt. */
@@ -5644,6 +5661,28 @@ export declare interface Model {
5644
5661
  defaultCheckpointId?: string;
5645
5662
  /** The checkpoints of the model. */
5646
5663
  checkpoints?: Checkpoint[];
5664
+ /** Temperature value used for sampling set when the dataset was saved.
5665
+ This value is used to tune the degree of randomness. */
5666
+ temperature?: number;
5667
+ /** The maximum temperature value used for sampling set when the
5668
+ dataset was saved. This value is used to tune the degree of randomness. */
5669
+ maxTemperature?: number;
5670
+ /** Optional. Specifies the nucleus sampling threshold. The model
5671
+ considers only the smallest set of tokens whose cumulative probability is
5672
+ at least `top_p`. This helps generate more diverse and less repetitive
5673
+ responses. For example, a `top_p` of 0.9 means the model considers tokens
5674
+ until the cumulative probability of the tokens to select from reaches 0.9.
5675
+ It's recommended to adjust either temperature or `top_p`, but not both. */
5676
+ topP?: number;
5677
+ /** Optional. Specifies the top-k sampling threshold. The model
5678
+ considers only the top k most probable tokens for the next token. This can
5679
+ be useful for generating more coherent and less random text. For example,
5680
+ a `top_k` of 40 means the model will choose the next word from the 40 most
5681
+ likely words. */
5682
+ topK?: number;
5683
+ /** Whether the model supports thinking features. If true, thoughts are
5684
+ returned only if the model supports thought and thoughts are available. */
5685
+ thinking?: boolean;
5647
5686
  }
5648
5687
 
5649
5688
  export declare class Models extends BaseModule {
@@ -6261,16 +6300,17 @@ export declare class Pager<T> implements AsyncIterable<T> {
6261
6300
  of content being conveyed. Using multiple fields within the same `Part`
6262
6301
  instance is considered invalid. */
6263
6302
  export declare interface Part {
6264
- /** A predicted [FunctionCall] returned from the model that contains a string
6265
- representing the [FunctionDeclaration.name] and a structured JSON object
6266
- containing the parameters and their values. */
6267
- functionCall?: FunctionCall;
6303
+ /** Media resolution for the input media.
6304
+ */
6305
+ mediaResolution?: PartMediaResolution;
6268
6306
  /** Optional. Result of executing the [ExecutableCode]. */
6269
6307
  codeExecutionResult?: CodeExecutionResult;
6270
6308
  /** Optional. Code generated by the model that is meant to be executed. */
6271
6309
  executableCode?: ExecutableCode;
6272
6310
  /** Optional. URI based data. */
6273
6311
  fileData?: FileData;
6312
+ /** Optional. A predicted [FunctionCall] returned from the model that contains a string representing the [FunctionDeclaration.name] with the parameters and their values. */
6313
+ functionCall?: FunctionCall;
6274
6314
  /** 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. */
6275
6315
  functionResponse?: FunctionResponse;
6276
6316
  /** Optional. Inlined bytes data. */
@@ -6286,8 +6326,54 @@ export declare interface Part {
6286
6326
  videoMetadata?: VideoMetadata;
6287
6327
  }
6288
6328
 
6329
+ /** Partial argument value of the function call. This data type is not supported in Gemini API. */
6330
+ export declare interface PartialArg {
6331
+ /** Optional. Represents a null value. */
6332
+ nullValue?: 'NULL_VALUE';
6333
+ /** Optional. Represents a double value. */
6334
+ numberValue?: number;
6335
+ /** Optional. Represents a string value. */
6336
+ stringValue?: string;
6337
+ /** Optional. Represents a boolean value. */
6338
+ boolValue?: boolean;
6339
+ /** Required. A JSON Path (RFC 9535) to the argument being streamed. https://datatracker.ietf.org/doc/html/rfc9535. e.g. "$.foo.bar[0].data". */
6340
+ jsonPath?: string;
6341
+ /** Optional. Whether this is not the last part of the same json_path. If true, another PartialArg message for the current json_path is expected to follow. */
6342
+ willContinue?: boolean;
6343
+ }
6344
+
6289
6345
  export declare type PartListUnion = PartUnion[] | PartUnion;
6290
6346
 
6347
+ /** Media resolution for the input media. */
6348
+ export declare interface PartMediaResolution {
6349
+ /** The tokenization quality used for given media.
6350
+ */
6351
+ level?: PartMediaResolutionLevel;
6352
+ /** Specifies the required sequence length for media tokenization.
6353
+ */
6354
+ numTokens?: number;
6355
+ }
6356
+
6357
+ /** The tokenization quality used for given media. */
6358
+ export declare enum PartMediaResolutionLevel {
6359
+ /**
6360
+ * Media resolution has not been set.
6361
+ */
6362
+ MEDIA_RESOLUTION_UNSPECIFIED = "MEDIA_RESOLUTION_UNSPECIFIED",
6363
+ /**
6364
+ * Media resolution set to low.
6365
+ */
6366
+ MEDIA_RESOLUTION_LOW = "MEDIA_RESOLUTION_LOW",
6367
+ /**
6368
+ * Media resolution set to medium.
6369
+ */
6370
+ MEDIA_RESOLUTION_MEDIUM = "MEDIA_RESOLUTION_MEDIUM",
6371
+ /**
6372
+ * Media resolution set to high.
6373
+ */
6374
+ MEDIA_RESOLUTION_HIGH = "MEDIA_RESOLUTION_HIGH"
6375
+ }
6376
+
6291
6377
  /** Tuning spec for Partner models. This data type is not supported in Gemini API. */
6292
6378
  export declare interface PartnerModelTuningSpec {
6293
6379
  /** Hyperparameters for tuning. The accepted hyper_parameters and their valid range of values will differ depending on the base model. */
@@ -7337,6 +7423,24 @@ export declare interface ThinkingConfig {
7337
7423
  /** Indicates the thinking budget in tokens. 0 is DISABLED. -1 is AUTOMATIC. The default values and allowed ranges are model dependent.
7338
7424
  */
7339
7425
  thinkingBudget?: number;
7426
+ /** Optional. The level of thoughts tokens that the model should generate. */
7427
+ thinkingLevel?: ThinkingLevel;
7428
+ }
7429
+
7430
+ /** The level of thoughts tokens that the model should generate. */
7431
+ export declare enum ThinkingLevel {
7432
+ /**
7433
+ * Default value.
7434
+ */
7435
+ THINKING_LEVEL_UNSPECIFIED = "THINKING_LEVEL_UNSPECIFIED",
7436
+ /**
7437
+ * Low thinking level.
7438
+ */
7439
+ LOW = "LOW",
7440
+ /**
7441
+ * High thinking level.
7442
+ */
7443
+ HIGH = "HIGH"
7340
7444
  }
7341
7445
 
7342
7446
  export declare class Tokens extends BaseModule {
@@ -7851,6 +7955,7 @@ declare namespace types {
7851
7955
  AuthType,
7852
7956
  HttpElementLocation,
7853
7957
  PhishBlockThreshold,
7958
+ ThinkingLevel,
7854
7959
  HarmCategory,
7855
7960
  HarmBlockMethod,
7856
7961
  HarmBlockThreshold,
@@ -7866,6 +7971,7 @@ declare namespace types {
7866
7971
  AdapterSize,
7867
7972
  JobState,
7868
7973
  TuningTask,
7974
+ PartMediaResolutionLevel,
7869
7975
  FeatureSelectionPreference,
7870
7976
  Behavior,
7871
7977
  DynamicRetrievalConfigMode,
@@ -7895,10 +8001,12 @@ declare namespace types {
7895
8001
  Scale,
7896
8002
  MusicGenerationMode,
7897
8003
  LiveMusicPlaybackControl,
7898
- FunctionCall,
8004
+ PartMediaResolution,
7899
8005
  CodeExecutionResult,
7900
8006
  ExecutableCode,
7901
8007
  FileData,
8008
+ PartialArg,
8009
+ FunctionCall,
7902
8010
  FunctionResponseBlob,
7903
8011
  FunctionResponseFileData,
7904
8012
  FunctionResponsePart,