fix: 重复生成向量

This commit is contained in:
archer
2023-04-04 22:12:48 +08:00
parent a7c5d3cc05
commit b73829a25c
6 changed files with 10 additions and 13 deletions

View File

@@ -58,7 +58,7 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse<
})
);
generateVector(true);
generateVector();
jsonRes(res, {
data: insertRes.filter((item) => item.status === 'rejected').length

View File

@@ -66,7 +66,7 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse<
})
);
generateVector(true);
generateVector();
jsonRes(res, {
data: insertRedisRes.filter((item) => item.status === 'rejected').length

View File

@@ -17,11 +17,7 @@ export async function generateQA(): Promise<any> {
console.log('QA 最多5个进程');
return;
}
global.generatingQA += 1;
setTimeout(() => {
generateQA();
}, 3000);
global.generatingQA++;
try {
const redis = await connectRedis();
@@ -136,17 +132,19 @@ export async function generateQA(): Promise<any> {
text: systemPrompt.content + text + response.rawContent
});
global.generatingQA--;
generateQA();
generateVector(true);
generateVector();
} catch (error: any) {
console.log(error);
console.log('生成QA错误:', error?.response);
setTimeout(() => {
global.generatingQA--;
generateQA();
}, 5000);
}
global.generatingQA--;
}
/**

View File

@@ -1,5 +1,3 @@
import { getOpenAIApi } from '@/service/utils/chat';
import { httpsAgent } from '@/service/utils/tools';
import { connectRedis } from '../redis';
import { VecModelDataIdx } from '@/constants/redis';
import { vectorToBuffer } from '@/utils/tools';
@@ -88,6 +86,7 @@ export async function generateVector(next = false): Promise<any> {
setTimeout(() => {
generateVector(true);
}, 60000);
return;
}
setTimeout(() => {

View File

@@ -30,7 +30,7 @@ export async function connectToDatabase(): Promise<void> {
global.generatingQA = 0;
generateQA();
// generateAbstract();
generateVector();
generateVector(true);
}
export * from './models/authCode';

View File

@@ -75,7 +75,7 @@ export const readPdfContent = (file: File) =>
const readPDFPage = async (doc: any, pageNo: number) => {
const page = await doc.getPage(pageNo);
const tokenizedText = await page.getTextContent();
const pageText = tokenizedText.items.map((token: any) => token.str).join('');
const pageText = tokenizedText.items.map((token: any) => token.str).join(' ');
return pageText;
};