chore: remote models error handling

This commit is contained in:
Louis 2024-11-20 21:14:37 +07:00
parent 33bfd0eed8
commit c6e1bb55f9
No known key found for this signature in database
GPG Key ID: 44FA9F4D33C37DE2
3 changed files with 9 additions and 7 deletions

View File

@ -38,7 +38,7 @@ export function requestInference(
errorCode = ErrorCode.InvalidApiKey errorCode = ErrorCode.InvalidApiKey
} }
const error = { const error = {
message: data.error?.message ?? 'Error occurred.', message: data.error?.message ?? data.message ?? 'Error occurred.',
code: errorCode, code: errorCode,
} }
subscriber.error(error) subscriber.error(error)

View File

@ -27,8 +27,6 @@ const ErrorMessage = ({ message }: { message: ThreadMessage }) => {
const getErrorTitle = () => { const getErrorTitle = () => {
switch (message.error_code) { switch (message.error_code) {
case ErrorCode.Unknown:
return 'Apologies, somethings amiss!'
case ErrorCode.InvalidApiKey: case ErrorCode.InvalidApiKey:
case ErrorCode.AuthenticationError: case ErrorCode.AuthenticationError:
case ErrorCode.InvalidRequestError: case ErrorCode.InvalidRequestError:
@ -55,17 +53,17 @@ const ErrorMessage = ({ message }: { message: ThreadMessage }) => {
) )
default: default:
return ( return (
<> <p>
{message.content[0]?.text?.value && ( {message.content[0]?.text?.value && (
<AutoLink text={message.content[0].text.value} /> <AutoLink text={message.content[0].text.value} />
)} )}
</> </p>
) )
} }
} }
return ( return (
<div className="mt-10"> <div className="mx-auto mt-10 max-w-[700px]">
{message.status === MessageStatus.Error && ( {message.status === MessageStatus.Error && (
<div <div
key={message.id} key={message.id}

View File

@ -180,7 +180,11 @@ export default function EventHandler({ children }: { children: ReactNode }) {
setIsGeneratingResponse(false) setIsGeneratingResponse(false)
} }
return return
} else if (message.status === MessageStatus.Error) { } else if (
message.status === MessageStatus.Error &&
activeModelRef.current?.engine &&
isLocalEngine(activeModelRef.current.engine)
) {
;(async () => { ;(async () => {
if ( if (
!(await extensionManager !(await extensionManager