微信扫码
添加专属顾问
我要投稿
深入探索大型文档高效分块技术,提升AI知识库的处理效率和准确性。 核心内容: 1. 大型文档输入AI知识库的技术挑战与问题 2. 文档分块技术的核心理念与优势 3. 五种主流分块方法的技术对比与代码实现
from llama_index.core.node_parser import SimpleNodeParser parser = SimpleNodeParser.from_defaults( chunk_size=512, # 中文文档建议设置为384 tokens左右 chunk_overlap=64 # 重叠区域,保证上下文连贯性)nodes = parser.get_nodes_from_documents(documents)
from llama_index.core.node_parser import MarkdownNodeParserparser = MarkdownNodeParser()nodes = parser.get_nodes_from_documents(markdown_docs)
from llama_index.core.node_parser import HTMLNodeParser parser = HTMLNodeParser(tags=["p", "h1"]) # 指定需要提取的标签nodes = parser.get_nodes_from_documents(html_docs)
import nltkfrom llama_index.core.node_parser import SentenceWindowNodeParser node_parser = SentenceWindowNodeParser.from_defaults( window_size=3, # 每侧包含的句子数 window_metadata_key="window", original_text_metadata_key="original_sentence",)
from llama_index.core.node_parser import SemanticSplitterNodeParserfrom llama_index.embeddings.openai import OpenAIEmbedding embed_model = OpenAIEmbedding()splitter = SemanticSplitterNodeParser( buffer_size=1, breakpoint_percentile_threshold=95, embed_model=embed_model)
from llama_index.core.llms import OpenAIimport json def llm_chunking(text): llm = OpenAI(model="gpt-4-turbo") prompt = f"""将以下技术文档划分为逻辑单元,每个单元包含完整的技术概念: {text} 返回JSON格式: [{{"title":"单元标题","content":"文本内容"}}]""" response = llm.complete(prompt) try: return json.loads(response.text) except json.JSONDecodeError: raise ValueError("LLM响应格式错误")分块方法 | 处理速度 | 语义保持 | 实现难度 | 适用场景 |
固定分块 | ⭐⭐⭐⭐ | ⭐ | ⭐ | 快速搭建原型系统 |
滑动窗口 | ⭐⭐⭐ | ⭐⭐ | ⭐⭐ | 对话记录、访谈稿 |
结构感知分块 | ⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ | 特定格式的Markdown/HTML/JSON等文档 |
嵌入分块 | ⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐ | 叙事性长文本 |
LLM分块 | ⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 各种各样的复杂文档 |
Settings.embed_model = dashscope_embed_model()# 语义分块配置Settings.node_parser = SemanticSplitterNodeParser( buffer_size=128, # 保留128 tokens重叠区域 breakpoint_percentile_threshold=95, # 95%阈值自动寻找最佳分割点 embed_model = dashscope_embed_model())
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-12-14
中国没有Palantir,恰恰是因为我们‘太聪明’
2025-12-12
关于动态本体的一些新思考及多模态知识图谱构建思路VisKnow
2025-12-11
案例:Palantir AIP如何教Agent学会记忆
2025-12-10
为AI奠定知识根基:为什么每个项目都需要知识图谱
2025-12-09
在“最优复杂性”中寻找极简之道——解读Palantir 本体论的实战哲学
2025-12-08
本体论:从数据中发现意义
2025-12-05
构建本体驱动的下一代智能数字生态系统
2025-12-04
基于 Ontology 构建企业 Agent 根基:从理论到实践的技术路径 V2.0
2025-09-17
2025-10-30
2025-10-19
2025-09-20
2025-11-05
2025-10-21
2025-12-01
2025-10-13
2025-11-24
2025-09-29
2025-12-01
2025-07-29
2025-07-14
2025-06-14
2025-05-23
2025-05-23
2025-05-22
2025-05-20