mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-27 00:17:31 +00:00
perf: 5进程同时进行
This commit is contained in:
@@ -11,9 +11,17 @@ import { VecModelDataPrefix } from '@/constants/redis';
|
|||||||
import { customAlphabet } from 'nanoid';
|
import { customAlphabet } from 'nanoid';
|
||||||
const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz1234567890', 12);
|
const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz1234567890', 12);
|
||||||
|
|
||||||
export async function generateQA(next = false): Promise<any> {
|
export async function generateQA(): Promise<any> {
|
||||||
if (global.generatingQA && !next) return;
|
// 最多 5 个进程
|
||||||
global.generatingQA = true;
|
if (global.generatingQA >= 5) {
|
||||||
|
console.log('QA 最多5个进程');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
global.generatingQA += 1;
|
||||||
|
|
||||||
|
setTimeout(() => {
|
||||||
|
generateQA();
|
||||||
|
}, 3000);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const redis = await connectRedis();
|
const redis = await connectRedis();
|
||||||
@@ -24,7 +32,7 @@ export async function generateQA(next = false): Promise<any> {
|
|||||||
|
|
||||||
if (!dataItem) {
|
if (!dataItem) {
|
||||||
console.log('没有需要生成 QA 的数据');
|
console.log('没有需要生成 QA 的数据');
|
||||||
global.generatingQA = false;
|
global.generatingQA = 0;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -128,16 +136,17 @@ export async function generateQA(next = false): Promise<any> {
|
|||||||
text: systemPrompt.content + text + response.rawContent
|
text: systemPrompt.content + text + response.rawContent
|
||||||
});
|
});
|
||||||
|
|
||||||
generateQA(true);
|
generateQA();
|
||||||
generateVector(true);
|
generateVector(true);
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
console.log(error);
|
console.log(error);
|
||||||
console.log('生成QA错误:', error?.response);
|
console.log('生成QA错误:', error?.response);
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
generateQA(true);
|
generateQA();
|
||||||
}, 5000);
|
}, 5000);
|
||||||
}
|
}
|
||||||
|
global.generatingQA--;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -27,6 +27,7 @@ export async function connectToDatabase(): Promise<void> {
|
|||||||
global.mongodb = null;
|
global.mongodb = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
global.generatingQA = 0;
|
||||||
generateQA();
|
generateQA();
|
||||||
// generateAbstract();
|
// generateAbstract();
|
||||||
generateVector();
|
generateVector();
|
||||||
|
@@ -34,7 +34,7 @@ export const sendCode = (email: string, code: string, type: `${EmailTypeEnum}`)
|
|||||||
};
|
};
|
||||||
mailTransport.sendMail(options, function (err, msg) {
|
mailTransport.sendMail(options, function (err, msg) {
|
||||||
if (err) {
|
if (err) {
|
||||||
console.log('error->', err);
|
console.log('send email error->', err);
|
||||||
reject('邮箱异常');
|
reject('邮箱异常');
|
||||||
} else {
|
} else {
|
||||||
resolve('');
|
resolve('');
|
||||||
@@ -53,7 +53,7 @@ export const sendTrainSucceed = (email: string, modelName: string) => {
|
|||||||
};
|
};
|
||||||
mailTransport.sendMail(options, function (err, msg) {
|
mailTransport.sendMail(options, function (err, msg) {
|
||||||
if (err) {
|
if (err) {
|
||||||
console.log('error->', err);
|
console.log('send email error->', err);
|
||||||
reject('邮箱异常');
|
reject('邮箱异常');
|
||||||
} else {
|
} else {
|
||||||
resolve('');
|
resolve('');
|
||||||
|
2
src/types/index.d.ts
vendored
2
src/types/index.d.ts
vendored
@@ -4,7 +4,7 @@ import type { RedisClientType } from 'redis';
|
|||||||
declare global {
|
declare global {
|
||||||
var mongodb: Mongoose | string | null;
|
var mongodb: Mongoose | string | null;
|
||||||
var redisClient: RedisClientType | null;
|
var redisClient: RedisClientType | null;
|
||||||
var generatingQA: boolean;
|
var generatingQA: number;
|
||||||
var generatingAbstract: boolean;
|
var generatingAbstract: boolean;
|
||||||
var generatingVector: boolean;
|
var generatingVector: boolean;
|
||||||
var QRCode: any;
|
var QRCode: any;
|
||||||
|
Reference in New Issue
Block a user