今天,我們發布了 d1 決策模型家族中的兩款開源決策模型:d1-3B 和 d1-omni-600M(實驗性版本)。
d1-3B 在 Decision Index 0.2.1 上,是 10B 以下最佳的決策模型,得分為 48.57,領先所有 4B 和 9B 模型,也超越 Decider 35B-A3B(47.11)。它支援文字和圖像的多模態輸入,而 d1-omni-600M 則支援文字與圖像,或文字與音訊。
Liquid AI 今日發布兩款開源決策模型 d1-3B 和 d1-omni-600M,它們基於 Liquid Foundation Models (LFMs) 開發,能快速提供結構化決策。這些模型支援多模態輸入,包含文字、圖像甚至音訊,並在邊緣裝置上展現出色的推論速度與效能,超越同級模型。

今天,我們發布了 d1 決策模型家族中的兩款開源決策模型:d1-3B 和 d1-omni-600M(實驗性版本)。
d1-3B 在 Decision Index 0.2.1 上,是 10B 以下最佳的決策模型,得分為 48.57,領先所有 4B 和 9B 模型,也超越 Decider 35B-A3B(47.11)。它支援文字和圖像的多模態輸入,而 d1-omni-600M 則支援文字與圖像,或文字與音訊。
d1-3B 速度飛快,在 NVIDIA Jetson AGX Thor 上回答一個問題僅需 16 毫秒,在 Jetson AGX Orin 上為 26 毫秒,在 Jetson Orin Nano 上則為 50 毫秒。
我們如何為邊緣裝置打造決策模型
這些開源的 d1 決策模型是基於我們的 Liquid Foundation Models (LFMs) 建構的。與我們的生成式模型不同,決策模型不產生 token,而是在單次前向傳播中直接給出答案。
d1-3B 和 d1-omni-600M 是從兩個截然不同的骨幹模型訓練而來。d1-3B 是從 LFM2.5-VL-3B 訓練而來,這是我們最新的視覺語言模型 (VLM),它是一個僅有解碼器的模型,接受文字和圖像作為輸入。
d1-omni-600M 則是由 LFM2.5-Encoder-350M 訓練而成,這是一個雙向編碼器。它增加了視覺和音訊編碼器,以處理所有三種模態,接受文字與圖像,或文字與音訊作為輸入。這個模型目前處於早期研究發布階段,仍在進一步開發中。
基準測試結果
我們在七個公開資料集上對 d1-3B 和 d1-omni-600M 進行了基準測試,這些資料集涵蓋閱讀理解、毒性檢測、意圖分類、醫療問答和跨語言理解。d1-3B 取得了 82.9 的平均分數,是表格中最高的,並超越了 Decider 4B。
d1-omni-600M 得分為 78.4,以僅四分之一的參數量超越了 Decider 2B(77.1)。我們驗證了 d1-3B 在標準視覺基準測試中保留了其 LFM2.5-VL-3B 骨幹的視覺能力,並且 d1-omni-600M 能夠處理所有三種模態。
我們沒有報告任何視覺或音訊基準測試結果,因為 Decision Index v0.3 僅包含私有視覺分割,且音訊決策基準測試目前仍是一個開放問題。
速度
我們與 NVIDIA 合作,在 NVIDIA GeForce RTX 4090、NVIDIA Jetson AGX Thor、Jetson AGX Orin 64 GB 和 Jetson Orin Nano 等 NVIDIA 平台上評估了 d1-3B。由於 d1-omni-600M 是一個早期研究版本,我們在此次發布中不報告其速度數據。
邊緣推論方面,d1-3B 在每個測量裝置上回答單個問題的時間都不到 50 毫秒。回答三個問題所需的時間僅為一個問題的 1.3 倍,其中 AGX Thor 從 16 毫秒增加到 20 毫秒。
在 GPU 推論方面,d1-3B 在兩個平台上回答一個問題的時間都不到 10 毫秒,處理一張 384 像素圖像的時間不到 18 毫秒。
如何使用開源 d1 決策模型
當您需要快速、結構化的決策,包括多模態輸入時,請考慮使用 d1 決策模型。d1-3B 在其尺寸下提供最高的決策品質,而 d1-omni-600M 則適用於對佔用空間有嚴格要求的場景。
安裝依賴項(需要 transformers>=5.14):pip install "transformers>=5.14" torch torchvision pillow。這些模型附帶自己的程式碼,因此請使用 trust_remote_code=True 載入它。
```python
import io
import urllib.request
import torch
from PIL import Image
from transformers import AutoModel
device = "cuda" if torch.cuda.is_available() else "mps" if torch.backends.mps.is_available() else "cpu"
model = AutoModel.from_pretrained("LiquidAI/d1-3B", trust_remote_code=True,
dtype=torch.float32 if device == "cpu" else torch.bfloat16).to(device)
questions = {
"refund": {"type": "noul", "instructions": "Is the customer asking for a refund?"},
"team": {"type": "choice", "instructions": "Which team should handle this?",
"criteria": {"billing": "Charges, refunds, invoices", "technical": "App or site faults",
"fraud": "Suspected unauthorised use"}},
"urgency": {"type": "score", "instructions": "How urgent is this?",
"criteria": ["Can wait", "Today", "Blocking the customer now"]},
}
print(model.system_one("I was charged twice this month, please refund one of them.", questions))
url = "http://images.cocodataset.org/val2017/000000039769.jpg" # 沙發上的兩隻貓
photo = Image.open(io.BytesIO(urllib.request.urlopen(url).read()))
print(model.system_one(None, {"cats": {"type": "choice", "instructions": "How many cats are there?",
"criteria": {"one": "One", "two": "Two", "more": "Three or more"}}},
images=[photo]))
tickets = ["Where is my parcel? It was due Monday.", "The app crashes when I open settings."]
print(model.system_one_batch([(t, {"team": questions["team"]}) for t in tickets]))
```
為求簡潔,我們僅包含 d1-3B 的範例。有關如何運行 d1-omni-600M 的說明,請參閱其模型卡。
開始使用開源 d1 決策模型
兩款決策模型均為開源權重,並已於今日在 Hugging Face 上提供:
下載:Hugging Face 上的 d1-3B 和 d1-omni-600M。
試用:在我們的 System One Arcade Hugging Face Space 中運行演示。
我們期待看到您將創造出什麼。
覺得值得一看?分享給朋友。
以上為 AI 自動翻譯導讀。原文版權歸 Hugging Face Blog 所有, 建議透過「閱讀原文」前往原始網站,以取得最完整資訊並支持原作者。
43 個來源、每 2 小時更新,太多看不完。電子報每週挑最值得看的幾則,附上 Max 的看法。