詳細解釋
在處理長文本時,使用重疊的文本片段(窗口)來維持語境連續性的技術,避免窗口邊界處的信息斷裂。
問題背景:
- 上下文限制:模型有最大輸入長度(如 4K tokens)
- 截斷問題:直接切分會導致邊界處語境丟失
- 例如:「機器學習是人工」和「智能的重要分支」被切開
解決方案:
- 滑動窗口:每個窗口與前一個有重疊(如 50%)
- 步長控制:窗口移動的距離(小步長 = 更多重疊)
- 上下文保留:重疊區域攜帶前文的關鍵信息
應用場景:
- 長文檔摘要:每段生成摘要,合併後再摘要
- 長視頻理解:重疊幀保持動作連續性
- 音頻處理:重疊音頻片段保持語音流暢
- 時間序列:保持時間連續性
合併策略:
- 直接拼接:保留所有生成結果
- 去重:去除重疊區域的重複內容
- 投票:多窗口對同一段落的預測進行整合
- 層級處理:先處理小窗口,再處理窗口的摘要
與 RAG 的關係:
- RAG 檢索的文本塊也可使用重疊窗口
- 確保檢索片段之間的語境連續
這是「長文本處理」的基礎技巧—— 犧牲計算量換取語境完整。