lobe-chat
1/* eslint-disable sort-keys-fix/sort-keys-fix */
2import { ILobeAgentRuntimeErrorType } from '@/libs/agent-runtime';
3
4export const ChatErrorType = {
5// ******* 业务错误语义 ******* //
6
7InvalidAccessCode: 'InvalidAccessCode', // is in valid password
8InvalidClerkUser: 'InvalidClerkUser', // is not Clerk User
9/**
10* @deprecated
11*/
12NoOpenAIAPIKey: 'NoOpenAIAPIKey',
13OllamaServiceUnavailable: 'OllamaServiceUnavailable', // 未启动/检测到 Ollama 服务
14PluginFailToTransformArguments: 'PluginFailToTransformArguments',
15UnknownChatFetchError: 'UnknownChatFetchError',
16
17// ******* 客户端错误 ******* //
18BadRequest: 400,
19Unauthorized: 401,
20Forbidden: 403,
21ContentNotFound: 404, // 没找到接口
22MethodNotAllowed: 405, // 不支持
23TooManyRequests: 429,
24
25// ******* 服务端错误 ******* //InvalidPluginArgumentsTransform
26InternalServerError: 500,
27BadGateway: 502,
28ServiceUnavailable: 503,
29GatewayTimeout: 504,
30} as const;
31/* eslint-enable */
32
33export type ErrorType = (typeof ChatErrorType)[keyof typeof ChatErrorType];
34
35export interface ErrorResponse {
36body: any;
37errorType: ErrorType | ILobeAgentRuntimeErrorType;
38}
39