mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-09-22 06:00:56 +02:00
feat: support resubmit.
TODO: basic implementation. should add multi-path record in future. feat: add deleteMessahesSince feat: saveMessage will do createOrSave feat: reorginazed submission
This commit is contained in:
parent
b9975ac283
commit
bdfc895800
10 changed files with 189 additions and 67 deletions
|
@ -10,20 +10,20 @@ const {
|
|||
customClient,
|
||||
detectCode
|
||||
} = require('../../app/');
|
||||
const { getConvo, saveMessage, deleteMessages, saveConvo } = require('../../models');
|
||||
const { getConvo, saveMessage, deleteMessagesSince, deleteMessages, saveConvo } = require('../../models');
|
||||
const { handleError, sendMessage } = require('./handlers');
|
||||
|
||||
router.use('/bing', askBing);
|
||||
router.use('/sydney', askSydney);
|
||||
|
||||
router.post('/', async (req, res) => {
|
||||
let { model, text, parentMessageId, conversationId, chatGptLabel, promptPrefix } = req.body;
|
||||
let { id, model, text, parentMessageId, conversationId, chatGptLabel, promptPrefix } = req.body;
|
||||
if (text.length === 0) {
|
||||
return handleError(res, 'Prompt empty or too short');
|
||||
}
|
||||
|
||||
const userMessageId = crypto.randomUUID();
|
||||
let userMessage = { id: userMessageId, sender: 'User', text };
|
||||
const userMessageId = id || crypto.randomUUID();
|
||||
let userMessage = { id: userMessageId, sender: 'User', text, parentMessageId, conversationId, isCreatedByUser: true };
|
||||
|
||||
console.log('ask log', {
|
||||
model,
|
||||
|
@ -53,6 +53,12 @@ router.post('/', async (req, res) => {
|
|||
}
|
||||
}
|
||||
|
||||
if (id) {
|
||||
// existing conversation
|
||||
await saveMessage(userMessage);
|
||||
await deleteMessagesSince(userMessage);
|
||||
} else {}
|
||||
|
||||
res.writeHead(200, {
|
||||
Connection: 'keep-alive',
|
||||
'Content-Type': 'text/event-stream',
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue