Package: @effect/ai
Module: Chat
Creates a Chat service from previously exported chat data.
Restores a chat session from structured data that was previously exported
using the export method. Useful for persisting and restoring conversation
state.
Example
import { Chat } from "@effect/ai"
import { Effect } from "effect"
declare const loadFromDatabase: (sessionId: string) => Effect.Effect<unknown>
const restoreChat = Effect.gen(function* () {
// Assume we have previously exported data
const savedData = yield* loadFromDatabase("chat-session-123")
const restoredChat = yield* Chat.fromExport(savedData)
// Continue the conversation from where it left off
const response = yield* restoredChat.generateText({
prompt: "Let's continue our discussion"
})
}).pipe(
Effect.catchTag("ParseError", (error) => {
console.log("Failed to restore chat:", error.message)
return Effect.void
})
)
Signature
declare const fromExport: (data: unknown) => Effect.Effect<Service, ParseError, LanguageModel.LanguageModel>
Since v1.0.0