@ai-sdk/google 4.0.0-beta.83 → 4.0.0-beta.84

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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @ai-sdk/google
2
2
 
3
+ ## 4.0.0-beta.84
4
+
5
+ ### Patch Changes
6
+
7
+ - 947cdab: Add Google realtime Live Translation provider options for `gemini-3.5-live-translate-preview`.
8
+
3
9
  ## 4.0.0-beta.83
4
10
 
5
11
  ### Patch Changes
package/dist/index.d.ts CHANGED
@@ -622,6 +622,28 @@ declare class GoogleRealtimeModel implements Experimental_RealtimeModelV4 {
622
622
  buildSessionConfig(config: Experimental_RealtimeModelV4SessionConfig): Record<string, unknown>;
623
623
  }
624
624
 
625
+ type GoogleRealtimeModelId = string;
626
+ type GoogleRealtimeModelOptions = {
627
+ /**
628
+ * Gemini Live Translation configuration.
629
+ *
630
+ * Required for `gemini-3.5-live-translate-preview` when translating speech
631
+ * to a target language.
632
+ */
633
+ translationConfig?: {
634
+ /**
635
+ * BCP-47 language code of the language to translate into.
636
+ * Defaults to `en` in the Gemini API.
637
+ */
638
+ targetLanguageCode?: string;
639
+ /**
640
+ * Whether input audio already in the target language should be echoed
641
+ * instead of producing silence.
642
+ */
643
+ echoTargetLanguage?: boolean;
644
+ };
645
+ };
646
+
625
647
  declare const VERSION: string;
626
648
 
627
- export { GoogleRealtimeModel as Experimental_GoogleRealtimeModel, type GoogleRealtimeModelConfig as Experimental_GoogleRealtimeModelConfig, type GoogleEmbeddingModelOptions, type GoogleErrorData, type GoogleFilesUploadOptions, type GoogleEmbeddingModelOptions as GoogleGenerativeAIEmbeddingProviderOptions, type GoogleImageModelOptions as GoogleGenerativeAIImageProviderOptions, type GoogleProvider as GoogleGenerativeAIProvider, type GoogleProviderMetadata as GoogleGenerativeAIProviderMetadata, type GoogleLanguageModelOptions as GoogleGenerativeAIProviderOptions, type GoogleProviderSettings as GoogleGenerativeAIProviderSettings, type GoogleVideoModelId as GoogleGenerativeAIVideoModelId, type GoogleVideoModelOptions as GoogleGenerativeAIVideoProviderOptions, type GoogleImageModelOptions, type GoogleInteractionsAgentName, type GoogleInteractionsModelId, type GoogleInteractionsProviderMetadata, type GoogleLanguageModelInteractionsOptions, type GoogleLanguageModelOptions, type GoogleProvider, type GoogleProviderMetadata, type GoogleProviderSettings, type GoogleSpeechModelId, type GoogleSpeechModelOptions, type GoogleVideoModelId, type GoogleVideoModelOptions, VERSION, createGoogle, createGoogle as createGoogleGenerativeAI, google };
649
+ export { GoogleRealtimeModel as Experimental_GoogleRealtimeModel, type GoogleRealtimeModelConfig as Experimental_GoogleRealtimeModelConfig, type GoogleRealtimeModelId as Experimental_GoogleRealtimeModelId, type GoogleRealtimeModelOptions as Experimental_GoogleRealtimeModelOptions, type GoogleEmbeddingModelOptions, type GoogleErrorData, type GoogleFilesUploadOptions, type GoogleEmbeddingModelOptions as GoogleGenerativeAIEmbeddingProviderOptions, type GoogleImageModelOptions as GoogleGenerativeAIImageProviderOptions, type GoogleProvider as GoogleGenerativeAIProvider, type GoogleProviderMetadata as GoogleGenerativeAIProviderMetadata, type GoogleLanguageModelOptions as GoogleGenerativeAIProviderOptions, type GoogleProviderSettings as GoogleGenerativeAIProviderSettings, type GoogleVideoModelId as GoogleGenerativeAIVideoModelId, type GoogleVideoModelOptions as GoogleGenerativeAIVideoProviderOptions, type GoogleImageModelOptions, type GoogleInteractionsAgentName, type GoogleInteractionsModelId, type GoogleInteractionsProviderMetadata, type GoogleLanguageModelInteractionsOptions, type GoogleLanguageModelOptions, type GoogleProvider, type GoogleProviderMetadata, type GoogleProviderSettings, type GoogleSpeechModelId, type GoogleSpeechModelOptions, type GoogleVideoModelId, type GoogleVideoModelOptions, VERSION, createGoogle, createGoogle as createGoogleGenerativeAI, google };
package/dist/index.js CHANGED
@@ -7,7 +7,7 @@ import {
7
7
  } from "@ai-sdk/provider-utils";
8
8
 
9
9
  // src/version.ts
10
- var VERSION = true ? "4.0.0-beta.83" : "0.0.0-test";
10
+ var VERSION = true ? "4.0.0-beta.84" : "0.0.0-test";
11
11
 
12
12
  // src/google-embedding-model.ts
13
13
  import {
@@ -6706,6 +6706,9 @@ function pruneUndefined(obj) {
6706
6706
 
6707
6707
  // src/realtime/google-realtime-event-mapper.ts
6708
6708
  import { safeParseJSON } from "@ai-sdk/provider-utils";
6709
+ function isRecord(value) {
6710
+ return value != null && typeof value === "object" && !Array.isArray(value);
6711
+ }
6709
6712
  var GoogleRealtimeEventMapper = class {
6710
6713
  constructor() {
6711
6714
  this.turnCounter = 0;
@@ -6900,6 +6903,11 @@ var GoogleRealtimeEventMapper = class {
6900
6903
  }
6901
6904
  };
6902
6905
  case "input-audio-commit":
6906
+ return {
6907
+ realtimeInput: {
6908
+ audioStreamEnd: true
6909
+ }
6910
+ };
6903
6911
  case "input-audio-clear":
6904
6912
  case "response-create":
6905
6913
  case "response-cancel":
@@ -6984,8 +6992,18 @@ function buildGoogleSessionConfig(config, modelId) {
6984
6992
  if ((config == null ? void 0 : config.outputAudioTranscription) != null) {
6985
6993
  setup.outputAudioTranscription = {};
6986
6994
  }
6987
- if ((config == null ? void 0 : config.providerOptions) != null) {
6988
- Object.assign(setup, config.providerOptions);
6995
+ if ((config == null ? void 0 : config.providerOptions) == null) {
6996
+ return setup;
6997
+ }
6998
+ const { google: google2, ...providerOptions } = config.providerOptions;
6999
+ Object.assign(setup, providerOptions);
7000
+ const googleOptions = isRecord(google2) ? google2 : void 0;
7001
+ if ((googleOptions == null ? void 0 : googleOptions.translationConfig) != null) {
7002
+ const target = isRecord(setup.generationConfig) ? setup.generationConfig : generationConfig;
7003
+ setup.generationConfig = {
7004
+ ...target,
7005
+ translationConfig: googleOptions.translationConfig
7006
+ };
6989
7007
  }
6990
7008
  return setup;
6991
7009
  }