diff --git a/src/chatgpt-api.ts b/src/chatgpt-api.ts index 16ef2c7..17792d6 100644 --- a/src/chatgpt-api.ts +++ b/src/chatgpt-api.ts @@ -210,17 +210,15 @@ export class ChatGPTAPI { if (response?.choices?.length) { const delta = response.choices[0].delta - if (delta?.content) { - result.delta = delta.content - result.text += delta.content - result.detail = response + result.delta = delta.content + if (delta?.content) result.text += delta.content + result.detail = response - if (delta.role) { - result.role = delta.role - } - - onProgress?.(result) + if (delta.role) { + result.role = delta.role } + + onProgress?.(result) } } catch (err) { console.warn('OpenAI stream SEE event unexpected error', err) @@ -333,15 +331,17 @@ export class ChatGPTAPI { } const systemMessageOffset = messages.length - let nextMessages = messages.concat([ - { - ...{ - role: 'user', - content: text, - name: opts.name - } - } - ]) + let nextMessages = text + ? messages.concat([ + { + ...{ + role: 'user', + content: text, + name: opts.name + } + } + ]) + : messages let numTokens = 0 do {