mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-17 08:50:15 +01:00
feat: add regenerate to all response message as official
This commit is contained in:
parent
e3b0cb7db7
commit
0891566d1e
8 changed files with 211 additions and 177 deletions
|
|
@ -12,7 +12,7 @@ router.use('/bing', askBing);
|
|||
router.use('/sydney', askSydney);
|
||||
|
||||
router.post('/', async (req, res) => {
|
||||
let { model, text, parentMessageId, conversationId: oldConversationId, ...convo } = req.body;
|
||||
let { model, text, overrideParentMessageId=null, parentMessageId, conversationId: oldConversationId, ...convo } = req.body;
|
||||
if (text.length === 0) {
|
||||
return handleError(res, { text: 'Prompt empty or too short' });
|
||||
}
|
||||
|
|
@ -36,51 +36,22 @@ router.post('/', async (req, res) => {
|
|||
...convo
|
||||
});
|
||||
|
||||
await saveMessage(userMessage);
|
||||
await saveConvo(req?.session?.user?.username, { ...userMessage, model, ...convo });
|
||||
if (!overrideParentMessageId) {
|
||||
await saveMessage(userMessage);
|
||||
await saveConvo(req?.session?.user?.username, { ...userMessage, model, ...convo });
|
||||
}
|
||||
|
||||
return await ask({
|
||||
userMessage,
|
||||
model,
|
||||
convo,
|
||||
preSendRequest: true,
|
||||
overrideParentMessageId,
|
||||
req,
|
||||
res
|
||||
});
|
||||
});
|
||||
|
||||
router.post('/regenerate', async (req, res) => {
|
||||
const { model } = req.body;
|
||||
|
||||
const oldUserMessage = await getMessages({ messageId: req.body });
|
||||
|
||||
if (oldUserMessage) {
|
||||
const convo = await getConvo(userMessage?.conversationId);
|
||||
|
||||
const userMessageId = crypto.randomUUID();
|
||||
|
||||
let userMessage = {
|
||||
...userMessage,
|
||||
messageId: userMessageId
|
||||
};
|
||||
|
||||
console.log('ask log for regeneration', {
|
||||
model,
|
||||
...userMessage,
|
||||
...convo
|
||||
});
|
||||
|
||||
return await ask({
|
||||
userMessage,
|
||||
model,
|
||||
convo,
|
||||
preSendRequest: false,
|
||||
req,
|
||||
res
|
||||
});
|
||||
} else return handleError(res, { text: 'Parent message not found' });
|
||||
});
|
||||
|
||||
const ask = async ({
|
||||
userMessage,
|
||||
overrideParentMessageId = null,
|
||||
|
|
@ -136,10 +107,10 @@ const ask = async ({
|
|||
gptResponse.text = gptResponse.response;
|
||||
// gptResponse.id = gptResponse.messageId;
|
||||
gptResponse.parentMessageId = overrideParentMessageId || userMessageId;
|
||||
userMessage.conversationId = conversationId
|
||||
? conversationId
|
||||
: gptResponse.conversationId;
|
||||
await saveMessage(userMessage);
|
||||
// userMessage.conversationId = conversationId
|
||||
// ? conversationId
|
||||
// : gptResponse.conversationId;
|
||||
// await saveMessage(userMessage);
|
||||
delete gptResponse.response;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue