跳到主要內容
maxstudioNews
產品Hugging Face Blog約 7 分鐘

Liquid AI 推出 d1 系列多模態開源決策模型,專為邊緣裝置打造

Liquid AI 今日發布兩款開源決策模型 d1-3B 和 d1-omni-600M,它們基於 Liquid Foundation Models (LFMs) 開發,能快速提供結構化決策。這些模型支援多模態輸入,包含文字、圖像甚至音訊,並在邊緣裝置上展現出色的推論速度與效能,超越同級模型。

Liquid AI 推出 d1 系列多模態開源決策模型,專為邊緣裝置打造
圖片來源:Hugging Face Blog

今天,我們發布了 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 中運行演示。

我們期待看到您將創造出什麼。

Share

覺得值得一看?分享給朋友。

以上為 AI 自動翻譯導讀。原文版權歸 Hugging Face Blog 所有, 建議透過「閱讀原文」前往原始網站,以取得最完整資訊並支持原作者。

Newsletter

不用每天追,AI 重點每週寄給你

43 個來源、每 2 小時更新,太多看不完。電子報每週挑最值得看的幾則,附上 Max 的看法。

每週一封。Email 只用來寄電子報,每封信都能一鍵退訂。