所有標籤Haystack v3.3.0 三個重點:(1) 資安——`anyio` 升級到 `>=4.14.2` 修補 CVE-2026-63374(GHSA-82r6-8w77-94w6),這個套件透過 `httpx`/`openai` 間接安裝,舊版有洞;(2) 效能——`SentenceWindowRetriever` 改成每次 `run`/`run_async` 只查一次 Document Store,不再每個檢索到的文件各查一次;(3) Breaking:BM25L/BM25Plus(預設)現在只回傳至少命中一個查詢詞的文件,可能讓檢索筆數變少;`top_k` 傳負數改成直接丟 `ValueError`;修掉引號句尾遺失空白的 bug 連帶讓含引號句子的語料重新索引後切塊邊界改變。
Haystack 3.1.0 三個重點:(1) 新增實驗性 `CompactionHook`,搭配 `SlidingWindowCompactor`(砍舊回合)和 `ToolResultPruningCompactor`(舊工具結果換成佔位符)處理長對話的 context 爆量問題;(2) 新增 `AgentTool`,可以把一個完整 Agent 包成另一個 Agent 的工具,呼叫端只看得到最終回覆、看不到中間步驟;(3) 同時修了多個 pipeline 反序列化、Jinja sandbox 相關的 RCE 漏洞,且多處行為變更需要照遷移指南檢查(如 `Agent.state_schema` 語意改變、`custom_filters` 現在要求 `unsafe=True`)。
Haystack 把 indexing、retrieval、generation 與 evaluation 都做成可替換的 Component,再用 directed multigraph Pipeline 串接;適合要把 RAG 流程當成程式資產測試、版本化與部署的 Python 團隊。
LlamaIndex、Haystack 是以程式碼為主的框架;RAGFlow、Dify 是帶管理介面的平台;R2R 則把檢索系統包成 API 服務。先決定團隊要保留多少 ingestion、retrieval 與營運控制權,再選工具。