From 4da37087b6a46a38870840b3e4611971b7b48e99 Mon Sep 17 00:00:00 2001 From: Louis Date: Tue, 3 Dec 2024 16:01:43 +0700 Subject: [PATCH] fix: 4162 - Graceful Openrouter error handling --- core/src/browser/extensions/engines/OAIEngine.ts | 3 --- core/src/browser/extensions/engines/helpers/sse.ts | 5 +++++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/core/src/browser/extensions/engines/OAIEngine.ts b/core/src/browser/extensions/engines/OAIEngine.ts index 694a87264..df51d37bb 100644 --- a/core/src/browser/extensions/engines/OAIEngine.ts +++ b/core/src/browser/extensions/engines/OAIEngine.ts @@ -132,9 +132,6 @@ export abstract class OAIEngine extends AIEngine { events.emit(MessageEvent.OnMessageUpdate, message) }, error: async (err: any) => { - console.debug('inference url: ', this.inferenceUrl) - console.debug('header: ', header) - console.error(`Inference error:`, JSON.stringify(err)) if (this.isCancelled || message.content.length) { message.status = MessageStatus.Stopped events.emit(MessageEvent.OnMessageUpdate, message) diff --git a/core/src/browser/extensions/engines/helpers/sse.ts b/core/src/browser/extensions/engines/helpers/sse.ts index 084267582..153d741da 100644 --- a/core/src/browser/extensions/engines/helpers/sse.ts +++ b/core/src/browser/extensions/engines/helpers/sse.ts @@ -77,6 +77,11 @@ export function requestInference( const toParse = cachedLines + line if (!line.includes('data: [DONE]')) { const data = JSON.parse(toParse.replace('data: ', '')) + if ('error' in data) { + subscriber.error(data.error) + subscriber.complete() + return + } content += data.choices[0]?.delta?.content ?? '' if (content.startsWith('assistant: ')) { content = content.replace('assistant: ', '')