Fix petals truncated prompt continuation

This commit is contained in:
Webifi 2023-09-02 08:15:01 -05:00
parent 40e38d8b54
commit 559db15fa7
1 changed files with 6 additions and 4 deletions

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)