這是一張為 Laya 與 Nimble 比較所生成的標題卡,帶有本文自身的副標題,以及一行頁腳,標明哪一方的數據是廠商回報的、哪一方是第三方的。
Engineering & Research

Laya 對 Nimble:對比式資料對上更快的編碼器

作者

Gideon Frost

發佈日期

最新模型 · 20查看全部模型
基準測試:Artificial Analysis · 每日更新
返回全部文章

Laya 與 Nimble 是兩個開放權重決策模型,其作者最費心說明它們是如何打造出來的,而他們的說法對於難點究竟落在何處並不一致。Convai Innovations 於 2026 年 9 月 18 日以 Apache 2.0 釋出 Laya——一個 421M 的 ModernBERT-large 英文檢查點、一個涵蓋 100 多種語言的 322M mmBERT-base 多語言檢查點、兩者之間一個亞毫秒級的路由器,以及公布在 Tesla T4 上每次決策 p50 為 32.8ms 的數據。Bespoke Labs 則將 Nimble 打造為 Qwen3.5-9B 上的 LoRA 微調模型,採 Apache 2.0 授權,並將其描述為「開源版的 Jev」——靈感取自 TypeSafe AI 的 Jev,但既未使用其權重、其架構,也不是其輸出的蒸餾。Convai 對準確度問題的答案是速度與可微調的基礎模型。Bespoke 的答案則是訓練資料。這個差異比總覽表格中出現的三個百分點準確度落差更值得關注。

每個專案實際上正在提出的主張

Laya 的主張是架構層面的。它在嚴格意義上屬於非自迴歸式——雙向編碼器,沒有解碼迴圈,沒有 JSON 要解析,也沒有任何可輸出所宣告型別之外文字的空間。這項結構性保證與 Jev 所提供的相同,只是從不同方向達成;對任何曾為一個偶爾忘記關閉大括號的模型撰寫重試邏輯的人來說,這確實很有價值。代價是,一個具備 512 個 token 視窗、背後又沒有生成式預訓練的 421M 編碼器,懂得並不多。Convai 在模型卡上這麼說:「Laya 是一個能快速特化的基礎,而不是零樣本決策引擎。」

A screenshot of the Laya project page, showing the Apache 2.0 licence, the 421M ModernBERT-large English checkpoint with a 512-token window, the 322M mmBERT-base multilingual checkpoint with a 1,024-token window, the 32.8ms p50 per decision on a Tesla T4, and the pip install entry point.A screenshot of the Nimble repository on GitHub, showing the description "Local typed decisions, contrastive data curation, and model evaluation", the README heading "Bespoke Nimble - Data, Model, Recipe for an open Jev", the contrastive example where changing one fact flips the correct answer, and the 2,676-example training split against the frozen 324 held-out set.

Nimble 的主張是關於資料。Bespoke 的方法則是對比式策展(contrastive curation),改編自該團隊先前的 Bespoke-MiniCheck 研究:撰寫兩個幾乎相同的範例,兩者只差在一個「焦點事實」,使得正確標籤翻轉。這套流程有四個明確步驟——檢查決策規則是否真的可能導向不同答案、在建構配對時最多只改動八個詞、以各自獨立的模型呼叫驗證兩個範例,再加上逐一移除句子的檢查,以及在程式碼中產生標籤,同時只保留標籤確實不同的配對。目標不是更多範例,而是更銳利的範例:迫使模型學會哪些證據應該改變決策。這是對於小型決策模型為何失敗的另一種理論,而且比再多一個準確率數字更有意思。

已公佈的數字實際上支持什麼

Nimble 在 324 個保留樣本上回報與參考標籤有 90.12% 的一致率,相較之下 Jev 為 93.21%、未微調的 Qwen3.5-9B 基礎模型為 66.36%,而未微調的 27B Qwen3.8 為 84.88%。它回報在 H100 上中位數約 106 毫秒,在配備 64GB 的 M5 Pro 上中位數為 444 毫秒。那些是 Bespoke 自家測試框架的數據。324 個樣本的評估集是必須謹慎權衡的部分,而該專案自己也說明了原因:這些樣本涵蓋十個訓練來源家族中的六個,它們是由模型生成並驗證,未經人工審查,因此對未見類別的泛化能力尚未獲得證實。當一個模型以某種資料篩選方法訓練,然後在同一篩選分佈的保留切分上進行評估時,那個準確率數字所陳述的是該方法的內部一致性,而不是你的流量。

Laya 的數字則來自另一端。在 TypeSafe 的 typed-decisions 基準測試上,它的零樣本得分為 0.362——隨機為 0.318,多數類別基準線為 0.461——而以該基準測試自身的訓練分割進行微調後則為 0.766。在 Banking77 的 77 個標籤上,它得分 0.425,Jev 則為 0.870,這是其多選項上限最鮮明的例證。在具四個標籤的 AG News 上,它得分 0.950,Jev 為 0.910;在具六個標籤的 DAIR Emotion 上,則是 0.595 對 0.480。其校準誤差發佈時為 0.466,經依每種問題類型重新擬合溫度後降至 0.081。一項針對 100 則 Mars-base 緊急訊息的第三方測試中,Jev 為 100/100,Laya 為 53/100。而在另一項獨立的代理工具呼叫評估中,Laya 對危險呼叫達到 100% 的拒答召回率,但僅僅是靠把所有項目都標記出來;這是把精確度失敗包裝成安全勝利。

把這兩組數字並列放在一起,誠實的解讀是:它們衡量的是不同的東西。Nimble 的 90.12% 是與其自行策劃的參考標籤之間的一致性。Laya 的 0.362 則是一個並非由它建立的基準。這兩個數字都無法通用。

校準:這兩個專案唯一異常坦率的地方

這正是兩個專案在精神上最相近、在結果上卻最懸殊的地方。

Bespoke 的 README 明確警告,Nimble 的機率是對所提供的候選項目進行 softmax 正規化後的 logits,而非經過校準的正確率——0.9 並不代表 90% 正確。它建議加入「以上皆非」選項,因為若正確答案不在候選項目之中,其中一個候選項目仍會勝出。在一項涵蓋 13 個子集、較新的 3,880 筆記錄評估中,Jev 在 13 個子集裡有 11 個回報的校準誤差較低,並在 13 個裡有 10 個的 Brier 分數較低。因此,相似的標籤一致度並不代表相似的機率品質,而 Bespoke 也如此表明。

Convai 的揭露則是鏡像對照:0.466 的期望校準誤差就印在說明卡上,旁邊是依問題類型重新擬合溫度所產生的 0.081。這兩個專案所發布的模型,都沒有哪個是你無須付出功夫、就能直接依據其信心值採取行動的。兩者都以書面形式告訴你這件事。如果你正在建立信心閾值——高於 0.95 就自動放行,低於 0.7 就升級處理——兩位作者的說明文件都在傳達同一件事:先在你自己的標註資料上擬合該閾值。

這項比較,逐個維度來看

• 主幹 — Laya:ModernBERT-large 421M 編碼器,雙向,無生成式預訓練。Nimble:Qwen3.5-9B 搭配 LoRA 微調,保留生成式基礎。

• 語言 — Laya:透過 322M 多語言檢查點支援 100+ 種語言。Nimble:英文。

• 提示預算 — Laya:英文 512 個權杖,多語言 1,024 個權杖。Nimble:每個提示最多 2,048 個權杖,僅限扁平結構描述,列舉每個欄位上限為 26 個選項。

• 速度 — Laya:在 T4 上 p50 為 32.8ms,以每批 10 題計算時每題 7.2ms。Nimble:在 H100 上中位數約 106ms,在 M5 Pro 64GB 上為 444ms。

• 硬體 —— Laya:CPU、CUDA 與 Apple MPS;在 MLX 移植版上常駐記憶體不到 1 GB。Nimble:所述數據採用 BF16 CUDA GPU,並支援 MLX 與 CUDA 路徑。

• 報告準確率 — Laya:零樣本 0.362、微調後 0.766、在 Banking77 上 0.425。Nimble:在 324 個精選留出樣本上達 90.12%,相較於 Jev 的 93.21%。

• 方法 — Laya:架構優先,針對每次部署進行微調。Nimble:對比式資料策展,以配方形式公開。

• 授權條款 — 兩者皆採用 Apache 2.0。

在那份清單裡有兩項限制,值得你在下定決心前讀兩遍。Nimble 每個列舉 26 個選項的上限,以及 2,048 個 token 的提示詞上限,都是結構描述的硬性限制,而不是效能下降——如果你的分類體系有四十個標籤,或你的提示詞夾帶一份長文件,那麼無論 Nimble 準確度多高,它都是錯的工具。而且 Nimble 是獨立為每個欄位評分,所以任何跨欄位的一致性規則——「若 A 為真,則 B 必須為假」——都必須存在於你的程式碼裡,而不是模型裡。

為什麼資料配方是更具可攜性的產物

這就是準確率表所忽略的、支持 Nimble 的論點。Bespoke 公開了策展流程,不只是權重。如果你的決策問題有固定分類體系,而且你能把規則寫下來,那麼對比式方法就是你可以用在自己的資料上、帶著自己的焦點事實,疊加在你偏好的任何基礎模型之上來執行的東西。9B LoRA 既是產品,也同樣是這套方法的展示。

Laya 的可攜性與眾不同且具互補性。由於它很小、能在 CPU 上執行,而且有 ONNX 與 MLX 移植版,Laya 是你能放進沒有 GPU、也沒有網路的行程裡的模型。在一項第三方瀏覽器代理基準測試中,Laya 在 50 項任務中完成了 0 項,並在 33 次嘗試中過早宣告完成——但基準測試作者指出,它是為判斷型工作而訓練的,例如客服工單、發票與代理軌跡審查,而非導航。請將該結果解讀為範圍聲明,而非評斷;這也與這兩個專案的框架一致:它們是針對特定決策類別的元件,而不是通用代理。

Laya 與 Nimble 皆非 OrcaRouter 上的託管模型。兩者都是你自己執行的權重,而本文任何內容都不應被解讀為我們提供它們的主張。路由產品之所以會被提起,與它在任何決策模型架構中會被提起的原因相同:決策模型只回應一次呼叫,而圍繞它的應用程式仍需要文字內容。一套使用 Nimble 來評分草稿是否合規,並用 Laya 來路由例外狀況的管線,仍然會需要生成式模型來撰寫草稿。將生成的那一半留在同一個 OpenAI 相容端點上——200+ 個模型,供應商標價以 0% 加價原樣傳遞,因此供應商降價當天即可生效,並可跨供應商自動容錯移轉——這意味著決策層可以更換,而不必更動生成層的合約。

判決,以及將改變它的實驗

如果你的分類體系固定且狹窄、輸入是英文且簡短、你有 GPU,而且你想要的不只是模型,還包括資料配方,那就選擇 Nimble。如果你需要多語言輸入、低於 40 毫秒的預算,或完全不需要 GPU 的流程,那就選擇 Laya——而且要從一開始就把微調納入成本考量,因為零樣本檢查點低於簡單基準,而且模型卡也是這麼寫的。

能為此事一錘定音的實驗,是在真實流量上做配對評估:相同的輸入、相同的選項集合、相同的信心閾值,並以人工標籤進行評估,且各自附上一張可靠性圖。Nimble 自家的文件警告,其機率並非正確率;而 Laya 的模型卡則回報,在重新擬合前的校準誤差為 0.466,因此那張圖才是真正能告訴你該把哪個模型部署到生產環境的產物。兩個專案都沒有發表過這種圖,也都沒有發表過對方的圖。在設定閾值之前,先用自己的資料把它建出來。

A generated two-column scoreboard comparing Laya and Nimble across backbone, languages, prompt budget, label agreement, latency and licence, with a footer reading "Nimble's 90.12% is agreement with its own curated labels; Laya figures per its model card."