PageSourceSearch

https://java2ai.com/assets/js/80b78f63.4a3a1071.js

js java2ai.com collected 2026-10-03 21:35:09 UTC 27,920 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkspring_ai_alibaba_website=self.webpackChunkspring_ai_alibaba_website||[]).push([[4173],{28453:(e,r,n)=>{n.d(r,{R:()=>s,x:()=>c});var i=n(96540);const t={},d=i.createContext(t);function s(e){const r=i.useContext(d);return i.useMemo(function(){return"function"==typeof e?e(r):{...r,...e}},[r,e])}function c(e){let r;return r=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:s(e.components),i.createElement(d.Provider,{value:r},e.children)}},52983:(e,r,n)=>{n.r(r),n.d(r,{assets:()=>l,contentTitle:()=>c,default:()=>h,frontMatter:()=>s,metadata:()=>i,toc:()=>a});const i=JSON.parse('{"id":"rag/document-readers","title":"Document Reader \u4f7f\u7528\u6307\u5357","description":"Spring AI Alibaba \u63d0\u4f9b\u4e86\u4e30\u5bcc\u7684 Document Reader \u6269\u5c55\u5b9e\u73b0\uff0c\u652f\u6301\u4ece\u5404\u79cd\u6570\u636e\u6e90\u8bfb\u53d6\u6587\u6863\u5185\u5bb9\u3002\u672c\u6587\u6863\u5c06\u8be6\u7ec6\u4ecb\u7ecd Document Reader \u7684\u4f7f\u7528\u65b9\u6cd5\uff0c\u5e76\u5217\u51fa\u6240\u6709\u652f\u6301\u7684\u6269\u5c55\u5b9e\u73b0\u3002","source":"@site/integration/rag/document-readers.md","sourceDirName":"rag","slug":"/rag/document-readers","permalink":"/integration/rag/document-readers","draft":false,"unlisted":false,"editUrl":"https://github.com/spring-ai-alibaba/website/tree/main/integration/rag/document-readers.md","tags":[],"version":"current","lastUpdatedBy":"Ken Liu","lastUpdatedAt":1765761850000,"frontMatter":{},"sidebar":"integrationSidebar","previous":{"title":"ETL Pipeline","permalink":"/integration/rag/etl-pipeline"},"next":{"title":"Document Parser \u4f7f\u7528\u6307\u5357","permalink":"/integration/rag/document-parsers"}}');var t=n(74848),d=n(28453);const s={},c="Document Reader \u4f7f\u7528\u6307\u5357",l={},a=[{value:"\u76ee\u5f55",id:"\u76ee\u5f55",level:2},{value:"\u6982\u8ff0",id:"\u6982\u8ff0",level:2},{value:"\u8be6\u7ec6\u4f7f\u7528\u8bf4\u660e",id:"\u8be6\u7ec6\u4f7f\u7528\u8bf4\u660e",level:2},{value:"POI Document Reader \u793a\u4f8b",id:"poi-document-reader-\u793a\u4f8b",level:3},{value:"\u4f9d\u8d56\u914d\u7f6e",id:"\u4f9d\u8d56\u914d\u7f6e",level:4},{value:"\u57fa\u672c\u4f7f\u7528",id:"\u57fa\u672c\u4f7f\u7528",level:4},{value:"\u793a\u4f8b 1\uff1a\u8bfb\u53d6\u5355\u4e2a Word \u6587\u6863",id:"\u793a\u4f8b-1\u8bfb\u53d6\u5355\u4e2a-word-\u6587\u6863",level:5},{value:"\u793a\u4f8b 2\uff1a\u4f7f\u7528 Resource \u5bf9\u8c61",id:"\u793a\u4f8b-2\u4f7f\u7528-resource-\u5bf9\u8c61",level:5},{value:"\u793a\u4f8b 3\uff1a\u81ea\u5b9a\u4e49\u6587\u672c\u683c\u5f0f\u5316",id:"\u793a\u4f8b-3\u81ea\u5b9a\u4e49\u6587\u672c\u683c\u5f0f\u5316",level:5},{value:"\u793a\u4f8b 4\uff1a\u8bfb\u53d6 Excel \u6587\u4ef6",id:"\u793a\u4f8b-4\u8bfb\u53d6-excel-\u6587\u4ef6",level:5},{value:"\u793a\u4f8b 5\uff1a\u5728 Spring Boot \u5e94\u7528\u4e2d\u4f7f\u7528",id:"\u793a\u4f8b-5\u5728-spring-boot-\u5e94\u7528\u4e2d\u4f7f\u7528",level:5},{value:"\u5143\u6570\u636e",id:"\u5143\u6570\u636e",level:4},{value:"\u6ce8\u610f\u4e8b\u9879",id:"\u6ce8\u610f\u4e8b\u9879",level:4},{value:"\u5b8c\u6574\u793a\u4f8b\uff1aRAG \u96c6\u6210",id:"\u5b8c\u6574\u793a\u4f8brag-\u96c6\u6210",level:4},{value:"\u652f\u6301\u7684\u6269\u5c55\u5b9e\u73b0",id:"\u652f\u6301\u7684\u6269\u5c55\u5b9e\u73b0",level:2},{value:"\u4f7f\u7528\u8bf4\u660e",id:"\u4f7f\u7528\u8bf4\u660e",level:3},{value:"\u901a\u7528\u63a5\u53e3",id:"\u901a\u7528\u63a5\u53e3",level:3},{value:"\u4f9d\u8d56\u7248\u672c",id:"\u4f9d\u8d56\u7248\u672c",level:3},{value:"\u66f4\u591a\u4fe1\u606f",id:"\u66f4\u591a\u4fe1\u606f",level:3}];function o(e){const r={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",header:"header",hr:"hr",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(r.header,{children:(0,t.jsx)(r.h1,{id:"document-reader-\u4f7f\u7528\u6307\u5357",children:"Document Reader \u4f7f\u7528\u6307\u5357"})}),"\n",(0,t.jsx)(r.p,{children:"Spring AI Alibaba \u63d0\u4f9b\u4e86\u4e30\u5bcc\u7684 Document Reader \u6269\u5c55\u5b9e\u73b0\uff0c\u652f\u6301\u4ece\u5404\u79cd\u6570\u636e\u6e90\u8bfb\u53d6\u6587\u6863\u5185\u5bb9\u3002\u672c\u6587\u6863\u5c06\u8be6\u7ec6\u4ecb\u7ecd Document Reader \u7684\u4f7f\u7528\u65b9\u6cd5\uff0c\u5e76\u5217\u51fa\u6240\u6709\u652f\u6301\u7684\u6269\u5c55\u5b9e\u73b0\u3002"}),"\n",(0,t.jsx)(r.h2,{id:"\u76ee\u5f55",children:"\u76ee\u5f55"}),"\n",(0,t.jsxs)(r.ul,{children:["\n",(0,t.jsx)(r.li,{children:(0,t.jsx)(r.a,{href:"#%E6%A6%82%E8%BF%B0",children:"\u6982\u8ff0"})}),"\n",(0,t.jsx)(r.li,{children:(0,t.jsx)(r.a,{href:"#%E8%AF%A6%E7%BB%86%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E",children:"\u8be6\u7ec6\u4f7f\u7528\u8bf4\u660e"})}),"\n",(0,t.jsx)(r.li,{children:(0,t.jsx)(r.a,{href:"#%E6%94%AF%E6%8C%81%E7%9A%84%E6%89%A9%E5%B1%95%E5%AE%9E%E7%8E%B0",children:"\u652f\u6301\u7684\u6269\u5c55\u5b9e\u73b0"})}),"\n"]}),"\n",(0,t.jsx)(r.h2,{id:"\u6982\u8ff0",children:"\u6982\u8ff0"}),"\n",(0,t.jsx)(r.p,{children:"Document Reader \u662f Spring AI \u4e2d\u7528\u4e8e\u4ece\u4e0d\u540c\u6570\u636e\u6e90\u8bfb\u53d6\u6587\u6863\u7684\u6838\u5fc3\u63a5\u53e3\u3002Spring AI Alibaba \u6269\u5c55\u4e86\u8be5\u63a5\u53e3\uff0c\u63d0\u4f9b\u4e86\u591a\u79cd\u6570\u636e\u6e90\u7684\u5b9e\u73b0\uff0c\u5305\u62ec\uff1a"}),"\n",(0,t.jsxs)(r.ul,{children:["\n",(0,t.jsx)(r.li,{children:"\u672c\u5730\u6587\u4ef6\u683c\u5f0f\uff08Office \u6587\u6863\u3001PDF \u7b49\uff09"}),"\n",(0,t.jsx)(r.li,{children:"\u4e91\u5b58\u50a8\u670d\u52a1\uff08\u817e\u8baf\u4e91 COS\u3001\u963f\u91cc\u4e91 OSS \u7b49\uff09"}),"\n",(0,t.jsx)(r.li,{children:"\u6570\u636e\u5e93\uff08MySQL\u3001MongoDB\u3001SQLite\u3001Elasticsearch \u7b49\uff09"}),"\n",(0,t.jsx)(r.li,{children:"\u5728\u7ebf\u5e73\u53f0\uff08GitHub\u3001GitLab\u3001\u8bed\u96c0\u3001Notion\u3001Bilibili\u3001YouTube \u7b49\uff09"}),"\n",(0,t.jsx)(r.li,{children:"\u5176\u4ed6\u6570\u636e\u6e90\uff08\u90ae\u4ef6\u3001\u5f52\u6863\u6587\u4ef6\u7b49\uff09"}),"\n"]}),"\n",(0,t.jsx)(r.h2,{id:"\u8be6\u7ec6\u4f7f\u7528\u8bf4\u660e",children:"\u8be6\u7ec6\u4f7f\u7528\u8bf4\u660e"}),"\n",(0,t.jsx)(r.h3,{id:"poi-document-reader-\u793a\u4f8b",children:"POI Document Reader \u793a\u4f8b"}),"\n",(0,t.jsxs)(r.p,{children:[(0,t.jsx)(r.code,{children:"PoiDocumentReader"})," \u4f7f\u7528 Apache POI \u5e93\u89e3\u6790 Microsoft Office \u6587\u4ef6\uff0c\u652f\u6301\u591a\u79cd\u6587\u4ef6\u683c\u5f0f\uff0c\u5305\u62ec\uff1a"]}),"\n",(0,t.jsxs)(r.ul,{children:["\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Word \u6587\u6863"}),"\uff1a",(0,t.jsx)(r.code,{children:".doc"}),", ",(0,t.jsx)(r.code,{children:".docx"})]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"PowerPoint \u6f14\u793a\u6587\u7a3f"}),"\uff1a",(0,t.jsx)(r.code,{children:".ppt"}),", ",(0,t.jsx)(r.code,{children:".pptx"})]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Excel \u7535\u5b50\u8868\u683c"}),"\uff1a",(0,t.jsx)(r.code,{children:".xls"}),", ",(0,t.jsx)(r.code,{children:".xlsx"})]}),"\n"]}),"\n",(0,t.jsx)(r.h4,{id:"\u4f9d\u8d56\u914d\u7f6e",children:"\u4f9d\u8d56\u914d\u7f6e"}),"\n",(0,t.jsx)(r.p,{children:"\u4f7f\u7528 Maven \u6dfb\u52a0\u4f9d\u8d56\uff1a"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-xml",children:"<dependency>\n    <groupId>com.alibaba.cloud.ai</groupId>\n    <artifactId>spring-ai-alibaba-starter-document-reader-poi</artifactId>\n    <version>${version}</version>\n</dependency>\n"})}),"\n",(0,t.jsx)(r.h4,{id:"\u57fa\u672c\u4f7f\u7528",children:"\u57fa\u672c\u4f7f\u7528"}),"\n",(0,t.jsx)(r.h5,{id:"\u793a\u4f8b-1\u8bfb\u53d6\u5355\u4e2a-word-\u6587\u6863",children:"\u793a\u4f8b 1\uff1a\u8bfb\u53d6\u5355\u4e2a Word \u6587\u6863"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-java",children:"import 
1com.alibaba.cloud.ai.reader.poi.PoiDocumentReader;\nimport org.springframework.ai.document.Document;\nimport org.springframework.ai.document.DocumentReader;\nimport org.springframework.stereotype.Component;\n\nimport java.util.List;\n\n@Component\npublic class WordDocumentService {\n\n    public List<Document> readWordDocument(String filePath) {\n        // \u4f7f\u7528\u6587\u4ef6\u8def\u5f84\u521b\u5efa Reader\n        DocumentReader reader = new PoiDocumentReader(filePath);\n        \n        // \u8bfb\u53d6\u6587\u6863\u5185\u5bb9\n        List<Document> documents = reader.get();\n        \n        return documents;\n    }\n}\n"})}),"\n",(0,t.jsx)(r.h5,{id:"\u793a\u4f8b-2\u4f7f\u7528-resource-\u5bf9\u8c61",children:"\u793a\u4f8b 2\uff1a\u4f7f\u7528 Resource \u5bf9\u8c61"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-java",children:'import com.alibaba.cloud.ai.reader.poi.PoiDocumentReader;\nimport org.springframework.ai.document.Document;\nimport org.springframework.core.io.Resource;\nimport org.springframework.core.io.ClassPathResource;\n\nimport java.util.List;\n\npublic class DocumentReaderExample {\n\n    public List<Document> readFromClasspath() {\n        // \u4ece classpath \u8bfb\u53d6\u8d44\u6e90\n        Resource resource = new ClassPathResource("documents/sample.docx");\n        \n        // \u521b\u5efa Reader\n        PoiDocumentReader reader = new PoiDocumentReader(resource);\n        \n        // \u8bfb\u53d6\u6587\u6863\n        return reader.get();\n    }\n}\n'})}),"\n",(0,t.jsx)(r.h5,{id:"\u793a\u4f8b-3\u81ea\u5b9a\u4e49\u6587\u672c\u683c\u5f0f\u5316",children:"\u793a\u4f8b 3\uff1a\u81ea\u5b9a\u4e49\u6587\u672c\u683c\u5f0f\u5316"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-java",children:"import com.alibaba.cloud.ai.reader.poi.PoiDocumentReader;\nimport org.springframework.ai.reader.ExtractedTextFormatter;\n\npublic class FormattedDocumentReader {\n\n    public List<Document> readWithFormatting(String filePath) {\n        // \u521b\u5efa\u81ea\u5b9a\u4e49\u7684\u6587\u672c\u683c\u5f0f\u5316\u5668\n        ExtractedTextFormatter formatter = ExtractedTextFormatter.builder()\n            .withNumberOfTopTextLinesToDelete(0)\n            .withNumberOfBottomTextLinesToDelete(0)\n            .build();\n        \n        // \u4f7f\u7528\u683c\u5f0f\u5316\u5668\u521b\u5efa Reader\n        PoiDocumentReader reader = new PoiDocumentReader(filePath, formatter);\n        \n        return reader.get();\n    }\n}\n"})}),"\n",(0,t.jsx)(r.h5,{id:"\u793a\u4f8b-4\u8bfb\u53d6-excel-\u6587\u4ef6",children:"\u793a\u4f8b 4\uff1a\u8bfb\u53d6 Excel \u6587\u4ef6"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-java",children:'import com.alibaba.cloud.ai.reader.poi.PoiDocumentReader;\nimport org.springframework.ai.document.Document;\n\npublic class ExcelReaderExample {\n\n    public void readExcelFile(String excelPath) {\n        PoiDocumentReader reader = new PoiDocumentReader(excelPath);\n        List<Document> documents = reader.get();\n        \n        // Excel \u6587\u4ef6\u4f1a\u6309\u5de5\u4f5c\u8868\uff08Sheet\uff09\u7ec4\u7ec7\u5185\u5bb9\n        for (Document doc : documents) {\n            System.out.println("Content: " + doc.getText());\n            System.out.println("Metadata: " + doc.getMetadata());\n        }\n    }\n}\n'})}),"\n",(0,t.jsx)(r.h5,{id:"\u793a\u4f8b-5\u5728-spring-boot-\u5e94\u7528\u4e2d\u4f7f\u7528",children:"\u793a\u4f8b 5\uff1a\u5728 Spring Boot \u5e94\u7528\u4e2d\u4f7f\u7528"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-java",children:"import com.alibaba.cloud.ai.reader.poi.PoiDocumentReader;\nimport org.springframework.ai.document.Document;\nimport org.springframework.ai.vectorstore.VectorStore;\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.stereotype.Service;\n\nimport java.util.List;\n\n@Service\npublic class DocumentProcessingService {\n\n    @Autowired\n    private VectorStore vectorStore;\n\n    public void processDocument(String filePath) {\n        // 1. \u8bfb\u53d6\u6587\u6863\n        PoiDocumentReader reader = new PoiDocumentReader(filePath);\n        List<Document> documents = reader.get();\n        \n        // 2. \u5904\u7406\u6587\u6863\uff08\u4f8b\u5982\uff1a\u6587\u672c\u5206\u5272\uff09\n        // TextSplitter splitter = new TokenTextSplitter();\n        // List<Document> splitDocuments = splitter.transform(documents);\n        \n        // 3. \u5b58\u50a8\u5230\u5411\u91cf\u6570\u636e\u5e93\n        // vectorStore.write(splitDocuments);\n    }\n}\n"})}),"\n",(0,t.jsx)(r.h4,{id:"\u5143\u6570\u636e",children:"\u5143\u6570\u636e"}),"\n",(0,t.jsxs)(r.p,{children:[(0,t.jsx)(r.code,{children:"PoiDocumentReader"})," \u4f1a\u5728\u6bcf\u4e2a Document \u7684\u5143\u6570\u636e\u4e2d\u6dfb\u52a0\u4ee5\u4e0b\u4fe1\u606f\uff1a"]}),"\n",(0,t.jsxs)(r.ul,{children:["\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.code,{children:"source"}),": \u6587\u6863\u7684\u6e90\u8def\u5f84\u6216 URI"]}),"\n"]}),"\n",(0,t.jsx)(r.h4,{id:"\u6ce8\u610f\u4e8b\u9879",children:"\u6ce8\u610f\u4e8b\u9879"}),"\n",(0,t.jsxs)(r.ol,{children:["\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"\u6587\u4ef6\u683c\u5f0f\u652f\u6301"}
1),"\uff1a\u786e\u4fdd\u6587\u4ef6\u683c\u5f0f\u5728 Apache POI \u7684\u652f\u6301\u8303\u56f4\u5185"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"\u5185\u5b58\u4f7f\u7528"}),"\uff1a\u5904\u7406\u5927\u578b\u6587\u4ef6\u65f6\u6ce8\u610f\u5185\u5b58\u4f7f\u7528\u60c5\u51b5"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"\u5f02\u5e38\u5904\u7406"}),"\uff1a\u5efa\u8bae\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6dfb\u52a0\u9002\u5f53\u7684\u5f02\u5e38\u5904\u7406\u903b\u8f91"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"\u7f16\u7801\u95ee\u9898"}),"\uff1a\u67d0\u4e9b\u65e7\u683c\u5f0f\u7684 Office \u6587\u6863\u53ef\u80fd\u5b58\u5728\u7f16\u7801\u95ee\u9898"]}),"\n"]}),"\n",(0,t.jsx)(r.h4,{id:"\u5b8c\u6574\u793a\u4f8brag-\u96c6\u6210",children:"\u5b8c\u6574\u793a\u4f8b\uff1aRAG \u96c6\u6210"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-java",children:'import com.alibaba.cloud.ai.reader.poi.PoiDocumentReader;\nimport org.springframework.ai.document.Document;\nimport org.springframework.ai.reader.tika.TikaDocumentReader;\nimport org.springframework.ai.transformer.splitter.TokenTextSplitter;\nimport org.springframework.ai.vectorstore.VectorStore;\nimport org.springframework.stereotype.Component;\n\nimport java.util.List;\n\n@Component\npublic class RAGDocumentLoader {\n\n    private final VectorStore vectorStore;\n    private final TokenTextSplitter textSplitter;\n\n    public RAGDocumentLoader(VectorStore vectorStore, TokenTextSplitter textSplitter) {\n        this.vectorStore = vectorStore;\n        this.textSplitter = textSplitter;\n    }\n\n    public void loadDocumentToRAG(String filePath) {\n        // 1. \u8bfb\u53d6\u6587\u6863\n        PoiDocumentReader reader = new PoiDocumentReader(filePath);\n        List<Document> documents = reader.get();\n        \n        // 2. \u6587\u672c\u5206\u5272\uff08\u5c06\u5927\u6587\u6863\u5206\u5272\u6210\u5c0f\u5757\uff09\n        List<Document> splitDocuments = textSplitter.transform(documents);\n        \n        // 3. \u5b58\u50a8\u5230\u5411\u91cf\u6570\u636e\u5e93\n        vectorStore.write(splitDocuments);\n        \n        System.out.println("\u6210\u529f\u52a0\u8f7d " + splitDocuments.size() + " \u4e2a\u6587\u6863\u5757\u5230\u5411\u91cf\u6570\u636e\u5e93");\n    }\n    \n    public List<Document> searchSimilarDocuments(String query) {\n        // \u4ece\u5411\u91cf\u6570\u636e\u5e93\u68c0\u7d22\u76f8\u4f3c\u6587\u6863\n        return vectorStore.similaritySearch(query);\n    }\n}\n'})}),"\n",(0,t.jsx)(r.h2,{id:"\u652f\u6301\u7684\u6269\u5c55\u5b9e\u73b0",children:"\u652f\u6301\u7684\u6269\u5c55\u5b9e\u73b0"}),"\n",(0,t.jsx)(r.p,{children:"\u4e0b\u8868\u5217\u51fa\u4e86 Spring AI Alibaba \u63d0\u4f9b\u7684\u6240\u6709 Document Reader \u6269\u5c55\u5b9e\u73b0\uff1a"}),"\n",(0,t.jsxs)(r.table,{children:[(0,t.jsx)(r.thead,{children:(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.th,{children:"\u6a21\u5757\u540d\u79f0"}),(0,t.jsx)(r.th,{children:"ArtifactId"}),(0,t.jsx)(r.th,{children:"\u652f\u6301\u7684\u6570\u636e\u6e90/\u683c\u5f0f"}),(0,t.jsx)(r.th,{children:"\u8bf4\u660e"})]})}),(0,t.jsxs)(r.tbody,{children:[(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"Archive"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-archive"})}),(0,t.jsx)(r.td,{children:"ZIP, TAR, JAR \u7b49\u5f52\u6863\u6587\u4ef6"}),(0,t.jsx)(r.td,{children:"\u4ece\u5f52\u6863\u6587\u4ef6\u4e2d\u63d0\u53d6\u5e76\u8bfb\u53d6\u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"ArXiv"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-arxiv"})}),(0,t.jsx)(r.td,{children:"ArXiv \u5b66\u672f\u8bba\u6587"}),(0,t.jsx)(r.td,{children:"\u4ece ArXiv \u5e73\u53f0\u8bfb\u53d6\u5b66\u672f\u8bba\u6587\u5185\u5bb9"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"Bilibili"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-bilibili"})}),(0,t.jsx)(r.td,{children:"Bilibili \u89c6\u9891"}),(0,t.jsx)(r.td,{children:"\u8bfb\u53d6 Bilibili \u89c6\u9891\u4fe1\u606f\u548c\u5b57\u5e55\u5185\u5bb9"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"ChatGPT Data"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-chatgpt-data"})}),(0,t.jsx)(r.td,{children:"ChatGPT \u5bfc\u51fa\u6570\u636e"}),(0,t.jsx)(r.td,{children:"\u8bfb\u53d6 ChatGPT \u5bfc\u51fa\u7684\u5bf9\u8bdd\u6570\u636e"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"Elasticsearch"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-elasticsearch"})}),(0,t.jsx)(r.td,{children:"Elasticsearch \u7d22\u5f15"}),(0,t.jsx)(r.td,{children:"\u4ece Elasticsearch \u7d22\u5f15\u4e2d\u8bfb\u53d6\u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"Email"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-email"})}),(0,t.jsx)(r.td,{children:"\u90ae\u4ef6\u6587\u4ef6\uff08.eml, .mbox\uff09"}),(0,t.jsx)(r.td,{children:"\u8bfb\u53d6\u90ae\u4ef6\u6587\u4ef6\u5185\u5bb9"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"GitBook"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-gitbook"})}),(0,t.jsx)(r.td,{children:"GitBook \u6587\u6863"}),(0,t.jsx)(r.td,{children:"\u4ece GitBook \u5e73\u53f0\u8bfb\u53d6\u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"GitHub"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-github"})}),(0,t.jsx)(r.td,{children:"GitHub \u4ed3\u5e93"}),(0,t.jsx)(r.td,{children:"\u4ece GitHub \u4ed3\u5e93\u8bfb\u53d6\u6587\u4ef6\u548c\u4ee3\u7801"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"GitLab"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-gitlab"})}),(0,t.jsx)(r.td,{children:"GitLab \u4ed3\u5e93"}),(0,t.jsx)(r.td,{children:"\u4ece GitLab \u4ed3\u5e93\u8bfb\u53d6\u6587\u4ef6\u548c\u4ee3\u7801"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"GPT Repo"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-gpt-repo"})}),(0,t.jsx)(r.td,{children:"GPT \u4ed3\u5e93"}),(0,t.jsx)(r.td,{children:"\u4ece GPT \u4ed3\u5e93\u8bfb\u53d6\u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"HuggingFace FS"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-huggingface-fs"})}),(0,t.jsx)(r.td,{children:"HuggingFace \u6587\u4ef6\u7cfb\u7edf"}),(0,t.jsx)(r.td,{children:"\u4ece HuggingFace \u6587\u4ef6\u7cfb\u7edf\u8bfb\u53d6\u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"LarkSuite"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-larksuite"})}),(0,t.jsx)(r.td,{children:"\u98de\u4e66\u6587\u6863"}),(0,t.jsx)(r.td,{children:"\u4ece\u98de\u4e66\uff08LarkSuite\uff09\u5e73\u53f0\u8bfb\u53d6\u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"Mbox"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-mbox"})}),(0,t.jsx)(r.td,{children:"Mbox \u90ae\u4ef6\u683c\u5f0f"}),(0,t.jsx)(r.td,{children:"\u8bfb\u53d6 Mbox \u683c\u5f0f\u7684\u90ae\u4ef6\u6587\u4ef6"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"MongoDB"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-mongodb"})}),(0,t.jsx)(r.td,{children:"MongoDB \u6570\u636e\u5e93"}),(0,t.jsx)(r.td,{children:"\u4ece MongoDB \u6570\u636e\u5e93\u8bfb\u53d6\u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"MySQL"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-mysql"})}),(0,t.jsx)(r.td,{children:"MySQL \u6570\u636e\u5e93"}),(0,t.jsx)(r.td,{children:"\u4ece MySQL \u6570\u636e\u5e93\u8bfb\u53d6\u6570\u636e\u5e76\u8f6c\u6362\u4e3a\u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"Notion"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-notion"})}),(0,t.jsx)(r.td,{children:"Notion \u9875\u9762"}),(0,t.jsx)(r.td,{children:"\u4ece Notion \u5e73\u53f0\u8bfb\u53d6\u9875\u9762\u5185\u5bb9"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"Obsidian"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-obsidian"})}),(0,t.jsx)(r.td,{children:"Obsidian \u7b14\u8bb0"}),(0,t.jsx)(r.td,{children:"\u4ece Obsidian \u7b14\u8bb0\u5e93\u8bfb\u53d6 Markdown \u6587\u4ef6"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"OneNote"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-onenote"})}),(0,t.jsx)(r.td,{children:"OneNote \u7b14\u8bb0"}),(0,t.jsx)(r.td,{children:"\u8bfb\u53d6 Microsoft OneNote \u7b14\u8bb0\u5185\u5bb9"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"POI"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-poi"})}),(0,t.jsx)(r.td,{children:"DOC, DOCX, PPT, PPTX, XLS, XLSX"}),(0,t.jsx)(r.td,{children:"\u4f7f\u7528 Apache POI \u8bfb\u53d6 Microsoft Office \u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"SQLite"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-sqlite"})}),(0,t.jsx)(r.td,{children:"SQLite \u6570\u636e\u5e93"}),(0,t.jsx)(r.td,{children:"\u4ece SQLite \u6570\u636e\u5e93\u8bfb\u53d6\u6570\u636e"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"Tencent COS"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-tencent-cos"})}),(0,t.jsx)(r.td,{children:"\u817e\u8baf\u4e91\u5bf9\u8c61\u5b58\u50a8"}),(0,t.jsx)(r.td,{children:"\u4ece\u817e\u8baf\u4e91 COS \u8bfb\u53d6\u5b58\u50a8\u7684\u6587\u6863"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"YouTube"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-youtube"})}),(0,t.jsx)(r.td,{children:"YouTube \u89c6\u9891"}),(0,t.jsx)(r.td,{children:"\u8bfb\u53d6 YouTube \u89c6\u9891\u4fe1\u606f\u548c\u5b57\u5e55"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.strong,{children:"YuQue"})}),(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"spring-ai-alibaba-starter-document-reader-yuque"})}),(0,t.jsx)(r.td,{children:"\u8bed\u96c0\u6587\u6863"}),(0,t.jsx)(r.td,{children:"\u4ece\u8bed\u96c0\u5e73\u53f0\u8bfb\u53d6\u6587\u6863\u5185\u5bb9"})]})]})]}),"\n",(0,t.jsx)(r.h3,{id:"\u4f7f\u7528\u8bf4\u660e",children:"\u4f7f\u7528\u8bf4\u660e"}),"\n",(0,t.jsx)(r.p,{children:"\u6240\u6709 Document Reader \u5b9e\u73b0\u90fd\u9075\u5faa\u76f8\u540c\u7684\u4f7f\u7528\u6a21\u5f0f\uff1a"}),"\n",(0,t.jsxs)(r.ol,{children:["\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"\u6dfb\u52a0\u4f9d\u8d56"}),"\uff1a\u5728 ",(0,t.jsx)(r.code,{children:"pom.xml"})," \u6216 ",(0,t.jsx)(r.code,{children:"build.gradle"})," \u4e2d\u6dfb\u52a0\u76f8\u5e94\u7684\u4f9d\u8d56"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"\u521b\u5efa Reader"}),"\uff1a\u4f7f\u7528\u76f8\u5e94\u7684 Reader \u7c7b\u521b\u5efa\u5b9e\u4f8b"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"\u8bfb\u53d6\u6587\u6863"}),"\uff1a\u8c03\u7528 ",(0,t.jsx)(r.code,{children:"get()"})," \u65b9\u6cd5\u83b7\u53d6 ",(0,t.jsx)(r.code,{children:"List<Document>"})]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"\u5904\u7406\u6587\u6863"}),"\uff1a\u5bf9\u8bfb\u53d6\u7684\u6587\u6863\u8fdb\u884c\u8fdb\u4e00\u6b65\u5904\u7406\uff08\u5982\u6587\u672c\u5206\u5272\u3001\u5411\u91cf\u5316\u7b49\uff09"]}),"\n"]}),"\n",(0,t.jsx)(r.h3,{id:"\u901a\u7528\u63a5\u53e3",children:"\u901a\u7528\u63a5\u53e3"}),"\n",(0,t.jsxs)(r.p,{children:["\u6240\u6709 Document Reader \u90fd\u5b9e\u73b0\u4e86 ",(0,t.jsx)(r.code,{children:"DocumentReader"})," \u63a5\u53e3\uff1a"]}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-java",children:"public interface DocumentReader extends Supplier<List<Document>> {\n    List<Document> get();\n}\n"})}),"\n",(0,t.jsx)(r.h3,{id:"\u4f9d\u8d56\u7248\u672c",children:"\u4f9d\u8d56\u7248\u672c"}),"\n",(0,t.jsx)(r.p,{children:"\u8bf7\u6839\u636e\u9879\u76ee\u9700\u8981\u9009\u62e9\u5408\u9002\u7684\u7248\u672c\u3002\u5efa\u8bae\u4f7f\u7528\u6700\u65b0\u7684\u7a33\u5b9a\u7248\u672c\uff0c\u5e76\u786e\u4fdd\u4e0e Spring AI \u6838\u5fc3\u5e93\u7248\u672c\u517c\u5bb9\u3002"}),"\n",(0,t.jsx)(r.h3,{id:"\u66f4\u591a\u4fe1\u606f",children:"\u66f4\u591a\u4fe1\u606f"}),"\n",(0,t.jsxs)(r.ul,{children:["\n",(0,t.jsx)(r.li,{children:"\u6bcf\u4e2a Reader \u7684\u5177\u4f53\u4f7f\u7528\u65b9\u6cd5\u548c\u914d\u7f6e\u9009\u9879\uff0c\u8bf7\u53c2\u8003\u5404\u6a21\u5757\u7684\u6587\u6863"}),"\n",(0,t.jsx)(r.li,{children:"\u5bf9\u4e8e\u9700\u8981\u8ba4\u8bc1\u7684\u6570\u636e\u6e90\uff08\u5982 GitHub\u3001Notion \u7b49\uff09\uff0c\u8bf7\u786e\u4fdd\u6b63\u786e\u914d\u7f6e\u8bbf\u95ee\u51ed\u8bc1"}),"\n",(0,t.jsx)(r.li,{children:"\u67d0\u4e9b Reader \u53ef\u80fd\u9700\u8981\u989d\u5916\u7684\u4f9d\u8d56\uff08\u5982\u6570\u636e\u5e93\u9a71\u52a8\u3001API \u5ba2\u6237\u7aef\u7b49\uff09"}),"\n"]}),"\n",(0,t.jsx)(r.hr,{}),"\n",(0,t.jsxs)(r.p,{children:[(0,t.jsx)(r.strong,{children:"\u6ce8\u610f"}),"\uff1a\u672c\u6587\u6863\u57fa\u4e8e\u5f53\u524d\u53ef\u7528\u7684\u5b9e\u73b0\u3002\u968f\u7740\u9879\u76ee\u7684\u53d1\u5c55\uff0c\u53ef\u80fd\u4f1a\u6709\u65b0\u7684 Reader \u5b9e\u73b0\u6dfb\u52a0\u6216\u73b0\u6709\u5b9e\u73b0\u7684\u66f4\u65b0\u3002\u5efa\u8bae\u5b9a\u671f\u67e5\u7
170b\u9879\u76ee\u6587\u6863\u4ee5\u83b7\u53d6\u6700\u65b0\u4fe1\u606f\u3002"]})]})}function h(e={}){const{wrapper:r}={...(0,d.R)(),...e.components};return r?(0,t.jsx)(r,{...e,children:(0,t.jsx)(o,{...e})}):o(e)}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.