From 00049aac7d84b8d1a3d10eda7e6e64eb6bf7579c Mon Sep 17 00:00:00 2001 From: Inchoker <54902491+Inchoker@users.noreply.github.com> Date: Wed, 10 Apr 2024 17:03:26 +0700 Subject: [PATCH] fix error handling of core for mistral integration (#2672) * fix error handling of core for mistral integration * refactor logic using status code * nitpicking fix --------- Co-authored-by: Jack Tri Le --- core/src/browser/extensions/engines/helpers/sse.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/src/browser/extensions/engines/helpers/sse.ts b/core/src/browser/extensions/engines/helpers/sse.ts index ab8d261a5d..dbc58501aa 100644 --- a/core/src/browser/extensions/engines/helpers/sse.ts +++ b/core/src/browser/extensions/engines/helpers/sse.ts @@ -36,9 +36,15 @@ export function requestInference( .then(async (response) => { if (!response.ok) { const data = await response.json() + let errorCode = ErrorCode.Unknown; + if (data.error) { + errorCode = data.error.code ?? data.error.type ?? ErrorCode.Unknown + } else if (response.status === 401) { + errorCode = ErrorCode.InvalidApiKey; + } const error = { message: data.error?.message ?? 'Error occurred.', - code: data.error?.code ?? data.error?.type ?? ErrorCode.Unknown, + code: errorCode, } subscriber.error(error) subscriber.complete()