fix: AbortController for Bing Mode

This commit is contained in:
josc146
2023-03-28 12:09:36 +08:00
parent 4f72968c12
commit ac47f6f7b6
4 changed files with 13 additions and 12 deletions
+9 -8
View File
@@ -21,8 +21,8 @@ export async function generateAnswersWithBingWebApi(
if (msg.stop) {
console.debug('stop generating')
port.postMessage({ done: true })
controller.abort()
port.onMessage.removeListener(stopListener)
controller.abort()
}
}
port.onMessage.addListener(stopListener)
@@ -36,6 +36,14 @@ export async function generateAnswersWithBingWebApi(
let answer = ''
const response = await bingAIClient
.sendMessage(question, {
abortController: controller,
toneStyle: (await getUserConfig()).modelMode,
onProgress: (token) => {
answer += token
// remove reference markers [^number^]
answer = answer.replaceAll(/\[\^\d+\^\]/g, '')
port.postMessage({ answer: answer, done: false, session: null })
},
...(session.bingWeb.conversationId
? {
conversationId: session.bingWeb.conversationId,
@@ -44,13 +52,6 @@ export async function generateAnswersWithBingWebApi(
invocationId: session.bingWeb.invocationId,
}
: {}),
onProgress: (token) => {
answer += token
// remove reference markers [^number^]
answer = answer.replaceAll(/\[\^\d+\^\]/g, '')
port.postMessage({ answer: answer, done: false, session: null })
},
toneStyle: (await getUserConfig()).modelMode,
})
.catch((err) => {
port.onMessage.removeListener(stopListener)
+1 -1
View File
@@ -57,8 +57,8 @@ export async function generateAnswersWithChatgptWebApi(port, question, session,
if (msg.stop) {
console.debug('stop generating')
port.postMessage({ done: true })
controller.abort()
port.onMessage.removeListener(stopListener)
controller.abort()
}
}
port.onMessage.addListener(stopListener)
+1 -1
View File
@@ -27,8 +27,8 @@ export async function generateAnswersWithCustomApi(port, question, session, apiK
if (msg.stop) {
console.debug('stop generating')
port.postMessage({ done: true })
controller.abort()
port.onMessage.removeListener(stopListener)
controller.abort()
}
}
port.onMessage.addListener(stopListener)
+2 -2
View File
@@ -39,8 +39,8 @@ export async function generateAnswersWithGptCompletionApi(
if (msg.stop) {
console.debug('stop generating')
port.postMessage({ done: true })
controller.abort()
port.onMessage.removeListener(stopListener)
controller.abort()
}
}
port.onMessage.addListener(stopListener)
@@ -116,8 +116,8 @@ export async function generateAnswersWithChatgptApi(port, question, session, api
if (msg.stop) {
console.debug('stop generating')
port.postMessage({ done: true })
controller.abort()
port.onMessage.removeListener(stopListener)
controller.abort()
}
}
port.onMessage.addListener(stopListener)