序
本文主要研究一下langchain4j的核心RAG APIs
核心RAG APIs
langchain4j提供了一套丰富的API来构建自定义的RAG(检索增强生成)pipelines,从简单的到高级的都有涵盖。
Document
Document类表示整个文档,例如单个 PDF 文件或网页。目前,Document 只能表示文本信息,但未来的更新将使其能够支持图像和表格。
Metadata
每个文档都有Metadata,例如其名称、来源、最后更新日期、所有者或其他相关信息。Metadata以键值对的形式存储,其中键为字符串类型,值可以是以下类型之一:字符串、整数、长整数、浮点数、双精度浮点数。Metadata具有以下用途:
- 当将文档内容包含在对LLM(大型语言模型)的提示中时,也可以包含元数据条目,为LLM提供额外的信息以考虑。例如,提供文档名称和来源可以帮助提高LLM对内容的理解。
- 在搜索相关内容以包含在提示中时,可以通过元数据条目进行过滤。例如,可以将语义搜索缩小到仅属于特定所有者的文档。
- 当文档的来源更新时(例如,特定页面的文档),可以通过其元数据条目(例如,“id”、"来源"等)轻松定位相应的文档,并在EmbeddingStore中同步更新它以保持同步。
DocumentLoader
langchain4j提供了FileSystemDocumentLoader、ClassPathDocumentLoader、UrlDocumentLoader、AmazonS3DocumentLoader(langchain4j-document-loader-amazon-s3)、AzureBlobStorageDocumentLoader(langchain4j-document-loader-azure-storage-blob)、GitHubDocumentLoader(langchain4j-document-loader-github)、GoogleCloudStorageDocumentLoader(langchain4j-document-loader-google-cloud-storage)、SeleniumDocumentLoader(langchain4j-document-loader-selenium)、TencentCosDocumentLoader(langchain4j-document-loader-tencent-cos)
DocumentParser
文档有诸如PDF, DOC, TXT等类型,需要对应的DocumentParse

最低0.47元/天 解锁文章
2738

被折叠的 条评论
为什么被折叠?



