UNPKG

@assistant-ui/react

Version:

Typescript/React library for AI Chat

35 lines 1.3 kB
// src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts import { toCoreMessages } from "../edge/converters/toCoreMessages.mjs"; import { toLanguageModelTools } from "../edge/converters/toLanguageModelTools.mjs"; import { toolResultStream } from "../edge/streams/toolResultStream.mjs"; import { asAsyncIterable } from "../edge/EdgeModelAdapter.mjs"; import { getEdgeRuntimeStream } from "../edge/createEdgeRuntimeAPI.mjs"; import { AssistantMessageAccumulator } from "assistant-stream"; var DangerousInBrowserAdapter = class { constructor(options) { this.options = options; } async *run({ messages, abortSignal, context }) { const res = await getEdgeRuntimeStream({ options: this.options, abortSignal, requestData: { system: context.system, messages: toCoreMessages(messages), tools: context.tools ? toLanguageModelTools(context.tools) : [], ...context.callSettings, ...context.config } }); const stream = res.pipeThrough(toolResultStream(context.tools, abortSignal)).pipeThrough(new AssistantMessageAccumulator()); for await (const update of asAsyncIterable(stream)) { yield update; } } }; export { DangerousInBrowserAdapter }; //# sourceMappingURL=DangerousInBrowserAdapter.mjs.map