feat: embedding

This commit is contained in:
archer
2023-06-05 01:23:40 +08:00
parent 92b592dd98
commit 48fbc74168
4 changed files with 11 additions and 17 deletions

View File

@@ -1,8 +1,7 @@
import type { NextApiRequest, NextApiResponse } from 'next';
import { jsonRes } from '@/service/response';
import { authUser } from '@/service/utils/auth';
import { authUser, getSystemOpenAiKey } from '@/service/utils/auth';
import { withNextCors } from '@/service/utils/tools';
import { getApiKey } from '@/service/utils/auth';
import { getOpenAIApi } from '@/service/utils/chat/openai';
import { embeddingModel } from '@/constants/model';
import { axiosConfig } from '@/service/utils/tools';
@@ -25,7 +24,7 @@ export default withNextCors(async function handler(req: NextApiRequest, res: Nex
}
jsonRes<Response>(res, {
data: await openaiEmbedding({ userId, input, mustPay: true, type })
data: await openaiEmbedding({ userId, input, type })
});
} catch (err) {
console.log(err);
@@ -39,15 +38,9 @@ export default withNextCors(async function handler(req: NextApiRequest, res: Nex
export async function openaiEmbedding({
userId,
input,
mustPay = false,
type = 'chat'
}: { userId: string; mustPay?: boolean } & Props) {
const { userOpenAiKey, systemAuthKey } = await getApiKey({
model: 'gpt-3.5-turbo',
userId,
mustPay,
type
});
}: { userId: string } & Props) {
const apiKey = getSystemOpenAiKey(type);
// 获取 chatAPI
const chatAPI = getOpenAIApi();
@@ -61,7 +54,7 @@ export async function openaiEmbedding({
},
{
timeout: 60000,
...axiosConfig(userOpenAiKey || systemAuthKey)
...axiosConfig(apiKey)
}
)
.then((res) => ({
@@ -70,7 +63,7 @@ export async function openaiEmbedding({
}));
pushGenerateVectorBill({
isPay: !userOpenAiKey,
isPay: false,
userId,
text: input.join(''),
tokenLen: result.tokenLen

View File

@@ -35,7 +35,6 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
}
});
} catch (err) {
console.log(err, '==');
jsonRes(res, {
code: 500,
error: err

View File

@@ -211,6 +211,8 @@ const Chat = ({ modelId, chatId }: { modelId: string; chatId: string }) => {
router.replace(`/chat?modelId=${modelId}&chatId=${newChatId}`);
}
abortSignal.signal.aborted && (await delay(500));
// 设置聊天内容为完成状态
setChatData((state) => ({
...state,

View File

@@ -16,6 +16,7 @@ import { getPayCode, checkPayResult } from '@/api/user';
import { useToast } from '@/hooks/useToast';
import { useQuery } from '@tanstack/react-query';
import { useRouter } from 'next/router';
import { getErrText } from '@/utils/tools';
const PayModal = ({ onClose }: { onClose: () => void }) => {
const router = useRouter();
@@ -39,12 +40,11 @@ const PayModal = ({ onClose }: { onClose: () => void }) => {
correctLevel: QRCode.CorrectLevel.H
});
setPayId(res.payId);
} catch (error) {
} catch (err) {
toast({
title: '出现了一些意外...',
title: getErrText(err),
status: 'error'
});
console.log(error);
}
setLoading(false);
}, [inputVal, toast]);