一句話定義
Embedding(向量嵌入)是把文字、圖片這類資料轉成一長串數字的技術,轉完之後意思愈接近的東西,數字上的距離就愈近。
30 秒看重點
- 是什麼:Embedding 把一段文字或一張圖變成一組固定長度的數字,這組數字代表的是它的意思。
- 為什麼重要:有了它,電腦才能用「像不像」來找資料,而不是只會比對字面有沒有一模一樣。
- 跟誰相關:做搜尋與推薦的工程師、想把公司文件接上 AI 的人,還有每個用過相簿搜尋「海邊」的人。
- 最常見的誤解:很多人以為 Embedding 是一種資料庫或某個產品,其實它是一個轉換動作,向量才是產物。
- 記住這件事就夠了:Embedding 負責把意思變成座標,後面的搜尋、推薦、RAG 都是在那組座標上面做文章。
Embedding 到底是什麼?
Embedding 是把一段文字、一張圖片或一段聲音,轉成一組固定長度數字的技術,中文叫向量嵌入。Hugging Face 的官方教學講得很白:embedding 就是「一則資訊的數值表示法」,而它抓的是語意,不是字面。
這組數字有多長,要看你用哪一顆模型。Hugging Face 拿來當範例的 all-MiniLM-L6-v2 輸出 384 維,一句話進去、384 個小數出來;OpenAI 的 text-embedding-3-small 預設是 1536 維,text-embedding-3-large 則是 3072 維。維度愈高通常抓得愈細,可是存起來愈佔空間、比對也愈慢,這是很現實的取捨。
「那 384 個數字,每一個各代表什麼?」老實講,沒有人說得出來。它不像身高體重那樣一格對一個意義,那是模型在訓練過程中自己喬出來的座標系。你只要記住一件事就夠了:這些座標放在一起之後,意思接近的東西會擠在一起。
生活比喻:你可以想像成一個超大的夜市。雞排攤旁邊是鹽酥雞、再旁邊是甜不辣,飲料攤自己聚一區,射氣球又在另一頭。就算招牌被擋住,光看攤位擺在哪一區,你也猜得到它大概在賣什麼。Embedding 做的就是幫每個詞、每句話、每張圖,在這個夜市裡分配一個攤位,意思愈像的擺愈近。差別只在於真實夜市是平面的,模型的夜市有 1536 個方向可以擺。
為什麼會有 Embedding?
因為電腦本來只會比對字面一不一樣,根本不知道兩句話是不是在講同一件事。
問題一是同義詞。 你在公司知識庫搜「筆電過熱」,同事那篇的標題寫的是「notebook 溫度異常」,兩邊字面沒有半個字重疊,關鍵字搜尋就是撈不到。搜尋框沒壞,它只是不曉得這兩句在講同一件事。
問題二是詞跟詞之間沒有遠近。 如果只是給每個詞編號,貓是 1、狗是 2、挖土機是 3,那在數學上貓離狗跟貓離挖土機一樣遠,這顯然不對勁。
Embedding 的解法就是把「意思」本身變成可以量距離的座標,同義詞不用人工標,自己就會靠在一起。順帶一提,這件事不是 2023 年才發明的,2013 年 Tomas Mikolov 團隊發表的 Word2Vec 早就把它推進大眾視野,最有名的示範是 king − man + woman ≈ queen,國王的向量減掉男人、加上女人,最接近的答案是皇后。
不過這個被引用十幾年的示範其實有點小作弊:原始做法在找最近的鄰居時,會先把輸入的那三個字排除掉,如果不排除,king − man + woman 的最近答案還是 king(有點掃興齁)。
Embedding 是怎麼運作的?
把資料丟進一顆 embedding 模型、拿到一組向量,之後所有的「像不像」都改成算這兩組向量的夾角。
- 先切塊:長文件不會整份丟進去,模型有輸入長度上限,通常會先切成一段一段再轉。切太碎會失去脈絡,切太大會讓一段裡塞了好幾個主題,這一步很吃調整。
- 轉成向量:丟進模型,出來一組固定長度的數字。這裡有個雷要先知道:只有同一顆模型產出的向量才能互相比,換一顆模型就得把全部資料重算一次,量大的時候真的很痛 QQ
帳單也會跟著重算一次。 - 算相似度:最常用的是餘弦相似度(cosine similarity),比的是兩個向量的夾角而不是長度,值域從 -1 到 1,1 代表方向完全一致。OpenAI 的 Cookbook 就寫明,餘弦相似度可以單獨拿來排序,也可以當成更大一套排序演算法裡的其中一個特徵。
名詞小教室:維度講的就是那串數字的長度,384 維就是 384 個小數。它跟 AI 的 Token 是兩回事,Token 管的是「你丟進去的文字有多長」,維度管的是「吐出來的向量有多長」,兩邊的上限要分開看。
Embedding 跟向量資料庫、RAG 差在哪?
一句話:Embedding 是把意思變成數字的那個動作,向量資料庫是存這些數字的地方,RAG 則是把查出來的東西餵給 AI 作答的整套流程。
| 比較項目 | Embedding | 向量資料庫 | RAG |
|---|---|---|---|
| 它是什麼 | 一個轉換動作 | 一個儲存與查詢系統 | 一整套回答流程 |
| 負責的事 | 產出向量 | 快速找出最接近的向量 | 檢索再生成答案 |
| 少了它會怎樣 | 根本沒東西可以存 | 資料一多就慢到不能用 | AI 只能憑訓練時的記憶回答 |
| 主要成本 | 呼叫模型的 token 費用 | 儲存與查詢的機器成本 | 前兩項再加上生成的費用 |
| 什麼時候會碰到 | 資料進場時,以及每次查詢 | 資料量大到不能硬掃時 | 想讓 AI 讀你自己的文件時 |
從這張表可以看出來,這三個詞根本不在同一層,硬要比誰比較強完全沒意義。實際順序是:先用 Embedding 把資料變成向量,再丟進向量資料庫存起來,最後 RAG 在使用者提問時把相關段落撈出來交給模型。三個一起上工,才是現在企業導入 AI 最常見的那套組合。
你會在哪些 AI 工具看到 Embedding?
答案是你每天在用的那幾個,只是它躲在後面沒露臉。
- 手機相簿搜尋:你打「海邊」就撈得出照片,靠的是把圖片跟文字放進同一個空間比對。OpenAI 的 CLIP 就是這種做法,圖片與文字各自編碼、丟進同一個向量空間,再用餘弦相似度算分數。官方 README 寫明,它在 ImageNet 上完全不用那 128 萬張標註樣本,零樣本就打平了原版 ResNet50。
- 企業知識庫與客服機器人:把公司文件全部轉成向量存起來,使用者一問就撈最接近的幾段,這就是 RAG 裡「檢索」的那一半。
- 推薦系統:OpenAI 的 Cookbook 直接把推薦列為 embedding 的標準用途,做法跟搜尋幾乎一樣,只是輸入從一段文字換成「你剛剛看的那個東西」。
- 去重與分群:同一篇 Cookbook 也列了分群分析與近似重複偵測,資料清理其實是 embedding 最不起眼但很常見的用途。
如果你是工程師,最快的入口是 sentence-transformers。官方 README 說 Hugging Face 上有超過 15,000 個預訓練的 Sentence Transformers 模型、支援 100 種以上語言,載一顆 all-MiniLM-L6-v2 大概兩行就能 encode,model.similarity() 會直接把相似度矩陣算給你。想走雲端 API 的話,OpenAI 與 Google 都有現成的 embedding 端點,其中 Google 的 gemini-embedding-001 用的是 Matryoshka 表示法,可以在 768、1536、3072 三種維度之間自己挑,講白了就是同一條向量從後面截短還堪用。順帶一提,這些開源模型幾乎都掛在 Hugging Face 上,也難怪它被輝達買下的時候整個開發圈都在皮皮的。
學 Embedding 最常見的 3 個誤解
- 誤解一:Embedding 就是向量資料庫 — 真相是一個是動作、一個是倉庫。你完全可以只用 Embedding 不碰向量資料庫,資料量小的時候,拿一個陣列硬算餘弦相似度就夠用了,畢竟幾百筆資料的規模,機器根本不會有感覺,別急著先裝一套系統啦。
- 誤解二:維度愈高一定愈準 — 真相是維度是成本與效果的取捨。384 維的小模型到現在照樣被大量使用,Google 甚至乾脆讓你自己選維度。該看的是你的資料、你的語言實測出來的表現,不是規格表上哪個數字比較大。
- 誤解三:英文模型拿來吃繁體中文也一樣準 — 真相是不一定。台灣開發者 ihower 就做了一份公開的繁體中文 embedding 評測,拿台達閱讀理解資料集 DRCD 當測資,把 OpenAI、Cohere、Voyage、Gemini、Qwen 等十幾家模型的檢索能力實測一輪。要挑模型,看這種用繁中資料測出來的結果,比看英文榜單實在多了。
想多了解 Embedding,從哪開始?
沒有技術背景的話,記住夜市那個畫面就夠了。下次看到哪個 AI 產品說自己「聽得懂你的意思」「支援語意搜尋」,你會知道它底下多半是在算兩組數字的距離,而不是真的聽懂。這個差別很重要:它很會找意思相近的東西,可不保證找出來的內容是對的。
有技術背景的話,直接從 sentence-transformers 開始,本機跑一顆 all-MiniLM-L6-v2,把自己的幾十篇筆記 encode 起來,用餘弦相似度排序看結果合不合理。跑完這一輪再去翻 ihower 的繁中評測,挑正式要用的模型會踏實很多。
常見問題 FAQ
Embedding 跟 AI 有什麼關係?
Embedding 是現在多數 AI 應用的基礎零件。它把文字、圖片、聲音轉成一組固定長度的數字,也就是向量,讓模型與系統可以用向量之間的距離來判斷語意是否接近。語意搜尋、推薦系統、RAG 檢索、資料分群,底層都建立在 embedding 之上。
為什麼 Embedding 突然這麼紅?
因為生成式 AI 帶動了 RAG 的普及。企業想讓 AI 讀自己的內部文件,第一步就是把文件轉成向量,embedding 因此從研究名詞變成產品規格。事實上這個概念很早就存在,2013 年 Tomas Mikolov 團隊發表的 Word2Vec 就以 king 減 man 加 woman 約等於 queen 的向量運算示範聞名。
我不是工程師也需要懂 Embedding 嗎?
不需要會實作,但了解概念會讓你更看得懂 AI 產品的宣傳。當一個產品說它支援語意搜尋,實際上是把你的問題轉成向量,再找出距離最近的內容。這代表它擅長找意思相近的資料,卻不保證答案正確,兩者是不同的事。
Embedding 的中文翻譯有沒有統一?
沒有完全統一。台灣常見的譯法包括向量嵌入、詞嵌入、嵌入向量,實務上多數工程師直接講英文 Embedding。本站行文以原文 Embedding 為主,需要中譯時使用向量嵌入,避免與中國慣用的嵌入式系統相關詞彙混淆。
學會 Embedding 之後,下一個該學什麼?
建議往三個方向延伸:向量資料庫,也就是這些向量存放與查詢的地方;RAG,理解檢索到的內容如何交給模型作答;還有多模態,看圖片與聲音如何被放進同一個向量空間。這三個搞懂,企業導入 AI 的技術文件大致都讀得動了。
延伸閱讀
- 向量資料庫(Vector Database)是什麼?RAG 背後找相似資料的關鍵零件 — Embedding 產出的向量最後就是存進這裡,HNSW 索引怎麼運作都在那篇。
- RAG 是什麼?一次搞懂檢索增強生成怎麼讓 AI 少亂講話 — Embedding 負責的是 RAG 三步驟裡的第一步。
- 多模態 AI(Multimodal)是什麼?搞懂 AI 怎麼同時看圖、聽聲、讀文字 — CLIP 把圖文放進同一個向量空間的做法,那篇講得更細。
- AI 的 Token 是什麼?一次搞懂 AI 計費單位、中文換算與上下文上限 — 呼叫 embedding 模型同樣是按 token 計費,這篇幫你把單位搞清楚。
- 輝達買下 Hugging Face 的 3 個訊號 — 開源 embedding 模型幾乎都放在 Hugging Face,這樁收購案跟你選模型有關。
參考來源
- Getting Started With Embeddings|Hugging Face Blog — embedding 是「一則資訊的數值表示法」、抓取語意、all-MiniLM-L6-v2 輸出 384 維,以及預設用餘弦相似度判斷遠近,都出自這裡。
- Use cases for embeddings|OpenAI Cookbook — 語意搜尋、推薦、分群分析、近似重複偵測這四類用途,以及餘弦相似度可單獨排序或作為排序特徵的說法。
- sentence-transformers 官方 README|UKPLab — Hugging Face 上超過 15,000 個預訓練 Sentence Transformers 模型、支援 100 種以上語言,以及 all-MiniLM-L6-v2 輸出 (3, 384) 形狀與
model.similarity()的用法。 - CLIP 官方 README|openai — 圖片與文字各自編碼進同一向量空間、以餘弦相似度計分,以及不使用 ImageNet 那 128 萬張標註樣本、零樣本打平原版 ResNet50 的結果。
- zh-tw-embedding-model-benchmark|ihower — 台灣開發者以台達閱讀理解資料集 DRCD(取自 TCEval-v2)評測 OpenAI、Cohere、Voyage、Gemini、Qwen 等十餘家 embedding 模型的繁體中文檢索能力。
關於本篇的查證限制:撰寫當下網路政策擋掉了 OpenAI 與 Google 官方文件網域,text-embedding-3-small 的 1536 維、text-embedding-3-large 的 3072 維、gemini-embedding-001 的 768/1536/3072 維與 Matryoshka 表示法,以及 Word2Vec 的年份與提出者,是由多筆公開資料交叉比對得出,未能直接讀取官方頁面。以官方最新文件為準。
整理一下重點:Embedding 真的就是「把意思變成座標」這一招,模型把資料擺進一個 1536 維的大夜市,剩下的搜尋、推薦、RAG 全都是在量攤位之間的距離而已。
希望這一篇有讓你對 Embedding 有比較具體的理解哩~如果發現事實錯誤、定義不準、或翻譯卡卡的,歡迎透過聯絡頁指正,看到我們會盡快修。
我們下篇文章見囉~
本條目由 Array 報報 AI 編輯部根據上方「參考來源」整理,文末已揭露 AI 生成 + 公開資料引用。