forked from open-webui/open-webui
feat: make chunk splitting a configurable option
This commit is contained in:
parent
efa258c695
commit
67df928c7a
5 changed files with 41 additions and 7 deletions
|
@ -6,9 +6,14 @@ type TextStreamUpdate = {
|
|||
// createOpenAITextStream takes a ReadableStreamDefaultReader from an SSE response,
|
||||
// and returns an async generator that emits delta updates with large deltas chunked into random sized chunks
|
||||
export async function createOpenAITextStream(
|
||||
messageStream: ReadableStreamDefaultReader
|
||||
messageStream: ReadableStreamDefaultReader,
|
||||
splitLargeDeltas: boolean
|
||||
): Promise<AsyncGenerator<TextStreamUpdate>> {
|
||||
return streamLargeDeltasAsRandomChunks(openAIStreamToIterator(messageStream));
|
||||
let iterator = openAIStreamToIterator(messageStream);
|
||||
if (splitLargeDeltas) {
|
||||
iterator = streamLargeDeltasAsRandomChunks(iterator);
|
||||
}
|
||||
return iterator;
|
||||
}
|
||||
|
||||
async function* openAIStreamToIterator(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue