從零寫AI RAG 個人知識庫

影片中,作者使用了 Google 的 embedding 模型和 ChromaDB 向量資料庫來實現這個架構。

  • RAG 架構簡介 解釋了 RAG 的基本原理,即將長文章拆分成小片段,對每個片段進行 embedding,然後儲存到向量資料庫中,並在使用者提問時找出最相關的片段發送給大型語言模型。
  • 文章分塊 示範如何將一篇關於「令狐沖轉生為史萊姆」的虛構文章進行分塊處理。他首先使用雙回車符作為切分依據,然後進一步優化,將以警號開頭的標題與後續的正文合併。
  • Embedding 與資料庫儲存 介紹如何使用 Google 的 embedding 模型對分塊後的文本進行 embedding,並將這些 embedding 及其原始文本儲存到 ChromaDB 向量資料庫中。作者特別提到 Google embedding 模型的「儲存」和「查詢」兩種模式。
  • 查詢功能 說明如何透過查詢 embedding 模型並從 ChromaDB 中檢索出與使用者問題最相關的文本片段。
  • 整合大型語言模型 最後,展示如何將查詢到的相關文本片段與使用者問題一起發送給大型語言模型(Gemini Flash 2.5),以生成更準確的回應。

影片強調動手實作的重要性,鼓勵觀眾親自寫一遍程式碼以加深理解。

从零写AI RAG 个人知识库

最先進的文本嵌入模型 gemini-embedding-exp-03-07

Embedding 文字嵌入,意思是將文字轉換為有意義的向量數值。其主要目的是為了讓 A.I. 開發者能夠利用這些向量,實現更精準的語義搜尋,即使查詢與文本內容的詞彙不完全相同也能找到相關資訊。

Google 宣布推出一個新的實驗性 Gemini 文字嵌入模型,稱為 gemini-embedding-exp-03-07。這個模型繼承了語言和細微語境的理解,適合廣泛的應用。這個新模型超越了 Google 之前的最先進模型,並在多語言文本嵌入基準測試(MTEB)中名列前茅,同時還提供了更長的輸入長度等新功能。目前已經可以透過 Gemini API 開始使用。


最先進的 Multimodal Embeddings

影片主要探討多模態嵌入模型 (Multimodal Embedding Models) 與檢索增強生成 (Retrieval-Augmented Generation, RAG) 的應用。作者討論了 Voyage AI 的多模態嵌入模型,並強調模型能有效地將圖像與文字等多種模態的資料整合到同一的嵌入空間,由於傳統的 CLIP 模型在多模態檢索和 RAG 應用中存在模態差距等問題,而 Voyage AI 可以直接將不同模態的資料轉換為 tokens 並輸入 Transformer 編碼器,解決了這些限制。

State-of-the-Art Multimodal Embeddings with Voyage AI



Page Assist 瀏覽器擴充功能

Page Assist 是一個瀏覽器外掛,透過 Ollama 於本機運行 AI 模型,Page Assist 提供了一個十分完善的 Ollama介面。Page Assist 強調不會收集個人資料,十分注重隱私。專案是由 MIT 授權。


Word2Vec詞嵌入技術

將文字轉換成電腦可理解的數值向量的方法。Word2Vec 有兩種主要模型:連續詞袋模型 (CBOW) 和跳字模型 (Skip-gram),透過反向算法,根據上下文預測目標詞或反之,從而學習詞語間的關係。訓練後的詞向量具有語義相似性的特性,相似的詞彙在向量空間中距離較近,並能透過向量運算進行類比推理,例如「國王-男人+女人=王后」。Word2Vec 應用廣泛,例如搜尋引擎、推薦系統和機器翻譯,但其局限性在於每個詞只有一個固定向量,無法處理多詞片語的語義。

Word Embeddings: Word2Vec

詞嵌入 (Word Embeddings) 的概念及其應用

詞嵌入將文字轉換成數值向量,讓機器學習模型能夠處理文字資料。相似的詞彙在向量空間中彼此靠近,距離和方向代表詞彙間的語義關係。 片中說明了詞嵌入在自然語言處理 (NLP) 中的關鍵作用,例如文字分類、命名實體辨識和問答系統等。接著,解釋了兩種主要的詞嵌入方法:基於詞頻的方法 (例如TF-IDF) 和基於預測的方法 (例如Word2Vec, GloVe),並比較了它們的差異。最後,介紹了更先進的基於上下文的方法 (Transformer 模型),它能根據上下文調整詞彙的向量表示,進一步提升 NLP 的效能。這視頻旨在說明詞嵌入技術如何有效地將人類語言轉換成機器可理解的數值形式,從而推動自然語言處理的發展。

What are Word Embeddings?

RAG 向量中的文件分割策略

文件分割策略對於大型語言模型(LLM)的資訊檢索效能影響。現有資訊檢索基準測試通常以整篇文件的相關性評估效能,忽略了文件分割策略的重要性。RAG 文件分割(Text Chunking) 基於字元/詞(Token) 的分割、遞迴式分割、語義分割等,以找出最適合用於後續基於檢索增強生成(RAG)應用的最佳方法。

The BEST Way to Chunk Text for RAG