From 251f2225eec168eab8b1f4d6912043556f717d8b Mon Sep 17 00:00:00 2001 From: archer <545436317@qq.com> Date: Mon, 7 Aug 2023 17:31:37 +0800 Subject: [PATCH] perf: generateVector --- client/src/pages/api/openapi/plugin/vector.ts | 5 +++- client/src/service/events/generateVector.ts | 24 ++++++++++++++++--- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/client/src/pages/api/openapi/plugin/vector.ts b/client/src/pages/api/openapi/plugin/vector.ts index 0445b4299..f4b1fbfcb 100644 --- a/client/src/pages/api/openapi/plugin/vector.ts +++ b/client/src/pages/api/openapi/plugin/vector.ts @@ -44,7 +44,10 @@ export async function getVector({ for (let i = 0; i < input.length; i++) { if (!input[i]) { - return Promise.reject('向量生成模块输入内容为空'); + return Promise.reject({ + code: 500, + message: '向量生成模块输入内容为空' + }); } } diff --git a/client/src/service/events/generateVector.ts b/client/src/service/events/generateVector.ts index 07df87799..08670d18d 100644 --- a/client/src/service/events/generateVector.ts +++ b/client/src/service/events/generateVector.ts @@ -17,6 +17,10 @@ export async function generateVector(): Promise { let trainingId = ''; let userId = ''; + let dataItems: { + q: string; + a: string; + }[] = []; try { const data = await TrainingData.findOneAndUpdate( @@ -48,7 +52,7 @@ export async function generateVector(): Promise { userId = String(data.userId); const kbId = String(data.kbId); - const dataItems = [ + dataItems = [ { q: data.q, a: data.a @@ -91,9 +95,23 @@ export async function generateVector(): Promise { } // message error or openai account error - if (err?.message === 'invalid message format') { - console.log('删除一个任务'); + if ( + err?.message === 'invalid message format' || + err.response?.data?.error?.type === 'invalid_request_error' + ) { + console.log(dataItems); + try { + await TrainingData.findByIdAndUpdate(trainingId, { + lockTime: new Date('2998/5/5') + }); + } catch (error) {} + return generateVector(); + } + + // err vector data + if (err?.code === 500) { await TrainingData.findByIdAndRemove(trainingId); + return generateVector(); } // 账号余额不足,删除任务