UNPKG

@lobehub/chat

Version:

Lobe Chat - an open-source, high-performance chatbot framework that supports speech synthesis, multimodal, and extensible Function Call plugin system. Supports one-click free deployment of your private ChatGPT/LLM web application.

22 lines (18 loc) 800 B
import { EPubLoader as Loader } from '@langchain/community/document_loaders/fs/epub'; import { RecursiveCharacterTextSplitter } from 'langchain/text_splitter'; import { loaderConfig } from '../config'; import { TempFileManager } from '@/server/utils/tempFileManager'; export const EPubLoader = async (content: Uint8Array) => { const tempManager = new TempFileManager(); try { const tempPath = await tempManager.writeTempFile(content); const loader = new Loader(tempPath); const documents = await loader.load(); const splitter = new RecursiveCharacterTextSplitter(loaderConfig); return await splitter.splitDocuments(documents); } catch (e) { throw new Error(`EPubLoader error: ${(e as Error).message}`); } finally { tempManager.cleanup(); // 确保清理 } };