微信扫码
与创始人交个朋友
我要投稿
《Lost in the Middle: How Language Models Use Long Contexts》一文揭示了在多文档问答和键值检索两个任务中,如果相关的信息出现在输入上下文的开头或结尾时,性能通常最高,而当模型必须在长上下文中间访问相关信息时,即使对于明确的长上下文模型,性能也会显著下降。
https://arxiv.org/abs/2307.03172
LlamaIndex 的 SentenceWindowNodeParser 将 Document 拆分为单独的句子。生成的每个 Node 中只有一条句子,Node 的元数据还包含这个句子周围的几条句子,这称为窗口(Window)。
这对于生成具有非常特定范围的嵌入最有用。然后,结合 MetadataReplacementNodePostProcessor,我们可以在将检索到的 Node 发送到 LLM 之前将该 Node 中的句子替换为其周围的上下文。
LlamaIndex 默认使用的 NLTK 库没有一个很好的拆分中文文档为句子的方法,所以我在网上找到了一个:
在设置好所使用的 LLM 和嵌入模型之后,我们设置窗口大小为3:
接下来加载数据集并建立索引:
然后开始提问:
回复如下:
根据提供的信息,中国在2011年11月3日凌晨掌握了载人航天的三项基本技术,即天地往返、出舱活动和交会对接。具体来说,神舟八号与天宫一号成功实现了中国首次空间交会与对接,标志着中国已经掌握了这三项载人航天的关键技术。
原文中内容如下:
答案是对的!
最后我们看一下窗口和原始句子:
window: 11月3日凌晨,神舟八号与天宫一号以自动模式成功实现中国首次空间交会与对接。 至此,载人航天的三项基本技术(天地往返、出舱活动、交会对接)均已被中国掌握。2012年6月16日,神舟九号飞船搭载航天员景海鹏、刘旺和刘洋发射升空后与天宫一号对接,三名航天员进入天宫一号,随后进行了约十天的短期驻留并完成了首次手控交会对接试验,其中刘洋凭借这次任务成为中国首位进入太空的女航天员。------------------original text: 至此,载人航天的三项基本技术(天地往返、出舱活动、交会对接)均已被中国掌握。
源码:
https://github.com/realyinchen/LlamaIndex/blob/main/Document_Node/MetadataReplacement%2BNodeSentenceWindow.ipynb
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-03-30
2024-05-10
2024-05-28
2024-04-26
2024-08-13
2024-04-12
2024-04-25
2024-07-25
2024-05-06
2024-05-14
2025-01-08
2025-01-06
2025-01-06
2025-01-06
2025-01-06
2025-01-05
2025-01-04
2025-01-04