乐于分享
好东西不私藏

分块:把文档切成什么形状,直接决定RAG的效果

分块:把文档切成什么形状,直接决定RAG的效果

上一篇文章讲了文档解析——怎么把原始文件变成结构化的内容块。

但文档解析出来的"块"往往还太大、太杂,不能直接喂给向量数据库。

你需要再切一刀

这一步叫做分块(Chunking)。

它是 RAG 流水线里对检索效果影响最大的环节之一,却也是最容易被新手忽视的一步。很多人搭 RAG 效果不好,不是模型不行,不是 Prompt 写得差,而是分块策略选错了。

RAG系列·第2篇:分块策略——把文档切成什么形状,直接决定RAG效果


目录

  • 1. 为什么分块直接影响检索效果
  • 2. 分块的两种度量单位
  • 3. 六种分块策略,逐一拆解
    • 策略一:固定大小分块(Fixed-size Chunking)
    • 策略二:句分割(Sentence Splitting)
    • 策略三:递归分割(Recursive Chunking)
    • 策略四:内容语义分块(Semantic Chunking)
    • 策略五:专门结构分块(Structure-aware Chunking)
    • 策略六:LLM 自主分块(LLM-based Chunking)
  • 4. 所有策略横向对比
  • 5. Overlap:分块时不能忽视的细节
  • 6. 分块策略实战:怎么选
  • 7. 一句话总结

1. 为什么分块直接影响检索效果

向量检索的本质:找到和用户问题语义最接近的内容块。

如果一块内容太大、主题太多,它的向量就会"平均化"——什么都有一点,但什么都不突出。检索时,很容易被不相关的块稀释掉。

正确做法:把"检索器"和"生成器"切成独立的块,各自主题清晰,检索时才不容易被稀释。


2. 分块的两种度量单位

在说具体策略之前,先搞清楚分块大小的两种度量方式:

度量方式
说明
例子
Token 数
按模型输入的 token 数量来衡量
一个块 = 500 tokens
字符数
按文字的字符数来衡量
一个块 = 1000 字符
句子数
按完整的句子数量来衡量
一个块 = 5 个句子

通常用 token 数更准确,因为向量模型处理的是 token,不是字符。实践中,中文 1 个汉字 ≈ 1.2~1.5 个 token(GPT-4/Claude/DeepSeek 等现代模型实测约 1.2:1,GPT-3 等旧模型约 2:1)。也就是说,每 500 tokens 大约对应 330-420 个中文字符

常见块大小参考:

小块(200-500 tokens):- 适合:精确问答、FAQ、条款类内容- 优点:主题集中,检索精准- 缺点:可能丢失上下文中块(500-1000 tokens):- 适合:通用技术文档、报告、说明书- 优点:平衡主题完整性和语义聚焦度- 缺点:不够精确也不够完整大块(1000-2000 tokens):- 适合:需要长上下文的分析类内容- 优点:保留更多上下文信息- 缺点:语义容易稀释,向量不够精准

3. 六种分块策略,逐一拆解

策略一:固定大小分块(Fixed-size Chunking)

原理: 按固定 token 数或字符数,从头切到尾。

deffixed_size_chunking(text, chunk_size=500, chunk_overlap=50):    chunks = []    start = 0while start < len(text):        chunks.append(text[start:start + chunk_size])        start = start + chunk_size - chunk_overlapreturn chunks

优点: 简单、速度快  缺点: 完全不考虑语义边界,可能把一句话从中间切开适用场景: 快速原型、对语义完整性要求不高的场景。


策略二:句分割(Sentence Splitting)

原理: 按完整句子切分,用句号、问号等作为分隔符。

defsentence_chunking(text, max_sentences=5, chunk_overlap=1):    sentences = [s.strip() for s in re.split(r'[。!?.?!]', text) if s.strip()]    chunks, i = [], 0while i < len(sentences):        chunks.append('。'.join(sentences[i:i + max_sentences]) + '。')        i += max_sentences - chunk_overlapreturn chunks

优点: 语义完整性好  缺点: 块大小不稳定适用场景: 短文本、FAQ、问答对。


策略三:递归分割(Recursive Chunking)

原理: 按层级依次尝试不同的分隔符(段落→句子→字符),直到每块大小符合要求。

defrecursive_chunking(text, separators=None, chunk_size=500):if separators isNone:        separators = ["\n\n""\n""。"" "]if len(text) <= chunk_size ornot separators:return [text] ifnot separators else [text[i:i+chunk_size] for i in range(0, len(text), chunk_size)]    sep, parts = separators[0], text.split(separators[0])    result, current = [], ""for part in parts:        test = current + sep + part if current else partif len(test) <= chunk_size:            current = testelse:if current: result.append(current)            current = part if len(part) <= chunk_size else""if len(part) > chunk_size: result.extend(recursive_chunking(part, separators[1:], chunk_size))if current: result.append(current)return result

separators 用 None 默认值避免 Python 经典的可变默认参数陷阱;所有分隔符都无法切到目标大小时,自动按固定大小兜底。

优点: 最大程度保留语义边界,兼顾块大小控制  缺点: 实现复杂度稍高适用场景: 大多数通用场景,是目前最推荐的基础策略。


策略四:内容语义分块(Semantic Chunking)

原理: 根据内容的语义相似度来决定在哪里切。先用 embedding 模型给每个句子打向量,识别"语义断点"——相邻句子语义突变的地方就是断点。

defsemantic_chunking(sentences, drop_threshold=1.0):"""基于语义断点的分块:相邻句子相似度显著下降处即为断点"""    model = SentenceTransformer('all-MiniLM-L6-v2')    embeddings = model.encode(sentences)# 计算相邻句子的语义相似度    similarities = [np.dot(embeddings[i], embeddings[i+1]) /                    (np.linalg.norm(embeddings[i]) * np.linalg.norm(embeddings[i+1]))for i in range(len(embeddings) - 1)]# 用统计方法确定断点:低于(均值 - drop_threshold×标准差)时断开    threshold = np.mean(similarities) - drop_threshold * np.std(similarities)    breakpoints = [0] + [i+1for i, sim in enumerate(similarities) if sim < threshold]# 按断点分块return [''.join(sentences[breakpoints[i]:breakpoints[i+1if i+1 < len(breakpoints) else len(sentences)])for i in range(len(breakpoints))]

为什么用相对阈值? 不同 embedding 模型输出的相似度分布差异很大。用"均值 - 标准差"的相对检测,能自动适配不同模型。

效果示意:

原文:"...检索器负责从向量数据库中检索相关内容。生成器负责根据检索结果生成回答。接下来安装部署环境。首先需要安装Python..."语义分析:"生成器根据检索结果生成" → "接下来安装部署环境"  相似度骤降(话题转换)→ 在此处断开,分为"RAG组件""安装步骤"两块

优点: 语义断点最准确,每块主题高度集中  缺点: 需要额外调用 embedding 模型,成本高、速度慢

适用场景: 对检索精度要求高的生产环境。


策略五:专门结构分块(Structure-aware Chunking)

原理: 根据文档的内在结构(Markdown标题层级、HTML标签、PDF章节)来切分。

defmarkdown_chunking(markdown_text):"""按Markdown标题层级分块,保留标题作为上下文"""    blocks, heading, content = [], "", []for line in markdown_text.split('\n'):if line.startswith('#'):if content:                blocks.append({"heading": heading, "content"'\n'.join(content)})            heading, content = line, []else:            content.append(line)if content:        blocks.append({"heading": heading, "content"'\n'.join(content)})return blocks

适用场景: 有明确结构的文档(Markdown、技术文档、论文、合同)。配合向量化时,把标题也加进块内容可提升检索相关性。


策略六:LLM 自主分块(LLM-based Chunking)

原理: 让大模型自己判断在哪里切分最合理,并输出每块的主题标签和摘要。最智能、也成本最高的方案。

defllm_chunking(text, max_tokens=500):    prompt = f"""将以下文档切分成语义完整的块(每块≤{max_tokens} tokens)。输出JSON数组,每个元素包含title、content、reason。文档:{text}"""return json.loads(call_llm(prompt))

优点: 分块质量最高,每块有标题和摘要  缺点: 贵、慢适用场景: 对质量要求极高的核心知识库。


4. 所有策略横向对比

策略
切分依据
优点
缺点
适用场景
固定大小
token/字符数
简单、快速、稳定
破坏语义边界
快速原型
句分割
句子
语义完整
块大小不稳定
短文本、FAQ
递归分割
多级分隔符
保留语义边界
复杂度稍高
通用场景(推荐起步)
语义分块
语义相似度
断点最准确
慢、成本高
高精度检索场景
结构分块
文档结构
符合直觉
依赖解析质量
有明确结构的文档
LLM 自主分块
模型判断
质量最高
贵、慢
核心知识库

5. Overlap:分块时不能忽视的细节

Overlap(重叠)指的是相邻两块之间重复一部分内容,防止关键信息落在两个块的边界上。

一般推荐:**Overlap 占 chunk 大小的 10%-30%。

chunk_size = 500 tokens, overlap = 50-150 tokens块1:[0-500]  块2:[450-950]  块3:[900-1400]

overlap 不是越大越好:太小→边界信息丢失;太大→浪费存储、降低检索多样性。

  • 语义连贯文档(无明显段落边界)→ overlap 20-30%
  • 结构清晰文档(段落独立)→ overlap 10-15%

6. 分块策略实战:怎么选

决策框架:

文档有清晰结构?→ 有→优先"结构分块"+overlap | 没有→下一步精度要求极高?→ 是→语义分块或LLM自主分块 | 一般→下一步需要快速出效果?→ 是→"递归分割"(最稳健的起步方案)

常见组合:文档解析(提取结构)→ 结构分块(按章节切)→ 小块内部递归分割 → overlap 15%


7. 一句话总结

分块没有最优解,只有最适合当前文档和场景的选择。固定大小是最快的起步,递归分割是最稳的基础,语义分块是   精度优先的选择,LLM 自主分块是效果最好的方案。

定好分块策略后,下一步就是给每个块生成向量,存入向量数据库——那才是真正可以被检索的时刻。

动手试一下:用 LangChain 做递归分块

上面手写的 recursive_chunking 帮你理解原理,实际项目用 LangChain 的 RecursiveCharacterTextSplitter

from langchain.text_splitter import RecursiveCharacterTextSplittersplitter = RecursiveCharacterTextSplitter(    chunk_size=200, chunk_overlap=30,    separators=["\n\n""\n""。"" "])chunks = splitter.split_text(text)

三行代码搞定递归分块,还能自动处理 overlap 和分隔符优先级。原理理解了,实战交给工具。


下一篇:向量化(Embedding)——让文字变成可计算的向量 · RAG系列·第3篇

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-05-11 17:40:48 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/607623.html
  2. 运行时间 : 0.086004s [ 吞吐率:11.63req/s ] 内存消耗:4,624.30kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=fdace83034500fa71b6bdbb4d7bd116f
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000578s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000878s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000266s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000242s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000486s ]
  6. SELECT * FROM `set` [ RunTime:0.000193s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000511s ]
  8. SELECT * FROM `article` WHERE `id` = 607623 LIMIT 1 [ RunTime:0.000413s ]
  9. UPDATE `article` SET `lasttime` = 1778492448 WHERE `id` = 607623 [ RunTime:0.000858s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000225s ]
  11. SELECT * FROM `article` WHERE `id` < 607623 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000405s ]
  12. SELECT * FROM `article` WHERE `id` > 607623 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000357s ]
  13. SELECT * FROM `article` WHERE `id` < 607623 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000764s ]
  14. SELECT * FROM `article` WHERE `id` < 607623 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.002177s ]
  15. SELECT * FROM `article` WHERE `id` < 607623 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001555s ]
0.087745s