以下是将超大文档分割成 20 万字以内小文档的相关知识:
文档分块的重要性:
创建知识库并上传文本内容时的分段设置:
智能问答中的文档分割: 每篇文档会拆分成多个片段,每个片段由三部分拼接而成:
1.提高检索效率想象一下,如果我们把整个使用手册作为一个整体来检索,那么即使找到了相关内容,也可能会返回大量无关的信息。通过将文档分成较小的块,我们可以更精确地定位到用户需要的信息。1.适应模型输入限制在RAG检索环节是需要将匹配用户问题的答案返回给大模型进行处理和总结的。将长文档分成小块可以确保我们能够将相关信息输入到模型中,而不会超出其处理能力。1.提升回答质量较小的文本块能够帮助大语言模型更集中地理解和回答特定问题,而不是在大量文本中迷失方向。1.优化向量表示在后续的向量化过程中,较小的文本块通常能够得到更精确的向量表示,这有助于提高检索的准确性。
[title]创建并使用知识库[heading1]创建知识库并上传文本内容|上传方式|操作步骤|<br>|-|-|<br>|本地文档|1.在文本格式页签下,选择本地文档,然后单击下一步。2.将要上传的文档拖拽到上传区,或单击上传区域选择要上传的文档。目前支持上传.txt,.pdf,.docx格式的文件内容。每个文件不得大于20M。一次最多可上传10个文件1.当上传完成后单击下一步。2.选择内容分段方式:2.1.自动分段与清洗:系统会对上传的文件数据进行自动分段,并会按照系统默认的预处理规则处理数据。2.2.自定义:手动设置分段规则和预处理规则。分段标识符:选择符合实际所需的标识符。分段最大长度:设置每个片段内的字符数上限。文本预处理规则:替换掉连续的空格、换行符和制表符删除所有URL和电子邮箱地址1.单击下一步完成内容上传和分片。|
来自:[问答数据集匹配指南](https://bytedance.larkoffice.com/docx/AmjPdWxe2oG3qdxJ99ic2vIAnY2)如上图所示,智能问答主要由三步实现:[heading3]文档分割[content]每篇文档,我们会将其拆分成多个片段,每个片段由三个部分拼接而成:1.Title:本篇文档的题目2.Headings:当前段落所属的标题及其祖先标题。3.Content:可以由正文、表格、列表、代码块等组成。每个片段拼接后的长度不能超过512个字符。[heading3]相似度计算[content]在实际问答系统中,我们将千万级别的文档拆分成了亿级别的片段,存储在我们的索引中。当用户输入一个问题后,我们会使用该问题在数以亿计的文档片段中找到几百个相似的片段,这一步称为召回。然后使用深度模型分别计算问题同每个片段的语义相似度,这一步称为排序。[heading3]答案生成[content]最终,语义相似度最高的3-10个片段,会同问题一并送入大语言模型(LLM),由大语言模型最终在3-10个片段中进行甄别和整合,生成最终的答案。