iT邦幫忙

2025 iThome 鐵人賽

DAY 24
0
生成式 AI

一起來打造 PTT 文章智慧問答系統!系列 第 24

【Day 24】Embedding 模型比較 - 選擇最適合專案的模型

  • 分享至 

  • xImage
  •  

Hi大家好,
這是我參加 iT 邦幫忙鐵人賽的第 1 次挑戰,這次的主題聚焦在結合 Python 爬蟲、RAG(檢索增強生成)與 AI,打造一套 PTT 文章智慧問答系統。在過程中,我會依照每天進度上傳程式碼到 GitHub ,方便大家參考學習。也歡迎留言或來信討論,我的信箱是 gerryearth@gmail.com


今天我們要探討 Embedding 模型,這是實作 語意檢索RAG(檢索增強生成) 的核心技術之一。
Embedding 的品質,會直接影響檢索的精準度,因此選擇合適的模型非常重要。


今日目標

  • 認識什麼是 Embedding 模型
  • 比較市面上常見的 Embedding 模型
  • 評估模型在語意檢索中的表現與適用性
  • 決定本專案要採用哪個模型並說明原因

什麼是 Embedding 模型?

Embedding(向量表示)是一種將文字轉換為向量空間中的數值表示的方法。
在語意檢索中,我們會將文章內容與使用者查詢都轉換成向量,然後透過**餘弦相似度(Cosine Similarity)**或其他距離度量來計算它們之間的語意相似度。

Embedding 模型可以:

  • 將相似語意的句子投射到接近的向量空間
  • 能處理多語言(例如英文與中文,如果支援的話)
  • 兼顧準確度、效能與成本

常見的 Embedding 模型比較

參考 文章 與多方測試,以下是市面上主流的幾個 Embedding 模型:

模型名稱 語言支援 調用成本 效果表現(測試分數) 特點
OpenAI text-embedding-3-small 英文為主 中等 速度快、價格便宜,但中文效果普通
OpenAI text-embedding-3-large 英文佳,中文普通 中高 適合英文語料庫,中文檢索略遜
Google gemini-embedding-001 支援中英文 免費額度 最佳 表現最穩定,語意捕捉能力佳,尤其適合多語環境
Cohere multilingual-22-12 支援多語 中高 多語言支援佳,但精準度稍遜於 Google
Sentence-BERT (開源) 支援多語 免費(需自行部署) 需自行訓練或調整,部署成本高,不適合快速開發

從測試結果觀察

根據表格 Embedding Model Leaderboard,可以發現:

  • Google gemini-embedding-001 的整體分數表現最佳,尤其在多語言(含中文)場景中具備優勢。
  • OpenAI 的模型在英文效果很好,但中文檢索的語意一致性稍微落後。
  • Cohere 在多語場景也不錯,但成本與效果綜合評估不如 Google。
  • 開源模型(如 Sentence-BERT)適合自建,但需要 GPU 資源與調優,對於快速開發的專案不友善。

為什麼選擇 Google gemini-embedding-001?

理由很簡單,總結三大關鍵:

表現最佳:在多個基準測試(包括語意相似、檢索效果)中領先
支援中文:PTT 資料是中文為主,這點非常重要
免費額度:Google 提供一定的免費額度,非常適合學習與開發

因此,對於我們的 PTT 文章智慧問答系統,選擇 Google gemini-embedding-001 作為主要的 Embedding 模型,能在效能與成本之間達到最佳平衡。


【Day 25】如何降低向量資料庫的成本 - 最佳化策略分享:我們將深入探討 如何降低向量資料庫的使用成本,分享幾個常見的成本壓縮手法,並結合實際案例分析。


上一篇
【Day 23】語意檢索與關鍵字檢索 - 深入認識檢索方式
下一篇
【Day 25】如何降低向量資料庫的成本 - 最佳化策略分享
系列文
一起來打造 PTT 文章智慧問答系統!27
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言