UNPKG

@ai2070/l0

Version:

L0: The Missing Reliability Substrate for AI

57 lines (56 loc) 1.43 kB
async function* wrapVercelAIObjectStream(streamResult, options = {}) { const { includeUsage = true } = options; try { for await (const chunk of streamResult.textStream) { yield { type: "token", value: chunk, timestamp: Date.now() }; } let usage; if (includeUsage) { try { const rawUsage = await streamResult.usage; if (rawUsage && typeof rawUsage === "object") { usage = rawUsage; } } catch { } } yield { type: "complete", timestamp: Date.now(), ...usage ? { usage } : {} }; } catch (error) { yield { type: "error", error: error instanceof Error ? error : new Error(String(error)), timestamp: Date.now() }; } } function isVercelAIObjectStream(obj) { if (!obj || typeof obj !== "object") { return false; } const stream = obj; return "partialObjectStream" in stream && "object" in stream && "textStream" in stream && !("toolCalls" in stream); } const vercelAIObjectAdapter = { name: "vercel-ai-object", detect: isVercelAIObjectStream, wrap: wrapVercelAIObjectStream }; import { registerAdapter } from "./registry"; try { registerAdapter(vercelAIObjectAdapter, { silent: true, priority: 10 }); } catch { } export { isVercelAIObjectStream, vercelAIObjectAdapter, wrapVercelAIObjectStream }; //# sourceMappingURL=vercel-ai-object.js.map