createDataStream
The createDataStream function allows you to stream additional data to the client (see Streaming Data).
Import
import { createDataStream } from "ai"Example
const stream = createDataStream({ async execute(dataStream) { // Write data dataStream.writeData({ value: 'Hello' });
// Write annotation dataStream.writeMessageAnnotation({ type: 'status', value: 'processing' });
// Merge another stream const otherStream = getAnotherStream(); dataStream.merge(otherStream); }, onError: error => `Custom error: ${error.message}`,});API Signature
Parameters
execute:
(dataStream: DataStreamWriter) => Promise<void> | void
DataStreamWriter
write:
(data: DataStreamString) => void
writeData:
(value: JSONValue) => void
writeMessageAnnotation:
(value: JSONValue) => void
writeSource:
(source: Source) => void
merge:
(stream: ReadableStream<DataStreamString>) => void
onError:
((error: unknown) => string) | undefined
onError:
(error: unknown) => string
Returns
ReadableStream<DataStreamString>
A readable stream that emits formatted data stream parts.