Liquid AI 发布开源 d1 决策模型 d1-3B 与 d1-omni-600M,支持文本、图像和音频输入
Multimodal open d1 decision models for the edge
Liquid AI 在 Hugging Face 发布开源 d1 决策模型 d1-3B 和实验性 d1-omni-600M。
今天,我们在 d1 决策模型家族中发布两款开放的决策模型:d1-3B 和 d1-omni-600M(实验性)。
- Decision Index 0.2.1 上 10B 以下最佳决策模型:d1-3B 得分 48.57,领先所有 4B 和 9B 模型,也领先 Decider 35B-A3B(47.11)。
- 多模态:d1-3B 支持文本和图像,而 d1-omni-600M 支持文本和图像、或文本和音频
- 快速:d1-3B 在 NVIDIA Jetson AGX Thor 上 16 ms 回答一个问题,在 Jetson AGX Orin 上 26 ms,在 Jetson Orin Nano 上 50 ms
我们如何构建面向边缘的决策模型
这些开放的 d1 决策模型构建于我们的 Liquid Foundation Models(LFMs)之上。与我们的生成式模型不同,决策模型不生成 token,而是在单次前向传播中给出答案。
d1-3B 和 d1-omni-600M 从两个非常不同的骨干模型训练而来:
- d1-3B 从 LFM2.5-VL-3B 训练而来,这是我们最新的 VLM,属于 decoder-only 架构。它接受文本和图像作为输入。
- 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-omni-600M | d1-3B | Decider 2B | Decider 4B |
|---|---|---|---|---|
| SQuAD 2.0 | 74.0 | 83.3 | 67.7 | 76.0 |
| Civil Comments | 95.8 | 93.3 | 93.6 | 92.8 |
| MASSIVE intent | 86.1 | 86.9 | 81.1 | 88.3 |
| PubMedQA | 61.3 | 68.3 | 65.7 | 63.3 |
| BoolQ | 77.7 | 86.3 | 87.3 | 89.0 |
| XNLI | 74.7 | 85.6 | 85.0 | 88.6 |
| PAWS-X | 79.5 | 76.4 | 59.5 | 69.8 |
| 平均 | 78.4 | 82.9 | 77.1 | 81.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 上对 d1-3B 在 NVIDIA 平台上进行了评估。由于 d1-omni-600M 是早期研究发布版,我们在本次发布中不报告其任何速度数据。
边缘推理。d1-3B 在所有被测设备上回答单个问题的时间均低于 50 ms。三个问题仅需 1.3 倍的时间,其中 AGX Thor 从 16 ms 增至 20 ms。
| 一个问题 | 3 个问题 | 3.4K-token 状态 | 384px 图像 | 64 个状态,打包 | |
|---|---|---|---|---|---|
| Apple M5 Pro | 30 ms | 41 ms | 640 ms | 62 ms | 78 / s |
| Jetson AGX Thor | 16 ms | 20 ms | 220 ms | 35 ms | 262 / s |
| Jetson AGX Orin 64 GB | 26 ms | 35 ms | 560 ms | 83 ms | 110 / s |
| Jetson Orin Nano | 50 ms | 73 ms | 1,640 ms | 202 ms | 38 / s |
GPU 推理。在 GPU 上,d1-3B 在两个平台上回答一个问题的时间均低于 10 ms,处理一张 384px 图像的时间低于 18 ms。
| 一个问题 | 3 个问题 | 3.4K-token 状态 | 384px 图像 | 64 个状态,打包 | |
|---|---|---|---|---|---|
| NVIDIA RTX 4090 | 8 ms | 21 ms | 102 ms | 17 ms | 475 / s |
| AMD MI325X | 9 ms | 14 ms | 44 ms | 18 ms | 1,106 / s |
如何使用开放的 d1 决策模型
当你需要快速、结构化的决策(包括多模态输入)时,请选择 d1 决策模型。d1-3B 在其规模下提供最高的决策质量,而 d1-omni-600M 则适合对占用空间有要求的场景。
安装依赖(需要 transformers>=5.14):
pip install "transformers>=5.14" torch torchvision pillow
这些模型自带代码,请使用 trust_remote_code=True 加载:
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)
# Several named questions over one text state, answered in one pass
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))
# An image as the whole state
url = "http://images.cocodataset.org/val2017/000000039769.jpg" # two cats on a sofa
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]))
# Many requests, packed together with no padding
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 中运行演示。
我们迫不及待想看到你的作品。
引用
如果你使用了本工作,请引用发布博客:
@article{liquidAI2026opend1,
author = {Liquid AI},
title = {Open d1: Edge decision models for text, vision, and audio},
journal = {Liquid AI Blog},
year = {2026},
note = {www.liquid.ai/blog/open-d1},
}
来源:Hugging Face Blog · huggingface.co