ai
Version:
AI SDK by Vercel - build apps like ChatGPT, Claude, Gemini, and more with a single interface for any model using the Vercel AI Gateway or go direct to OpenAI, Anthropic, Google, or any other model provider.
24 lines (21 loc) • 755 B
text/typescript
import { UIMessageChunk } from '../ui-message-stream/ui-message-chunks';
import {
HttpChatTransport,
HttpChatTransportInitOptions,
} from './http-chat-transport';
import { transformTextToUiMessageStream } from './transform-text-to-ui-message-stream';
import { UIMessage } from './ui-messages';
export class TextStreamChatTransport<
UI_MESSAGE extends UIMessage,
> extends HttpChatTransport<UI_MESSAGE> {
constructor(options: HttpChatTransportInitOptions<UI_MESSAGE> = {}) {
super(options);
}
protected processResponseStream(
stream: ReadableStream<Uint8Array<ArrayBufferLike>>,
): ReadableStream<UIMessageChunk> {
return transformTextToUiMessageStream({
stream: stream.pipeThrough(new TextDecoderStream()),
});
}
}