RAG（检索增强生成）的基本流程包含哪些步骤？	接收源文档 -> 将其切分成文本块（Chunk）-> 检索相关文本块 -> 将其放入提示词（Prompt）中。
在RAG流程中，文档分块（Chunking）为何如此关键？	分块策略对RAG流程的质量有巨大的影响。
基于大小的分块（Size-based chunking）是如何实现的？	将大文档简单地分割成一系列长度大致相等的字符串。
基于大小的分块的主要缺点是什么？	每个文本块可能包含被截断的词（cutoff words），且缺乏上下文。
如何通过重叠策略（Overlap strategy）来改善基于大小的分块？	在相邻的文本块之间包含一定数量的重叠字符，以提供更多上下文。
基于结构的分块（Structure-based chunking）是如何进行的？	根据文档的整体结构（如标题、段落、章节）来划分文本块。
基于结构的分块的局限性是什么？	仅在文档具有明确结构（如Markdown格式）时才有效，不适用于纯文本PDF等。
基于语义的分块（Semantic-based chunking）是如何工作的？	使用自然语言处理技术判断连续句子之间的相关性，然后将相关句子组合成文本块
默认的文本分块（chunk）设置通常是什么？	分块长度为150，重叠度为20。
为什么默认的文本分块设置可能效果不佳？	每个分块通常缺乏足够的整体含义。
“按句子分块”（Chunk by Sentence）策略的默认设置通常是什么？	每个分块包含5个句子，并有1个句子的重叠。
“按章节分块”（Chunk by Section）策略的优势是什么？	可以精确地获取文档的单个结构化部分（如摘要、章节）。
在选择分块策略时，最关键的决定因素是什么？	文档的性质和其结构保证。
如果文档是结构化的（如包含标题和章节），应该使用哪种分块策略？	按章节分块（Chunk by Section）。
如果文档缺乏格式（如用户提供的原始文本），哪种策略可能不适用？	按章节分块（Chunk by Section）。
为什么在处理代码时，不建议使用“按句子分块”？	代码中句号（periods）可能出现在意想不到的位置，导致分割错误。
“按字符分块”（Chunk by Character）策略的特点是什么？	它不保证最佳结果，但能解决绝大多数情况，是可靠的备选方案。
如果按句子分块和按章节分块都无法有效使用，最后的备选方案是什么？	按字符分块（Chunk by Character）。
