From 2e59d2661b031b5ea8eac340010cb947245c9c45 Mon Sep 17 00:00:00 2001 From: Lars Grammel Date: Fri, 12 Jul 2024 17:56:14 +0200 Subject: [PATCH 1/3] feat (provider/google): add cachedContent optional setting (#2261) --- .changeset/cool-donkeys-build.md | 5 +++++ .../01-ai-sdk-providers/10-google-generative-ai.mdx | 5 +++++ packages/google/src/google-generative-ai-language-model.ts | 3 +++ packages/google/src/google-generative-ai-settings.ts | 7 +++++++ 4 files changed, 20 insertions(+) create mode 100644 .changeset/cool-donkeys-build.md diff --git a/.changeset/cool-donkeys-build.md b/.changeset/cool-donkeys-build.md new file mode 100644 index 000000000000..19adc4ad9e48 --- /dev/null +++ b/.changeset/cool-donkeys-build.md @@ -0,0 +1,5 @@ +--- +'@ai-sdk/google': patch +--- + +feat (provider/google): add cachedContent optional setting diff --git a/content/providers/01-ai-sdk-providers/10-google-generative-ai.mdx b/content/providers/01-ai-sdk-providers/10-google-generative-ai.mdx index 012d64efcf34..c294c6ee333a 100644 --- a/content/providers/01-ai-sdk-providers/10-google-generative-ai.mdx +++ b/content/providers/01-ai-sdk-providers/10-google-generative-ai.mdx @@ -93,6 +93,11 @@ The following optional settings are available for Google Generative AI models: Top-k sampling considers the set of topK most probable tokens. Models running with nucleus sampling don't allow topK setting. +- **cachedContent** _string_ + + Optional. The name of the cached content used as context to serve the prediction. + Format: cachedContents/{cachedContent} + - **safetySettings** _Array\<\{ category: string; threshold: string \}\>_ Optional. Safety settings for the model. diff --git a/packages/google/src/google-generative-ai-language-model.ts b/packages/google/src/google-generative-ai-language-model.ts index da4417aed78f..37f405edd626 100644 --- a/packages/google/src/google-generative-ai-language-model.ts +++ b/packages/google/src/google-generative-ai-language-model.ts @@ -110,6 +110,7 @@ export class GoogleGenerativeAILanguageModel implements LanguageModelV1 { systemInstruction, safetySettings: this.settings.safetySettings, ...prepareToolsAndToolConfig(mode), + cachedContent: this.settings.cachedContent, }, warnings, }; @@ -125,6 +126,7 @@ export class GoogleGenerativeAILanguageModel implements LanguageModelV1 { contents, systemInstruction, safetySettings: this.settings.safetySettings, + cachedContent: this.settings.cachedContent, }, warnings, }; @@ -146,6 +148,7 @@ export class GoogleGenerativeAILanguageModel implements LanguageModelV1 { }, toolConfig: { functionCallingConfig: { mode: 'ANY' } }, safetySettings: this.settings.safetySettings, + cachedContent: this.settings.cachedContent, }, warnings, }; diff --git a/packages/google/src/google-generative-ai-settings.ts b/packages/google/src/google-generative-ai-settings.ts index 36aa32c18e04..d43193bfd0ab 100644 --- a/packages/google/src/google-generative-ai-settings.ts +++ b/packages/google/src/google-generative-ai-settings.ts @@ -16,6 +16,13 @@ Models running with nucleus sampling don't allow topK setting. */ topK?: number; + /** +Optional. +The name of the cached content used as context to serve the prediction. +Format: cachedContents/{cachedContent} + */ + cachedContent?: string; + /** Optional. A list of unique safety settings for blocking unsafe content. */ From bede7bf45908a385a59439423777c39dfff1b0f6 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 12 Jul 2024 17:58:23 +0200 Subject: [PATCH 2/3] Version Packages (#2258) Co-authored-by: github-actions[bot] --- .changeset/cool-donkeys-build.md | 5 ----- .changeset/ninety-beers-do.md | 5 ----- .changeset/odd-avocados-search.md | 5 ----- .changeset/pretty-elephants-deliver.md | 5 ----- packages/google-vertex/CHANGELOG.md | 6 ++++++ packages/google-vertex/package.json | 2 +- packages/google/CHANGELOG.md | 8 ++++++++ packages/google/package.json | 2 +- 8 files changed, 16 insertions(+), 22 deletions(-) delete mode 100644 .changeset/cool-donkeys-build.md delete mode 100644 .changeset/ninety-beers-do.md delete mode 100644 .changeset/odd-avocados-search.md delete mode 100644 .changeset/pretty-elephants-deliver.md diff --git a/.changeset/cool-donkeys-build.md b/.changeset/cool-donkeys-build.md deleted file mode 100644 index 19adc4ad9e48..000000000000 --- a/.changeset/cool-donkeys-build.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@ai-sdk/google': patch ---- - -feat (provider/google): add cachedContent optional setting diff --git a/.changeset/ninety-beers-do.md b/.changeset/ninety-beers-do.md deleted file mode 100644 index 090b96fa1dfa..000000000000 --- a/.changeset/ninety-beers-do.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@ai-sdk/google': patch ---- - -feat (provider/google): support system instructions diff --git a/.changeset/odd-avocados-search.md b/.changeset/odd-avocados-search.md deleted file mode 100644 index b51b7c346618..000000000000 --- a/.changeset/odd-avocados-search.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@ai-sdk/google-vertex': patch ---- - -feat (provider/google-vertex): use systemInstruction content parts diff --git a/.changeset/pretty-elephants-deliver.md b/.changeset/pretty-elephants-deliver.md deleted file mode 100644 index 26a1e084aa32..000000000000 --- a/.changeset/pretty-elephants-deliver.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@ai-sdk/google': patch ---- - -feat (provider/google): add tool support for object generation (new default mode) diff --git a/packages/google-vertex/CHANGELOG.md b/packages/google-vertex/CHANGELOG.md index 2a184c7f1b86..8d5ac6b7a647 100644 --- a/packages/google-vertex/CHANGELOG.md +++ b/packages/google-vertex/CHANGELOG.md @@ -1,5 +1,11 @@ # @ai-sdk/google-vertex +## 0.0.15 + +### Patch Changes + +- bb584330: feat (provider/google-vertex): use systemInstruction content parts + ## 0.0.14 ### Patch Changes diff --git a/packages/google-vertex/package.json b/packages/google-vertex/package.json index 35646b31771d..ea80323437cd 100644 --- a/packages/google-vertex/package.json +++ b/packages/google-vertex/package.json @@ -1,6 +1,6 @@ { "name": "@ai-sdk/google-vertex", - "version": "0.0.14", + "version": "0.0.15", "license": "Apache-2.0", "sideEffects": false, "main": "./dist/index.js", diff --git a/packages/google/CHANGELOG.md b/packages/google/CHANGELOG.md index 48a040582e28..8c023a43c694 100644 --- a/packages/google/CHANGELOG.md +++ b/packages/google/CHANGELOG.md @@ -1,5 +1,13 @@ # @ai-sdk/google +## 0.0.27 + +### Patch Changes + +- 2e59d266: feat (provider/google): add cachedContent optional setting +- d2b9723d: feat (provider/google): support system instructions +- 4dfe0b00: feat (provider/google): add tool support for object generation (new default mode) + ## 0.0.26 ### Patch Changes diff --git a/packages/google/package.json b/packages/google/package.json index 98ef96d89a55..98e0a8a22acb 100644 --- a/packages/google/package.json +++ b/packages/google/package.json @@ -1,6 +1,6 @@ { "name": "@ai-sdk/google", - "version": "0.0.26", + "version": "0.0.27", "license": "Apache-2.0", "sideEffects": false, "main": "./dist/index.js", From 8d306c637bccc5c9a2fcbd378b19e47b3175d16d Mon Sep 17 00:00:00 2001 From: AntzyMo Date: Sat, 13 Jul 2024 18:27:26 +0800 Subject: [PATCH 3/3] fix(vue/solid/svelte) keepLastMessageOnError --- examples/nuxt-openai/pages/index.vue | 34 ++++++-- .../solidstart-openai/src/routes/index.tsx | 39 ++++++++- .../sveltekit-openai/src/routes/+page.svelte | 79 +++++++++++++------ packages/solid/src/use-chat.ts | 15 +++- packages/svelte/src/use-chat.ts | 17 +++- packages/vue/src/use-chat.ts | 15 +++- 6 files changed, 162 insertions(+), 37 deletions(-) diff --git a/examples/nuxt-openai/pages/index.vue b/examples/nuxt-openai/pages/index.vue index 665c277302b5..58639294f0a1 100644 --- a/examples/nuxt-openai/pages/index.vue +++ b/examples/nuxt-openai/pages/index.vue @@ -1,7 +1,18 @@