Spaces:
Paused
Paused
File size: 794 Bytes
35743bd | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | import { createResponsesApiTransformStream } from "@omniroute/open-sse/transformer/responsesTransformer.ts";
export async function transformChatCompletionSseToResponses(rawSse: string): Promise<string> {
const encoder = new TextEncoder();
const decoder = new TextDecoder();
const inputStream = new ReadableStream<Uint8Array>({
start(controller) {
controller.enqueue(encoder.encode(rawSse));
controller.close();
},
});
const outputStream = inputStream.pipeThrough(createResponsesApiTransformStream());
const reader = outputStream.getReader();
let output = "";
while (true) {
const { value, done } = await reader.read();
if (done) break;
output += decoder.decode(value, { stream: true });
}
output += decoder.decode();
return output;
}
|