LlamaIndex 與 Metaphor 探索以大語言模型自動化知識工作
LlamaIndex 與 Metaphor 宣佈推出整合方案,結合 LlamaIndex 資料智能體與 Metaphor 的原生大語言模型搜尋工具,讓智能體可搜尋並檢索網上內容。
LlamaIndex 與 Metaphor 宣佈推出整合方案,結合 LlamaIndex 資料智能體與 Metaphor 的原生大語言模型搜尋工具,讓智能體可搜尋並檢索網上內容。
LlamaIndex 現可將 Airbyte sources 直接整合為應用程式的資料載入器。目前可用的 sources 包括 Gong、Hubspot、Salesforce。
LlamaIndex 新增 EmbeddingAdapterFinetuneEngine,讓使用者可在任意嵌入模型產生的查詢嵌入上微調線性轉接層,同時保持文件嵌入固定。
LlamaIndex 與 Vectara 宣佈以 Managed Index 整合,讓 Vectara 後端處理文件分塊、嵌入向量與儲存,並接入 LlamaIndex 的檢索和查詢工具。開發者可透過 VectaraIndex 的索引 API 將文件送至 Vectara,並使用 Retriever、Query Engine 和 Chat Engine 等功能,無須自行配置與管理向量資料庫。
Laurie Voss 宣佈加入 LlamaIndex,出任開發者關係副總裁。她表示自己 27 年前以網頁開發者身份入行,曾創辦包括 npm Inc. 在內的數家公司。她把 LLM 帶來的技術變化比作 iPhone 推動的平台轉型,並期待出現以往不可能實現的應用;她亦介紹 LlamaIndex 是支援 Python 和 JavaScript、可接入數十種數據來源及任意模型的應用框架。
LlamaIndex 示範使用 Response Evaluation 評估 RAG 系統的理想分塊大小,並比較不同設定下的平均回應時間、Faithfulness 與 Relevancy。實驗以 Uber 2021 年 10-K 文件生成問題,使用 GPT-3.5-turbo 產生回答,再以 GPT-4 評估回答的忠實度與相關性。
作者使用 LlamaIndex 打造 FinSight,這款在 Streamlit LLM Hackathon 勝出的應用,可從公司年報提取洞見並生成摘要。其 Annual Report Analyzer 以 RAG 和 FAISS 記憶體向量資料庫處理年報,並把查詢拆成子問題,檢索多處脈絡。
文章介紹 LayoutPDFReader 解析具文字層的 PDF,保留章節層級、段落、表格和清單結構,並據此生成供 RAG 使用的分塊。文中示範以 LLMSherpa API 讀取 PDF,並用 LlamaIndex 建立向量索引及執行查詢。工具目前不支援 OCR,只能處理帶有文字層的 PDF;原文亦指出,並非所有 PDF 都能完美解析。
LlamaIndex 使用 Retrieval Evaluation 比較 RAG 流程中的嵌入模型與重排序模型,並以 Hit Rate 和 MRR 評估檢索表現。
LongLLMLingua 以提示詞壓縮處理 RAG 與長上下文中的「Lost in the middle」問題,並降低 token 用量及成本。其準確率最高可提升 21.4%,token 用量僅為原來的 ¼;長上下文情境下,每 1000 個例子可節省 $28。
LlamaIndex 在 OpenAI Developer Day 當日為其程式庫加入對兩款新模型及多項 OpenAI 功能的支援。
推薦理由:文章列出 LlamaIndex 對新模型、Azure endpoints、嵌入向量抽象層及函數調用的支援,並附模型調用程式例子,呈現這次更新涵蓋的整合範圍。
作者以 KOSMOS-2、Google PaLM API 和 LlamaIndex 建構 Streamlit 多模態原型,讓使用者上載圖片並就圖像內容對話。KOSMOS-2 生成圖片描述,PaLM 負責對話,LlamaIndex 串接流程;示範版每個工作階段最多可傳送 20 則訊息。
LlamaIndex 介紹多模態 RAG 新抽象,讓文字與圖片可納入索引、檢索及回答流程。新能力包括 OpenAIMultiModal 支援 GPT-4V、ReplicateMultiModal 支援開源多模態模型(目前處於 beta),以及透過 CLIP 建立圖片嵌入。
LlamaIndex 在 2023–11–14 週報中整理了 OpenAI Dev day 後續的功能更新、示例與指南。更新包括用於文件與圖像問答的多模態 RAG、chat.llamaindex.ai 的實驗性 GPT-4-vision 支援,以及連接 OpenAI Assistants API 與向量資料庫的抽象層。
LlamaIndex 發佈 0.9,新增用於資料匯入與轉換的 IngestionPipeline,並支援快取各轉換步驟。版本亦簡化節點解析與文字切分介面,將 LangChain 改為選裝套件,並將全域 tokenizer 改為可配置,預設採用 CL100K。此外,多模態 RAG 模組以 beta 形式推出,涵蓋多模態 LLM、嵌入及檢索。
LlamaIndex 示範微調 Cohere reranker,並報告自訂 reranker 在該測試中的檢索指標有所改善。
LlamaIndex 介紹多模態 RAG 的評估方法,建議沿用文字型 RAG 的檢索與生成兩階段框架,並分別計算文字和圖片的檢索指標。生成評估則可使用能處理文字及圖像上下文的 LMM 作裁判,衡量相關性與忠實度;文中亦介紹其 beta Multi-Modal Evaluator abstractions。
LlamaIndex 提供使用 create-llama 生成的 RAG 全棧應用部署指南,涵蓋 Next.js serverless、Express 和 Python 三種後端。
LlamaIndex 推出 RAGs,一款 Streamlit 應用,讓用户以自然語言建立並自訂基於自有資料的 RAG pipeline。用户可檢視和調整 builder agent 生成的設定,包括 top-k、chunk size、Embed Model、LLM 及摘要選項,並使用生成的 RAG agent 查詢資料。
LlamaIndex 推出 Llama Packs,這是一個由社羣推動的預包裝模組中心,旨在幫助使用者快速開始建立 LLM 應用。首批已與合作夥伴推出 16+ 個模板,可在 LlamaHub(https://llamahub.ai/)瀏覽,涵蓋 Streamlit 應用、Weaviate 檢索等用途。
LlamaIndex 發佈《OpenAI Cookbook》,提供使用 LlamaIndex 建構及評估 RAG 系統的指南。內容分為 RAG 概述、使用 LlamaIndex 建構 RAG,以及評估檢索系統和回應生成三部分;建構示例使用 Paul Graham 的文章及 VectorStoreIndex。
LlamaIndex 推出 Llama Datasets,首批提供 10 個社羣貢獻的資料集,用於按不同用例評測 RAG 流程。每個資料集包含問答對及來源上下文,可從 LlamaHub 下載,並使用 RagEvaluatorPack 計算評測指標。開發者亦可手動或以合成方式建立資料集,並向 LlamaHub 和 llama-datasets 提交貢獻。
LlamaIndex 推出 AutoTranslateDoc 命令列工具,可從 GitHub 儲存庫擷取 .md 和 .mdx 文件,並使用 GPT-3.5、GPT-4 分段翻譯。
LlamaIndex 在 2023–12–12 電子報中介紹多項產品更新,涵蓋 RAG 評測、資料管線、多模態功能及開發模板。
作者認為,Vibe Coding 並不足以支撐嚴肅系統開發,AI 編碼仍需精確規格、獨立驗證與增量學習。文章提到,一位使用多個 AI 智能體的人估計每日產出 12,000 行程式碼,作者指出瓶頸在規格、驗證與發布。他主張把規格納入版本控制,在部署流程自行執行測試,並透過小步變更持續收集回饋。
Tessl 研究員兼工程師提出 Harness Engineer 角色,主張 AI 智能體愈多負責編碼,工程重心愈轉向設計和管理其運行系統。他將相關工作歸納為明確系統不變條件、分析智能體及程式碼數據、按風險安排審核;Tessl 以約 1,000 個開源技能測試智能體,發現平均只有約 70% 的技能指令獲遵循。
LlamaIndex 使用其框架,基於包含 100 條問題的 Llama 2 論文資料集,比較 Prometheus 與 GPT-4 的 RAG 評估表現。GPT-4 的 Faithfulness 和 Relevancy 分數分別為 0.93 和 0.98,Prometheus 則為 0.39 和 0.57;文章亦展示 Prometheus 有時會誤判上下文資訊。
Na2SQL 結合 LlamaIndex、OpenAI GPT-3.5 與 Streamlit,讓使用者以自然語言查詢電商 SQLite 資料庫,並取得 SQL 查詢及結果分析。應用程式會執行生成的 SQL,並提供資料庫結構檢視器;作者使用示例電商資料庫,並提供免費及付費方案。
Tessl 的設計實踐指出,設計系統能列明元件,卻無法教會 AI 智能體如何選用元件、安排畫面層級或判斷何時不使用元件。作者把三個智能體生成的畫面在 Figma 中重新設計,再讓另一個智能體列出前後差異,從重複出現的改動提煉可檢查的構圖規則。
作者用 AWS 搭建 LlamaIndex 的可擴展索引 ETL 流程,並採用 Hugging Face 的 Text Embedding Interface(TEI)提供 embeddings。
LlamaIndex 與 OpenLLM 結合,可構建基於自訂語料、能理解並回應查詢的智能查詢回應系統。示例以 OpenLLM 啟動本地 Llama 2 7B 服務,並由 LlamaIndex 管理及檢索私有、特定領域資料。若使用 vLLM 後端,需配備 Ampere 或更新架構的 GPU 及 CUDA 11.8。
LlamaIndex 提供進階 RAG 建構速查表與實作配方,指出系統成效取決於檢索能否找到相關文件,以及生成能否善用文件回答查詢。內容示範以 Chunk-Size Optimization 調整文件分塊,並以結構化外部知識支援遞迴檢索或路由檢索。
LlamaIndex 推出 Query Pipelines 宣告式 API,讓開發者將 LlamaIndex 模組編排成順序鏈或 DAG 查詢工作流。它面向 RAG、結構化資料擷取等用途,支援跨整個流程的 callback,並可減少手動銜接模組所需的樣板程式。目前可組合 LLM、提示詞、查詢引擎、檢索器等模組,也能加入自訂元件;序列化與快取則列為未來方向。
LlamaIndex 與 Activeloop 合作提供免費 Advanced Retrieval Augmented Generation for Production 課程。
LlamaIndex 示範以文件 metadata 標記使用者,並在查詢時透過 metadata filter 限定可檢索的資料,建構多租户 RAG 系統。示例將 Jerry 與 Ravi 的論文分別加入同一索引,使用 ExactMatchFilter 分隔查詢;Jerry 查詢 Ravi 的 LLMCompiler 論文時未檢索到相關內容。
LlamaIndex 的教程示範如何用 LlamaIndex、Qdrant 和 Render 建立並部署 Slack 聊天機械人,讓它從工作區對話記錄資訊並回答相關問題。機械人把未提及它的訊息存入索引,將提及它的訊息作為查詢;Qdrant 用來持久保存記憶,FixedRecencyPostprocessor 配合最多 20 條檢索結果,令較新的訊息優先。
LlamaIndex 與 Zilliz Cloud Pipelines 整合,讓開發者以託管檢索服務構建可擴展的 RAG 應用。示範以 30 行程式碼構建支援 metadata filtering 的多租户 RAG 聊天機械人,並可不改程式碼由一名用户擴展至數百萬名用户。
LlamaIndex 推出命令列工具 `llamaindex-cli`,讓使用者無需編寫程式即可將本地文件匯入並透過 RAG 提問。工具隨 `pip install llama-index` 安裝,底層使用 Chroma,另需安裝 `chromadb`;預設使用 OpenAI API,使用前須設定 `OPENAI_API_KEY`。
LlamaIndex 的技術指南示範如何將 Tonic Validate 接入 LlamaIndex,並透過 pytest 和 GitHub Actions 建立 RAG 整合測試,以追蹤回答品質變化。
LlamaIndex 使用 Retrieval Evaluation module,在 Weaviate 中按查詢類型調校 RAG 混合搜尋的 Alpha,並比較有無重排器的檢索結果。實驗涵蓋六類查詢,以及索引一篇或三篇論文的資料集,並以 Hit Rate 和 MRR 評估檢索表現。文中結果顯示,重排器提升所測資料的兩項指標,而 Alpha 的表現會隨查詢類型和索引文檔數量而異。