feat: 拆分数据自定义prompt

This commit is contained in:
archer
2023-04-03 00:37:40 +08:00
parent 16a31de1c7
commit 56ba6fa5f7
7 changed files with 40 additions and 14 deletions

View File

@@ -14,11 +14,6 @@ export async function generateQA(next = false): Promise<any> {
if (global.generatingQA && !next) return;
global.generatingQA = true;
const systemPrompt: ChatCompletionRequestMessage = {
role: 'system',
content: `总结助手。我会向你发送一段长文本,请从中总结出5至30个问题和答案,答案请尽量详细,并按以下格式返回: Q1:\nA1:\nQ2:\nA2:\n`
};
try {
const redis = await connectRedis();
// 找出一个需要生成的 dataItem
@@ -63,6 +58,13 @@ export async function generateQA(next = false): Promise<any> {
// 获取 openai 请求实例
const chatAPI = getOpenAIApi(userApiKey || systemKey);
const systemPrompt: ChatCompletionRequestMessage = {
role: 'system',
content: `${
dataItem.prompt || '下面是一段长文本'
},请从中总结出5至30个问题和答案,答案尽量详细,并按以下格式返回: Q1:\nA1:\nQ2:\nA2:\n`
};
// 请求 chatgpt 获取回答
const response = await chatAPI
.createChatCompletion(

View File

@@ -8,6 +8,11 @@ const SplitDataSchema = new Schema({
ref: 'user',
required: true
},
prompt: {
// 拆分时的提示词
type: String,
required: true
},
modelId: {
type: Schema.Types.ObjectId,
ref: 'model',