Merge pull request #283 from Webifi/main

fix continuing truncated messages
This commit is contained in:
Niek van der Maas 2023-09-02 15:28:27 +02:00 committed by GitHub
commit 98b2b87ff7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 4 deletions

View File

@ -89,6 +89,7 @@
const continueIncomplete = () => { const continueIncomplete = () => {
editing = false editing = false
truncateFromMessage(chatId, message.uuid)
$continueMessage = message.uuid $continueMessage = message.uuid
} }

View File

@ -140,11 +140,13 @@ export const chatRequest = async (
doLead = false doLead = false
} }
// const inputArray = buildInputArray(rMessages).map(m => m.content) // const inputArray = buildInputArray(rMessages).map(m => m.content)
const lInputArray = buildInputArray(rMessages.slice(0, -1)).map(m => m.content) const lInputArray = doLead
? buildInputArray(rMessages.slice(0, -1)).map(m => m.content)
: buildInputArray(rMessages.slice()).map(m => m.content)
const nInputArray = buildInputArray(rMessages.slice(-1)).map(m => m.content) const nInputArray = buildInputArray(rMessages.slice(-1)).map(m => m.content)
const leadPrompt = (leadPromptSequence && doLead) ? delimiter + leadPromptSequence : '' const leadPrompt = (leadPromptSequence && doLead) ? delimiter + leadPromptSequence : ''
const lastPrompt = startSequence + lInputArray.join(delimiter) const lastPrompt = startSequence + lInputArray.join(delimiter)
const nextPrompt = nInputArray.slice(-1).join('') + leadPrompt const nextPrompt = doLead ? nInputArray.slice(-1).join('') + leadPrompt : ''
// set up the request // set up the request
chatResponse.onFinish(() => { chatResponse.onFinish(() => {
@ -170,7 +172,7 @@ export const chatRequest = async (
} }
midDel = midDel.length ? delimiter.slice(0, 0 - midDel.length) : delimiter midDel = midDel.length ? delimiter.slice(0, 0 - midDel.length) : delimiter
let inputPrompt = midDel let inputPrompt = doLead ? midDel : ''
const getNewWs = ():Promise<WebSocket> => new Promise<WebSocket>((resolve, reject) => { const getNewWs = ():Promise<WebSocket> => new Promise<WebSocket>((resolve, reject) => {
// console.warn('requesting new ws') // console.warn('requesting new ws')
@ -192,7 +194,7 @@ export const chatRequest = async (
throw err throw err
} }
// console.warn('got new ws') // console.warn('got new ws')
inputPrompt = lastPrompt + delimiter inputPrompt = lastPrompt + (doLead ? delimiter : '')
providerData.knownBuffer = '' providerData.knownBuffer = ''
providerData.ws = nws providerData.ws = nws
resolve(nws) resolve(nws)