Merkle树是Hash的二叉树。在比特币中会两次使用SHA-256算法来生成Merkle树,如果叶业节点为奇数,则要重复计算最后一个叶子的两次SHA-256值,以达到偶数叶子节点的要求。
Merkle树是Hash的二叉树。在比特币中会两次使用SHA-256算法来生成Merkle树,如果叶业节点为奇数,则要重复计算最后一个叶子的两次SHA-256值,以达到偶数叶子节点的要求。
区块链是一种去中心化、去信任化的分布式账本技术,由分布式数据存储、点对点传输、共识机制、加密算法等多种技术集合而成。
MySQL的全文索引在实践应用中有一些细节是需要注意的。
例如,中文分词、中文全词精准匹配、联合全文索引的使用。
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) 是用于将文本转换为向量表示的标准化接口,支持多种底层模型和服务。