新聞
模型
API
keyboard_arrow_down
讀取器
讀取URL或搜索為大模型提供更好的依據。
向量模型
世界一流的多模態多語言向量模型。
重排器
世界一流的重排器,最大限度地提高搜索相關性。
彈性推理服務
在 Elasticsearch 中原生運行 Jina 模型。
MCP terminal命令行articlellms.txtsmart_toy代理人data_object模式menu_book文檔



登錄
login
詞元化:將數字視為文本
模型架構
實驗結果
其他方法
結論
技術博客
三月 06, 2026

從原始數值辨識向量模型

一個透過讀取原始數值來對向量模型進行指紋識別的微型 Transformer。無需特徵工程。
Han Xiao
Han Xiao • 6 分鐘的讀取量
Embedding Fingerprint Demo
Paste any embedding vector and identify which model produced it.

向量模型是黑盒子。你輸入文本,得到一個向量。一個沒有標籤、沒有浮水印、也沒有中繼數據告訴你它來源的浮點數列表。如果有人給你一個 1024 維的向量,你能分辨出它是由 BGE-M3、jina-embeddings-v5-text-small 還是 Qwen3-Embedding 生成的嗎?即使兩個向量來自同一個模型,你能分辨出它們是使用檢索指令還是分類指令生成的嗎?

事實證明你可以做到。向量模型向量中的數值模式帶有出人意料且強大的模型指紋,能辨識出是由哪個模型生成的,甚至能辨識出推理過程中使用的指令提示詞。我們訓練了一個小型 Transformer 分類器(800K 個參數),用於從 25 個以上的向量模型中識別 68 種不同的模型與任務組合,僅通過讀取原始浮點數位數,準確率就達到了 87%。你可以親自嘗試實時演示:貼上任何向量模型向量,看看分類器認為它是哪個模型和任務生成的。

tag詞元化:將數字視為文本

一個 1024 維的向量模型向量是一個包含 1024 個浮點數的序列。為了將其輸入分類器,我們需要一種不對數值結構做任何假設的表示方式。

我們採取了一種大膽的方法:將每個浮點數視為一個數字字元字串,並逐個字元進行詞元化。與更緊湊的替代方案相比,這聽起來可能很浪費,但事實證明這是正確的折衷方案。對於像 -0.1234 這樣的值,詞元序列為:

- 0 . 1 2 3 4

維度之間由 [SEP] 詞元分隔。完整的序列以 [CLS] 開始。完整的詞表共有 15 個詞元:

Digit-level tokenization scheme
數字級浮點數值詞元化方案。詞表大小為 15。
詞元 ID意義
0-9數字
10負號
11小數點
12[SEP]
13[CLS]
14[PAD]

在 4 位小數精度的情況下,一個 1024 維的向量會產生大約 7,700 個詞元。一個 384 維的向量產生約 2,900 個詞元。序列長度會隨著向量模型維度自然變化,且在不同維度之間不需要進行填充或截斷。由於詞元生成器是直接的整數映射,不包含可學習組件,因此效率極高。

tag模型架構

Model architecture diagram
4 層僅編碼器的 Transformer,800K 個參數。詞表大小為 15,序列長度可達 7,700 個詞元。

該分類器是一個小型僅編碼器的 Transformer,具有 4 層、128 個維度、4 個帶有 RoPE 的注意力頭、SwiGLU FFN 和 RMSNorm。CLS 詞元經過池化並投影到 68 類的輸出空間中。總參數約為 800K。

儘管詞表僅有 15 個詞元,但這從根本上說是一個長序列任務。單個 1024 維向量模型會變成一個 7,700 個詞元的序列,比典型的 NLP 輸入更長。模型必須關注數千個數字詞元,以獲取區分一個模型輸出與另一個模型的統計模式。這使得高效的注意力機制和位置編碼(RoPE)即使在如此小的規模下也至關重要。

tag數據

我們使用了 10,000 個多語言文本樣本,每個樣本由 25 個以上的模型生成向量模型,並帶有各種任務前綴,如 retrieval.query、retrieval.document、classification 和 clustering,共產生 68 個不同的類別。重要的是,這 68 個類別不僅包括不同的模型,還包括應用於相同模型的不同指令提示詞。例如,帶有檢索指令的 jina-embeddings-v5-text-small 和帶有分類指令的 jina-embeddings-v5-text-small 被視為不同的類別。目標是僅從原始輸出中同時檢測模型身份和特定任務的行為。

每個類別分為 7,000 個訓練樣本和 3,000 個驗證樣本。模型跨越五個輸出維度。

維度類別範例模型
3848BGE-small, E5-small, MiniLM, GTE-small
5122BGE-small-zh
76824BGE-base, E5-base, jina-embeddings-v5-text-nano, Nomic, INSTRUCTOR, LaBSE
102432BGE-M3, E5-large, jina-embeddings-v3, jina-embeddings-v5-text-small, Qwen3-0.6B, Snowflake, mxbai
15362GTE-Qwen2-1.5B

僅在 1024 維這一組中,就有 32 個類別需要區分,包括來自同一家族但具有不同任務前綴的模型。在這種情況下,分類器不能依賴序列長度;它必須純粹學習數值模式。

tag訓練

訓練在 A100 40GB 上進行,採用混合精度、長度分桶批次處理,以及採用 Cosine 排程的 AdamW,達到每秒約 340K 個詞元,每個訓練輪次(epoch)約 23,800 步。

tag實驗結果

Training curves
14 個訓練輪次(約 43B 個詞元)的訓練與驗證曲線。訓練準確率 87.3%,驗證準確率 86.0%。

訓練與驗證之間極小的差距以及持續的改進,表明模型進行了具有泛化能力的學習,而非死記硬背。在 800K 個參數下,模型正接近其容量極限,更大的模型可能會進一步提高準確率。

tag混淆矩陣

68x68 confusion matrix
在完整驗證集(每類 3,000 個樣本,共 204,000 個)上的 68 類混淆矩陣。總體準確率為 87.0%。

總體準確率為 87.0%,比 1.5% 的隨機機率高出 59 倍。有幾個模型被完美分類,包括 GTE-large、jina-embeddings-v3/jina-embeddings-v5-text-small 的分類變體、LaBSE 和 Paraphrase MiniLM。最困難的情況是同一個基礎模型的任務前綴變體。Qwen3-0.6B 在其 4 種任務類型中具有最多的家族內混淆,而 jina-embeddings-v5-text-small 在 5 個任務中實現了 92% 的家族內準確率。在同一個模型上,不同的指令提示詞會產生可區分的輸出模式,這本身就是一個值得注意的發現,表明任務適配即使在基礎權重相同的情況下,也會留下可衡量的數值痕跡。

不同家族的模型(BGE vs. Jina vs. E5 vs. Nomic)比同一個模型的任務變體更容易區分。核心架構和訓練方法留下的特徵比任務特定適配器更強。真正的挑戰在於 1024 維組(32 類)和 768 維組(24 類),分類器必須純粹依賴數值模式而非序列長度。

tag其他方法

tag分桶詞元生成器

將每個維度量化為 K 個分桶(例如 256 個)之一,產生長度為 D 的緊湊序列,每個維度一個詞元。這是 Embedding-Converter (ICLR 2025) 採用的方法。對於 1024 維向量,你會得到 1024 個詞元而非 7,700 個。

分桶會對數值分佈施加先驗。你必須在看到數據之前決定分桶邊界。但不同的模型以根本不同的方式分佈其數值。有些模型將分佈集中在零附近的狹窄範圍內,有些則將數值均勻分佈在 [-1, 1] 之間,且在單個模型內部,分佈也會隨維度而變化。任何固定的分桶方案,要麼在數值聚集的地方浪費解析度,要麼在數值分散的地方解析度不足。針對每個模型進行自適應分桶會失去其意義,因為這需要預先知道模型的身份。

tag固定長度 MLP

將原始向量模型向量直接輸入 MLP 分類器。根本問題不僅僅在於變動維度問題(我們的模型生成的向量維度從 384 到 1536 不等)。即使你將所有內容填充到固定長度,你也在隱式地假設維度索引在不同模型之間是語義對齊的,即 BGE-M3 的第 1 維對應於 jina-embeddings-v5-text-small 的第 1 維。這個假設是錯誤的。不同的架構、訓練數據和訓練目標會產生完全不同的內部表示。

這兩種替代方案都施加了模型必須繞過的結構性假設。數字級詞元化避免了所有這些問題。這是我們能找到的最無假設的表示方式:這裡有每個數字的準確數位,按順序排列,並由標記分隔。剩下的由你自己找出規律。

tag結論

向量模型訓練的目的是將語義相似的文本映射到相鄰的向量。訓練目標並未提及要使向量具有可辨識性,也未提及要編碼模型簽名。然而,簽名就在那裡,強大到足以讓一個微小的分類器檢測到。向量模型的「風格」,即其用於表示意義的特定數值模式,就像筆跡一樣具有辨識度。甚至指令提示詞的選擇也會留下可檢測的痕跡。

這在當來源模型未知時審計向量資料庫、驗證 API 是否確實使用了它聲稱的模型,以及檢測模型版本變更方面具有實用價值。更從根本上說,它告訴我們,向量模型以結構上截然不同的方式編碼意義,即使生成的是維度相同的向量。

類別:
技術博客
rss_feed

更多新聞
三月 11, 2026 • 7 分鐘的讀取量
從多模態大模型引導音訊向量模型
Han Xiao
Abstract illustration of a sound wave or heartbeat, formed by blue, orange, and gray dots on a white background.
三月 06, 2026 • 6 分鐘的讀取量
從原始數值辨識向量模型
Han Xiao
Fingerprint illustration made from numbers, showcasing digital and high-tech design on a light background.
九月 09, 2025 • 11 分鐘的讀取量
Llama.cpp 與 GGUF 中的多模態向量模型
Andrei Ungureanu
Alex C-G
Cartoon llama in the center of a white background, emitting laser-like beams from its eyes. The illustration creates a playfu
辦公室
location_on
加利福尼亞州桑尼維爾
710 Lakeway Dr, Ste 200, 桑尼維爾, 加州 94085, 美國
location_on
德國柏林
Prinzessinnenstraße 19-20,10969 柏林,德國
搜索底座
讀取器
向量模型
重排器
彈性推理服務
open_in_new
獲取 Jina API 密鑰
速率限制
API 狀態
公司
關於我們
聯繫銷售
新聞
實習生項目
下載 Jina 標誌
open_in_new
下載 Elastic 徽標
open_in_new
條款
安全
條款及條件
隱私
管理 Cookie
email
Elastic Jina AI © 2020-2026.