fix(core): Report the provider response when a chat model returns no choices (#37959)

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Robin Braumann
2026-09-07 12:49:41 +00:00
committed by GitHub
co-authored by Cursor
parent 9a56e9bd79
commit 49e7821ff4
2 changed files with 35 additions and 5 deletions
+30
View File
@@ -1,3 +1,33 @@
diff --git a/dist/chat_models/completions.cjs b/dist/chat_models/completions.cjs
index 170a396ce0b6c16ff536c27f62dc011bfd8154a2..ef4056370af2d3385ef053489c61f2442897eba0 100644
--- a/dist/chat_models/completions.cjs
+++ b/dist/chat_models/completions.cjs
@@ -129,6 +129,10 @@ var ChatOpenAICompletions = class extends require_base.BaseChatOpenAI {
generation.message = new _langchain_core_messages.AIMessage(Object.fromEntries(Object.entries(generation.message).filter(([key]) => !key.startsWith("lc_"))));
generations.push(generation);
}
+ if (generations.length === 0) {
+ const body = typeof data === "string" ? data : JSON.stringify(data) ?? "";
+ throw new Error(`Received empty response from chat model call (no choices). Response body: ${body.slice(0, 500)}`);
+ }
return {
generations,
llmOutput: { tokenUsage: {
diff --git a/dist/chat_models/completions.js b/dist/chat_models/completions.js
index 57d3e6a4e2e0046f6d1bb10c320414224443b1b3..23d84e0159310a17347a4f088dde5a0f596f8c6f 100644
--- a/dist/chat_models/completions.js
+++ b/dist/chat_models/completions.js
@@ -129,6 +129,10 @@ var ChatOpenAICompletions = class extends BaseChatOpenAI {
generation.message = new AIMessage(Object.fromEntries(Object.entries(generation.message).filter(([key]) => !key.startsWith("lc_"))));
generations.push(generation);
}
+ if (generations.length === 0) {
+ const body = typeof data === "string" ? data : JSON.stringify(data) ?? "";
+ throw new Error(`Received empty response from chat model call (no choices). Response body: ${body.slice(0, 500)}`);
+ }
return {
generations,
llmOutput: { tokenUsage: {
diff --git a/dist/converters/completions.cjs b/dist/converters/completions.cjs
index 791756ca4ec9fed98ecb44b90e090ad8d00db40a..f1fd00d4c699a34b342443bed84f2b4aeb6de021 100644
--- a/dist/converters/completions.cjs
+5 -5
View File
@@ -859,7 +859,7 @@ overrides:
patchedDependencies:
'@confluentinc/[email protected]': c597d3e3d9d6d0d33588b7dc1e88d55f270ba155721aad464bd7fb03e28f5003
'@langchain/[email protected]': b50436a6c7b0a82d54472dff331ba1b42ab8b816995f83295eef2ee4b482a87d
'@langchain/[email protected]': 0160a23d307d3bb4aedce23be0d1df4224738bee9184dd4b56bc03eaa37c9a87
'@langchain/[email protected]': e16bcc93cf9037198faacf494fb81afba6e9abba749dc9a09c3abfb33e68d5c2
'@lezer/highlight': 97f85e6fe46f23015ea0dd420e33d584bc2dc71633910cf131321da31b27ca8c
'@types/[email protected]': d602248fcd302cf5a794d1e85a411633ba9635ea5d566d6f2e0429c7ae0fa3eb
'@types/[email protected]': 682b44b740be55e5d7018e6fe335880851dadf2524b6c723c9ed0c29cb2fa7fb
@@ -1162,7 +1162,7 @@ importers:
version: 1.2.8(@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected]))
'@langchain/openai':
specifier: 'catalog:'
version: 1.4.4(patch_hash=0160a23d307d3bb4aedce23be0d1df4224738bee9184dd4b56bc03eaa37c9a87)(@aws-sdk/[email protected])(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))(@smithy/[email protected])([email protected]([email protected])([email protected]))
version: 1.4.4(patch_hash=e16bcc93cf9037198faacf494fb81afba6e9abba749dc9a09c3abfb33e68d5c2)(@aws-sdk/[email protected])(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))(@smithy/[email protected])([email protected]([email protected])([email protected]))
'@langchain/textsplitters':
specifier: 1.0.1
version: 1.0.1(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))
@@ -1271,7 +1271,7 @@ importers:
version: 1.0.0(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))
'@langchain/openai':
specifier: 'catalog:'
version: 1.4.4(patch_hash=0160a23d307d3bb4aedce23be0d1df4224738bee9184dd4b56bc03eaa37c9a87)(@aws-sdk/[email protected])(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))(@smithy/[email protected])([email protected]([email protected])([email protected]))
version: 1.4.4(patch_hash=e16bcc93cf9037198faacf494fb81afba6e9abba749dc9a09c3abfb33e68d5c2)(@aws-sdk/[email protected])(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))(@smithy/[email protected])([email protected]([email protected])([email protected]))
'@mozilla/readability':
specifier: 'catalog:'
version: 0.6.0
@@ -3289,7 +3289,7 @@ importers:
version: 1.2.6(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))
'@langchain/openai':
specifier: 'catalog:'
version: 1.4.4(patch_hash=0160a23d307d3bb4aedce23be0d1df4224738bee9184dd4b56bc03eaa37c9a87)(@aws-sdk/[email protected])(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))(@smithy/[email protected])([email protected]([email protected])([email protected]))
version: 1.4.4(patch_hash=e16bcc93cf9037198faacf494fb81afba6e9abba749dc9a09c3abfb33e68d5c2)(@aws-sdk/[email protected])(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))(@smithy/[email protected])([email protected]([email protected])([email protected]))
'@langchain/pinecone':
specifier: 1.0.1
version: 1.0.1(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))(@pinecone-database/[email protected])
@@ -29869,7 +29869,7 @@ snapshots:
- '@smithy/signature-v4'
- ws
'@langchain/[email protected](patch_hash=0160a23d307d3bb4aedce23be0d1df4224738bee9184dd4b56bc03eaa37c9a87)(@aws-sdk/[email protected])(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))(@smithy/[email protected])([email protected]([email protected])([email protected]))':
'@langchain/[email protected](patch_hash=e16bcc93cf9037198faacf494fb81afba6e9abba749dc9a09c3abfb33e68d5c2)(@aws-sdk/[email protected])(@langchain/[email protected](@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected])))(@smithy/[email protected])([email protected]([email protected])([email protected]))':
dependencies:
'@langchain/core': 1.2.8(@opentelemetry/[email protected])(@opentelemetry/[email protected](@opentelemetry/[email protected]))(@opentelemetry/[email protected](@opentelemetry/[email protected]))([email protected](@aws-sdk/[email protected])(@smithy/[email protected])([email protected]([email protected])([email protected]))([email protected]))([email protected]([email protected])([email protected]))
js-tiktoken: 1.0.21