Merge pull request #4059 from janhq/fix/remote-models-error-handling
chore: remote models error handling
This commit is contained in:
commit
3602483f6c
@ -38,7 +38,7 @@ export function requestInference(
|
||||
errorCode = ErrorCode.InvalidApiKey
|
||||
}
|
||||
const error = {
|
||||
message: data.error?.message ?? 'Error occurred.',
|
||||
message: data.error?.message ?? data.message ?? 'Error occurred.',
|
||||
code: errorCode,
|
||||
}
|
||||
subscriber.error(error)
|
||||
|
||||
@ -113,6 +113,8 @@ export default class JanInferenceCohereExtension extends RemoteOAIEngine {
|
||||
}
|
||||
|
||||
transformResponse = (data: any) => {
|
||||
return typeof data === 'object' ? data.text : JSON.parse(data).text ?? ''
|
||||
return typeof data === 'object'
|
||||
? data.text
|
||||
: (JSON.parse(data.replace('data: ', '').trim()).text ?? '')
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@janhq/inference-openai-extension",
|
||||
"productName": "OpenAI Inference Engine",
|
||||
"version": "1.0.3",
|
||||
"version": "1.0.4",
|
||||
"description": "This extension enables OpenAI chat completion API calls",
|
||||
"main": "dist/index.js",
|
||||
"module": "dist/module.js",
|
||||
|
||||
@ -99,6 +99,7 @@
|
||||
"parameters": {
|
||||
"temperature": 1,
|
||||
"top_p": 1,
|
||||
"stream": true,
|
||||
"max_tokens": 32768,
|
||||
"frequency_penalty": 0,
|
||||
"presence_penalty": 0
|
||||
@ -126,6 +127,7 @@
|
||||
"temperature": 1,
|
||||
"top_p": 1,
|
||||
"max_tokens": 65536,
|
||||
"stream": true,
|
||||
"frequency_penalty": 0,
|
||||
"presence_penalty": 0
|
||||
},
|
||||
|
||||
@ -80,7 +80,6 @@ export default class JanInferenceOpenAIExtension extends RemoteOAIEngine {
|
||||
return {
|
||||
...params,
|
||||
max_completion_tokens: max_tokens,
|
||||
stream: false, // o1 only support stream = false
|
||||
}
|
||||
}
|
||||
// Pass through for non-preview models
|
||||
|
||||
@ -63,9 +63,6 @@ describe('ErrorMessage Component', () => {
|
||||
|
||||
render(<ErrorMessage message={message} />)
|
||||
|
||||
expect(
|
||||
screen.getByText('Apologies, something’s amiss!')
|
||||
).toBeInTheDocument()
|
||||
expect(screen.getByText('troubleshooting assistance')).toBeInTheDocument()
|
||||
})
|
||||
|
||||
|
||||
@ -27,8 +27,6 @@ const ErrorMessage = ({ message }: { message: ThreadMessage }) => {
|
||||
|
||||
const getErrorTitle = () => {
|
||||
switch (message.error_code) {
|
||||
case ErrorCode.Unknown:
|
||||
return 'Apologies, something’s amiss!'
|
||||
case ErrorCode.InvalidApiKey:
|
||||
case ErrorCode.AuthenticationError:
|
||||
case ErrorCode.InvalidRequestError:
|
||||
@ -55,17 +53,17 @@ const ErrorMessage = ({ message }: { message: ThreadMessage }) => {
|
||||
)
|
||||
default:
|
||||
return (
|
||||
<>
|
||||
<p>
|
||||
{message.content[0]?.text?.value && (
|
||||
<AutoLink text={message.content[0].text.value} />
|
||||
)}
|
||||
</>
|
||||
</p>
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<div className="mt-10">
|
||||
<div className="mx-auto mt-10 max-w-[700px]">
|
||||
{message.status === MessageStatus.Error && (
|
||||
<div
|
||||
key={message.id}
|
||||
|
||||
@ -180,7 +180,11 @@ export default function EventHandler({ children }: { children: ReactNode }) {
|
||||
setIsGeneratingResponse(false)
|
||||
}
|
||||
return
|
||||
} else if (message.status === MessageStatus.Error) {
|
||||
} else if (
|
||||
message.status === MessageStatus.Error &&
|
||||
activeModelRef.current?.engine &&
|
||||
isLocalEngine(activeModelRef.current.engine)
|
||||
) {
|
||||
;(async () => {
|
||||
if (
|
||||
!(await extensionManager
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user