readUIMessageStream

Turn a UI message stream into message snapshots.

Consumes the UI-message wire protocol and yields a growing UIMessage after each chunk, so a view can render the latest snapshot without reducing chunks itself.

for try await message in readUIMessageStream(stream: chunks) {
  render(message)
}

Signature

func readUIMessageStream(
    _ chunks: AsyncThrowingStream<UIMessageChunk, Error>,
    message: UIMessage? = nil
) -> AsyncThrowingStream<UIMessage, Error>

Defined in Sources/AI/Transport/UIMessageStreamBuilder.swift.

Parameters

ParameterTypeDefault
_AsyncThrowingStream<UIMessageChunk, Error>required
messageUIMessage?nil

Returns

An AsyncThrowingStream<UIMessage, Error>.

See also