LangChain:基于句子语义的分割器SentenceTransformersTokenTextSplitter
基于句子语义切割的文本切割尽可能的保留了句子的完整语义。SentenceTransformersTokenTextSplitter
分割器通过 model_name
参数指定预训练模型的名称,这个模型通常对应一个特定的分词器。
LangChain:基于句子语义的分割器SentenceTransformersTokenTextSplitter
基于句子语义切割的文本切割尽可能的保留了句子的完整语义。SentenceTransformersTokenTextSplitter
分割器通过 model_name
参数指定预训练模型的名称,这个模型通常对应一个特定的分词器。
大语言模型存在Token数量限制,不应超出该限制(如 GPT-4 Turbo 支持 128K Token)。超出限制会导致截断或报错。
大语言模型存在Token数量限制,不应超出该限制。因此,在分割文本成块时,需要计算好Token的数量。市面上存在多种tokenizer,计算文本token数量时,应使用与语言模型相匹配的tokenizer。
LangChain:文本切割器TextSplitter的split_documents()与split_text()
在 LangChain
库中,文本切割器基类TextSplitter
提供了split_documents()
和 split_text()
两个切割方法常用的文本分割方法。
TextSplitter
的子类都继承的这两个方法。下面分别介绍它们的作用和区别。
在Langchain的数据增强模块,数据以 Document 对象和向量形式在各个包装器之间流转。向量形式的数据由向量数据库管理,而被转换为向量之前,数据以 Document 对象的形式存在。
在自然语言处理(NLP)和大语言模型(LLM)中,嵌入(Embedding) 是一个核心概念。它的本质是将文本(如单词、句子或文档)转换为数值形式的向量(一串数字),使得计算机能够理解和处理这些文本的语义信息。
在LangChain框架中,嵌入模型包装器(Embedding Model Wrappers) 是用于将文本转换为向量表示的标准化接口,支持多种底层模型和服务。
LangChain框架中的Loader组件是数据增强处理流程中的核心模块,负责将不同格式的数据源转换为统一的Document对象。这些文档对象包含文本内容(page_content)和元数据(metadata),为后续的文本处理、嵌入、问答等操作奠定基础。
LangChain 框架的数据增强模块主要基于**检索增强生成(RAG)**技术,通过整合外部知识库提升大语言模型(LLM)在专业领域、实时性要求和私有数据场景下的表现。
Agent的ReAct框架是一种结合**推理(Reasoning)与行动(Acting)**的AI智能体开发框架,旨在通过动态的思考与执行循环解决复杂任务。