diff --git a/web/src/components/search/SearchHelper.tsx b/web/src/components/search/SearchHelper.tsx index 08a223cca..bbbc13105 100644 --- a/web/src/components/search/SearchHelper.tsx +++ b/web/src/components/search/SearchHelper.tsx @@ -52,8 +52,6 @@ const getAssistantMessage = ({ ); } - console.log(searchResponse.suggestedSearchType); - console.log(selectedSearchType); if ( selectedSearchType !== SearchType.AUTOMATIC && searchResponse.suggestedSearchType !== selectedSearchType diff --git a/web/src/lib/search/streaming.ts b/web/src/lib/search/streaming.ts index efb4a4acd..2e23b23f4 100644 --- a/web/src/lib/search/streaming.ts +++ b/web/src/lib/search/streaming.ts @@ -9,10 +9,10 @@ const processSingleChunk = ( chunk: string, currPartialChunk: string | null ): [{ [key: string]: any } | null, string | null] => { - const completeChunk = chunk + (currPartialChunk || ""); + const completeChunk = (currPartialChunk || "") + chunk; try { // every complete chunk should be valid JSON - const chunkJson = JSON.parse(chunk); + const chunkJson = JSON.parse(completeChunk); return [chunkJson, null]; } catch (err) { // if it's not valid JSON, then it's probably an incomplete chunk @@ -42,10 +42,12 @@ const processRawChunkString = ( ); if (processedChunk) { parsedChunkSections.push(processedChunk); + currPartialChunk = null; } else { currPartialChunk = partialChunk; } }); + return [parsedChunkSections, currPartialChunk]; }; @@ -112,9 +114,7 @@ export const searchRequestStreamed = async ({ if (!completedChunks.length && !partialChunk) { break; } - if (partialChunk) { - previousPartialChunk = partialChunk; - } + previousPartialChunk = partialChunk; completedChunks.forEach((chunk) => { // TODO: clean up response / this logic const answerChunk = chunk.answer_data;