diff --git a/client/src/pages/api/openapi/plugin/openaiEmbedding.ts b/client/src/pages/api/openapi/plugin/openaiEmbedding.ts
index 0c7e7a097..1daa0a860 100644
--- a/client/src/pages/api/openapi/plugin/openaiEmbedding.ts
+++ b/client/src/pages/api/openapi/plugin/openaiEmbedding.ts
@@ -39,7 +39,12 @@ export async function openaiEmbedding({
input,
mustPay = false
}: { userId: string; mustPay?: boolean } & Props) {
- const apiKey = getSystemOpenAiKey();
+ const { userOpenAiKey, systemAuthKey } = await getApiKey({
+ model: 'gpt-3.5-turbo',
+ userId,
+ mustPay
+ });
+ const apiKey = userOpenAiKey || systemAuthKey;
// 获取 chatAPI
const chatAPI = getOpenAIApi(apiKey);
@@ -68,7 +73,7 @@ export async function openaiEmbedding({
});
pushGenerateVectorBill({
- isPay: mustPay,
+ isPay: !userOpenAiKey,
userId,
text: input.join(''),
tokenLen: result.tokenLen
diff --git a/client/src/pages/number/index.tsx b/client/src/pages/number/index.tsx
index c0c64db70..67ca3298c 100644
--- a/client/src/pages/number/index.tsx
+++ b/client/src/pages/number/index.tsx
@@ -54,7 +54,6 @@ const NumberSetting = ({ tableType }: { tableType: `${TableEnum}` }) => {
{ label: '佣金', id: TableEnum.promotion, Component: },
{ label: '通知', id: TableEnum.inform, Component: }
]);
- const [currentTab, setCurrentTab] = useState(tableType);
const router = useRouter();
const { copyData } = useCopyData();
@@ -84,7 +83,14 @@ const NumberSetting = ({ tableType }: { tableType: `${TableEnum}` }) => {
async (data: UserUpdateParams) => {
setLoading(true);
try {
- data.openaiKey && (await authOpenAiKey(data.openaiKey));
+ if (data.openaiKey) {
+ const text = await authOpenAiKey(data.openaiKey);
+ text &&
+ toast({
+ title: text,
+ status: 'warning'
+ });
+ }
await putUserInfo({
openaiKey: data.openaiKey,
avatar: data.avatar
@@ -95,7 +101,7 @@ const NumberSetting = ({ tableType }: { tableType: `${TableEnum}` }) => {
});
reset(data);
toast({
- title: '更新成功',
+ title: '更新数据成功',
status: 'success'
});
} catch (error) {
@@ -195,7 +201,7 @@ const NumberSetting = ({ tableType }: { tableType: `${TableEnum}` }) => {
openaiKey:
{
m={'auto'}
w={'200px'}
list={tableList.current}
- activeId={currentTab}
+ activeId={tableType}
size={'sm'}
- onChange={(id: any) => setCurrentTab(id)}
+ onChange={(id: any) => router.replace(`/number?type=${id}`)}
/>
{(() => {
- const item = tableList.current.find((item) => item.id === currentTab);
+ const item = tableList.current.find((item) => item.id === tableType);
return item ? item.Component : null;
})()}
diff --git a/client/src/utils/plugin/openai.ts b/client/src/utils/plugin/openai.ts
index b39d9a3e5..93a3fb42d 100644
--- a/client/src/utils/plugin/openai.ts
+++ b/client/src/utils/plugin/openai.ts
@@ -111,16 +111,11 @@ export const authOpenAiKey = async (key: string) => {
})
.then((res) => {
if (!res.data.access_until) {
- return Promise.reject('OpenAI Key 无效,请重试或更换 key');
- }
- const keyExpiredTime = dayjs(res.data.access_until * 1000);
- const currentTime = dayjs();
- if (keyExpiredTime.isBefore(currentTime)) {
- return Promise.reject('OpenAI Key 已过期');
+ return Promise.resolve('OpenAI Key 可能无效');
}
})
.catch((err) => {
console.log(err);
- return Promise.reject(err?.response?.data?.error || 'OpenAI 账号无效,请重试或更换 key');
+ return Promise.reject(err?.response?.data?.error?.message || 'OpenAI Key 可能无效');
});
};