這確實是個 AI 浪潮席捲而來的時代,我手邊常用的應用程式,無論是 Heptabase、Notion 乃至於 Readwise,都已紛紛內建了 AI 功能,可見這股趨勢之不可擋。因此,在 Obsidian 的眾多插件 (plugin) 中,我首先想介紹的便是這款名為「Smart connections」的 AI 插件。
Smart connections 的核心運作方式,是將你所有的筆記轉化為 embedding,進而在本地進行檢索。從本質上來說,它已經是一種 RAG (Retrieval-Augmented Generation,檢索增強生成) 的應用,將你的 Obsidian 筆記庫轉變為一個獨一無二的 AI 知識庫。你可以想像,它就像一位隨時待命的 AI 助手,能夠快速地從你的筆記中提取相關資訊,協助你進行思考和創作。
在上一篇關於活用Obsidian MOC:打造你的知識地圖的文章中,我已經大致介紹了 Smart connection 的主要功能。而本篇文章,我將更深入地探討與之相關的重要設定。Smart connections 主要提供兩大功能:(1) 搜尋關聯性筆記,以及 (2) 基於筆記的 AI Chat。不過,我個人並沒有使用第二項功能,而是選擇了另一款插件 Copilot 來取而代之,這也是一種個人化的選擇,畢竟每個人的使用習慣和需求都不盡相同。

Embedding 模型設置:精打細算的選擇
關於 Embedding 模型的選擇,Smart connections 提供了幾種方案。你可以選擇使用系統內建的模型,但我個人更推薦使用 OpenAI 的 text-embedding-3-small 模型,也就是ChapGPT API所提供的服務。目前,它的價格是每 1,000 Tokens 為 0.0002 美元,以我個人的使用經驗來說,一個月下來的花費通常都在台幣 10 元以下,可說是相當經濟實惠。
或許你會考慮是否要使用價格較高的 text-embedding-3-large 模型 (每 1,000 Tokens 為 0.0013 美元)?我的建議是,如果你的主要目的是建立筆記之間的關聯,那麼 small 模型已經綽綽有餘。畢竟,我們並非要訓練一個能夠生成複雜文本的 AI,而是要讓它能夠理解筆記之間的語義關係。
此外,我強烈建議不要開啟 Smart Blocks 功能。雖然 Smart connections 也能夠精準地處理 Blocks (即段落),但開啟 Smart Blocks 會帶來一些負面影響。舉例來說,如果以 Note level 產生 7,500 個向量 (每個筆記一個向量),那麼開啟 Smart blocks 後,向量數可能會增加到約 6,600 個 (假設每篇筆記有 9 個段落),這將導致檢索速度變慢,同時費用也會增加十餘倍。
更重要的是,由於我的筆記絕大部分都是原子筆記 (即一個筆記只包含一個概念),如果僅僅拿單獨一段文字去做 embedding,模型很難理解其上下文,也無法判斷這段文字屬於哪一份文件。這樣一來,搜尋結果可能會出現一堆相似的段落,但卻缺乏關聯的脈絡,無法將這些段落整合為一篇完整的概念筆記。

使用經驗:從繁瑣到高效的轉變
過去,我需要花費大量的時間和精力來為每個筆記設置相互連結,這是一項相當繁瑣的工作。然而,在使用 Smart connections 插件後,我可以同時檢索關聯度高的筆記,相關的觀念也變得更容易取得,彷彿俯首可拾。這讓我能夠更專注於筆記的撰寫,而不用再為了建立連結而分心。
總而言之,通過 OpenAI API 使用 text-embedding-3-small,你就能夠立即享受到價廉快速的知識庫連結。這不僅能夠提升你的筆記效率,也能夠讓你更深入地理解和運用你的知識。