fix: groq frequently stops during long responses (#2584)
This commit is contained in:
parent
3fded8fd20
commit
fe89901a65
@ -60,14 +60,20 @@ export function requestInference(
|
|||||||
}
|
}
|
||||||
const text = decoder.decode(value)
|
const text = decoder.decode(value)
|
||||||
const lines = text.trim().split('\n')
|
const lines = text.trim().split('\n')
|
||||||
|
let cachedLines = ''
|
||||||
for (const line of lines) {
|
for (const line of lines) {
|
||||||
if (line.startsWith('data: ') && !line.includes('data: [DONE]')) {
|
try {
|
||||||
const data = JSON.parse(line.replace('data: ', ''))
|
const toParse = cachedLines + line
|
||||||
content += data.choices[0]?.delta?.content ?? ''
|
if (!line.includes('data: [DONE]')) {
|
||||||
if (content.startsWith('assistant: ')) {
|
const data = JSON.parse(toParse.replace('data: ', ''))
|
||||||
content = content.replace('assistant: ', '')
|
content += data.choices[0]?.delta?.content ?? ''
|
||||||
|
if (content.startsWith('assistant: ')) {
|
||||||
|
content = content.replace('assistant: ', '')
|
||||||
|
}
|
||||||
|
if (content !== '') subscriber.next(content)
|
||||||
}
|
}
|
||||||
subscriber.next(content)
|
} catch {
|
||||||
|
cachedLines = line
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user