跳到正文
Hugging Face Blog·· 4 小時前精選AI 評分66

用 LFM3 構建專用多模態模型

Build specialized multimodal models with LFM3

AI 導讀

Liquid AI 發佈 LFM3 新一代模型系列,以共享骨幹涵蓋文字、視覺、音訊、全模態及決策模型。LFM3-1.7B 以少 35% 參數超越 LFM2.5-2.6B;文字模型的上下文窗口為 256K,所有模型均可在單張 GPU 微調。LFM3 全系列採開放權重,現已在 Hugging Face 提供。

推薦理由

LFM3 將文字、視覺、音訊與決策模型建基於同一骨幹,並支援單張 GPU 微調及端側部署,呈現小型模型按任務專門化的實作路徑。

正文 · 繁體中文

LFM3 是我們新一代的 Liquid Foundation Models (LFMs),旨在成為打造專用智能的起點。它將文字、視覺、音訊、全模態及決策模型整合到同一個共用骨幹網絡上,參數量均屬於 2B 級別。這表示你可以按所需模態選擇模型,在單張 GPU 上使用自己的數據進行微調,並部署到應用程式運行的環境中。

與上一代 LFM2 系列相比,LFM3 帶來四項主要改進:

  • 以更少參數實現更強能力:全新的三元混合架構和訓練方法,令 LFM3-1.7B 的表現超越 LFM2.5-2.6B,參數量則減少 35%。
  • 所有模態共用同一骨幹網絡:六款 2B 級模型(文字、視覺、音訊、全模態及決策)均以 LFM3-1.7B-Base 訓練而成,其中包括我們首款全模態模型,以及支援影片輸入的視覺模型。
  • 專為邊緣裝置打造:文字模型在 4-bit 精度下佔用約 1 GB;全新自家研發的視覺和音訊編碼器可加快處理速度,而文字模型的 256K 上下文視窗則讓 Agent 能在裝置上運行。
  • 專為客製化而設:每款模型都可在單張 GPU 上進行微調,讓你按自己的數據、術語和部署環境調整模型。

如何打造表現力更強的骨幹網絡

LFM2 證明,結合短卷積與注意力機制的混合架構,能在不犧牲質素的情況下於裝置上快速運行。為了讓 LFM3 更適合 Agent 應用場景,我們運用硬件迴路架構搜尋重新設計該架構,滿足這類場景對更高單位參數能力,以及長上下文快速推理的需求。搜尋範圍現已涵蓋 14 種裝置和後端組合,包括手機、Raspberry Pi 5、手提電腦、雲端 CPU、GPU,以及 Qualcomm Hexagon NPU。

lfm3-1.7b-architecture

LFM3-1.7B-Base 有 24 層,並作出四項主要改進:

  1. 三元混合層組合:包含 13 層門控短卷積、5 層採用 256-token 視窗的滑動視窗注意力(SWA),以及 6 層全域注意力。卷積核大小為 7,高於 LFM2 的 3。
  2. 按注意力頭門控的注意力:透過 sigmoid 門控調整每個注意力頭的輸出,讓沒有額外資訊可提供的注意力頭關閉。這有助於抑制會影響量化的激活值離羣點。
  3. 部分 RoPE:全域注意力層只旋轉每個注意力頭中頻率最高的一半,讓另一半不受距離影響,按內容進行匹配。SWA 層則保留完整 RoPE。
  4. 三明治正規化:每個區塊都會正規化其輸入和輸出,令激活值保持在合適的尺度。

長上下文下的效能提升尤其明顯。按參數量計,LFM3-1.7B 在各種邊緣裝置上處理短提示詞時,表現與 LFM2-1.2B 相當;上下文包含 8K 個 token 時,速度則快約 25%。LFM3-1.7B-Base 使用與 LFM2.5-8B-A1B 相同的 128K 詞彙表,並以 22T 個 token 進行預訓練。最後 3.5T 個 token 是使用精選數據進行的中期訓練階段,當中 Agent 軌跡和工具呼叫所佔比例較高,亦將上下文視窗擴展至 256K 個 token。

六款模型共用一個骨幹網絡

每款 LFM3 模型均由 LFM3-1.7B-Base 衍生。你無須運行一款大型通用模型,而是可以選擇符合輸入需求的模型、按需要自訂,並在裝置上運行。

lfm3-post-training

模型 輸入 輸出 建基於
LFM3-1.7B 文字 文字 LFM3-1.7B-Base
LFM3-VL-2B 文字、圖片、影片 文字 LFM3 骨幹網絡 + 視覺編碼器
LFM3-Audio-2B 文字、音訊 文字、語音 LFM3 骨幹網絡 + 音訊編碼器、音訊解碼器和 LiquidCodec
LFM3-Omni-2B 文字、圖片、影片、音訊 文字、語音 LFM3 主幹 + 視覺及音訊編碼器和音訊解碼器
d1-2B 文字、圖片、影片 經校準的答案 LFM3-VL-2B
d1-omni-2B 文字、圖片、影片、音訊 經校準的答案 LFM3-Omni-2B

視覺及音訊模型亦新增兩款自研編碼器:

  • 視覺編碼器:結合卷積和注意力機制,所需運算量比先前 LFM VL 模型採用的 SigLIP2 編碼器少 3 倍。我們這款有 164M 個參數的編碼器,準確度媲美 Qwen3.5-2B 的視覺編碼器,所需 FLOPs 則少 2.2 倍(兩者均以相同的 LFM2.5-230M 語言模型主幹進行測量)。處理影片時,它會將每對取樣影格嵌入一個時間切片,令時間序列長度減半。
  • 音訊編碼器和 LiquidCodec:音訊編碼器結合滑動視窗注意力和短卷積,並具備完整因果性,因此模型可在你説話期間進行預填充,首個 token 延遲低至 50 ms。我們全新的音訊 tokenizer LiquidCodec,可在 Apple M4 Max 的單一 CPU 執行緒上,以約 87 倍即時速度將生成的 token 轉換為語音,並支援串流解碼。

如何使用 LFM3 模型

每款模型均可在 transformers 中執行。以下程式碼片段摘自模型卡;模型卡亦列出各模型支援的其他推理引擎。

LFM3-1.7B

如果需要本機 Agent、工具呼叫、結構化輸出,或用作領域專用微調的基礎,可選用 LFM3-1.7B。它經過後訓練,可在 Hermes Agent、Pi 和 OpenClaw 等 Agent 執行框架中運作。它的表現勝過上一代 LFM2.5-2.6B,參數量少 35%;提升最大的是 Agent 任務:在 WebArena-Verified 上,它的分數為 38.42,而對手為 3.02;在瀏覽器和商業應用程式中的長程任務上,它甚至勝過 Qwen3.5-9B。詳情請參閲 LFM3-1.7B 模型卡。

如要執行 LFM3-1.7B,請安裝 transformers 的最新版本:

pip install -U transformers

然後載入並執行模型:

from transformers import pipeline

generator = pipeline(
    "text-generation",
    model="LiquidAI/LFM3-1.7B",
    trust_remote_code=True,
)

messages = [{"role": "user", "content": "What is C. elegans?"}]
output = generator(
    messages,
    do_sample=True,
    temperature=0.1,
    top_k=50,
    repetition_penalty=1.1,
    max_new_tokens=2048,
)
print(output[0]["generated_text"][-1]["content"])

如要設定本機 Agent,請參閲 Agent Harnesses 指南。

LFM3-VL-2B

如果需要在裝置端進行視覺理解,可選用 LFM3-VL-2B。它是首款可輸入影片的 LFM 視覺模型;它會逐步推理後再作答,並能找出物件及推理物件的擺放方式,為機械人技術奠定了良好基礎。與 LFM2.5-VL-3B 相比,它的參數較少(1.9B 對 3.1B),但在 62 項視覺基準測試中的平均分數由 57.6 提升至 71.4,媲美大六倍以上的 Gemma 4 12B。詳情請參閲 LFM3-VL-2B 模型卡。

如要執行 LFM3-VL-2B,請安裝 transformers>=5.21.0 及其視覺相依套件:

pip install "transformers>=5.21.0" torch torchvision pillow

然後載入並執行模型:

import torch
from transformers import AutoModelForImageTextToText, AutoProcessor

model_id = "LiquidAI/LFM3-VL-2B"

model = AutoModelForImageTextToText.from_pretrained(model_id, dtype=torch.bfloat16, device_map="auto", trust_remote_code=True)
processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)

messages = [
    {
        "role": "user",
        "content": [
            {"type": "image", "url": "https://placecats.com/300/200"},
            {"type": "text", "text": "Describe this image."},
        ],
    }
]

inputs = processor.apply_chat_template(
    messages,
    add_generation_prompt=True,
    tokenize=True,
    return_dict=True,
    return_tensors="pt",
).to(model.device)

with torch.inference_mode():
    output_ids = model.generate(
        **inputs,
        do_sample=True,
        temperature=0.1,
        top_k=50,
        repetition_penalty=1.1,
        max_new_tokens=16384,  # generate() needs an explicit limit; reasoning can be long
    )

generated_ids = output_ids[:, inputs["input_ids"].shape[1] :]
print(processor.batch_decode(generated_ids, skip_special_tokens=True)[0])

如需瞭解工具呼叫、工具搜尋,以及使用 llama.cpp 進行裝置端推理,請參閲 LFM3-VL-2B 模型卡。

LFM3-Audio-2B

如果需要在手提電腦或邊緣裝置上進行語音聊天、語音辨識、語音合成,或使用 18 種語言進行翻譯,可選用 LFM3-Audio-2B。它可接收文字或音訊輸入,並以文字、語音或兩者作答,亦可將語音請求轉換為工具呼叫。與 LFM2.5-Audio-1.5B 相比,它採用全新的自研音訊編碼器和語音編解碼器,語音質素更高(UTMOSv2 由 3.22 提升至 3.83),並新增音訊理解、通用音訊推理和工具呼叫功能。詳情請參閲 LFM3-Audio-2B 模型卡。

如要執行 LFM3-Audio-2B,請安裝 transformers>=5.20.2 及其音訊相依套件:

pip install "transformers>=5.20.2" torch accelerate librosa soundfile

直接從 Hugging Face Hub 載入模型和處理器:

import torch
import soundfile as sf

from transformers import AutoModelForMultimodalLM, AutoProcessor

model_id = "LiquidAI/LFM3-Audio-2B"
device = "cuda" if torch.cuda.is_available() else "cpu"
dtype = torch.bfloat16 if device == "cuda" else torch.float32

model = AutoModelForMultimodalLM.from_pretrained(
    model_id, dtype=dtype, device_map=device, trust_remote_code=True
).eval()
processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)
codec = processor.audio_tokenizer.to(device=device).eval()

然後用語音提問,並以文字和語音獲得回覆:

conversation = [
    {"role": "system", "content": "Respond with interleaved text and audio."},
    {"role": "user", "content": [{"type": "audio", "audio": "question.wav"}]},
    {"role": "assistant", "content": "<|mixed_start|>"},
]
inputs = processor.apply_chat_template(
    conversation,
    continue_final_message=True,
    tokenize=True,
    return_dict=True,
    return_tensors="pt",
).to(device)
with torch.no_grad():
    outputs = model.generate(
        **inputs,
        max_new_tokens=1024,
        audio_temperature=1.0,
        audio_top_k=128,
        audio_repetition_penalty=1.1,
        audio_repetition_window=4096,
        return_dict_in_generate=True,
    )

    text = processor.decode(
        outputs.sequences[0, inputs["input_ids"].shape[1]:],
        skip_special_tokens=True,
    )
    waveform = codec.decode(
        outputs.audio_codes[:1, :, :outputs.audio_lengths[0]]
    ).audio_values[0]  # 24 kHz
print(text)
sf.write("reply.wav", waveform.float().cpu().numpy(), 24_000)

請參閲LFM3-Audio-2B model card,瞭解即時語音辨識、語音合成、音訊理解和工具呼叫。

LFM3-Omni-2B

如要以單一裝置端模型取代獨立的 ASR 模型、視覺語言模型、LLM 和 TTS 模型,並讓模型觀看、聆聽及作出回應,可選用 LFM3-Omni-2B。它能以語音回答有關圖像的問題、同時觀看影片和聆聽音訊,並將看到和聽到的內容轉化為工具呼叫。這是我們首個全模態模型,可接收文字、視覺和音訊輸入,並輸出文字和語音;它亦保留 LFM3 獨立模型的核心功能,包括視覺問答、語音辨識、語音合成和指令遵循。與 LFM3-Audio-2B 一樣,它透過 LiquidCodec 輸出語音;LiquidCodec 可將生成的 token 轉化為語音,速度快於即時播放,因此模型生成語音回覆時,回覆亦會即時串流輸出。在視聽影片理解方面,它在 Daily-Omni、WorldSense 和 AV-SpeakerBench 的表現勝過參數量高達 10.7B 的模型,例如 Qwen2.5-Omni-7B。詳情請參閲LFM3-Omni-2B model card。

如要執行 LFM3-Omni-2B,請安裝 transformers>=5.20.2 及其視覺和音訊相依套件:

pip install "transformers>=5.20.2" torch torchvision torchcodec accelerate pillow librosa soundfile
import torch
import soundfile as sf

from transformers import AutoModelForMultimodalLM, AutoProcessor

model_id = "LiquidAI/LFM3-Omni-2B"
device = "cuda" if torch.cuda.is_available() else "cpu"
dtype = torch.bfloat16 if device == "cuda" else torch.float32

model = AutoModelForMultimodalLM.from_pretrained(
    model_id, dtype=dtype, device_map=device, trust_remote_code=True
).eval()
processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)
codec = processor.audio_tokenizer.to(device=device).eval()

然後用語音提問,詢問相片內容:

conversation = [
    {
        "role": "system",
        "content": "Answer questions about the provided image. Base every answer only on what can be seen. Respond with text.",
    },
    {
        "role": "user",
        "content": [
            {"type": "image", "image": "photo.jpg"},
            {"type": "audio", "audio": "question.wav"},
        ],
    },
]
inputs = processor.apply_chat_template(
    conversation,
    add_generation_prompt=True,
    tokenize=True,
    return_dict=True,
    return_tensors="pt",
).to(device)

with torch.no_grad():
    outputs = model.generate(**inputs, max_new_tokens=1024, generation_mode="text")

print(processor.decode(
    outputs.sequences[0, inputs["input_ids"].shape[1]:outputs.sequence_lengths[0]],
    skip_special_tokens=True,
))

請參閲LFM3-Omni-2B model card,瞭解語音輸出、連同音軌的影片,以及工具呼叫。

d1-2B and d1-omni-2B

如要快速作出結構化決策,而非生成文字,可選用 d1 模型。提供一個情境(例如支援服務單、發票、應用程式畫面、相片或語音備忘錄)和一系列問題,模型便會在單次前向傳播中回答所有問題,並為每個答案提供經校準的機率。除了是非題答案、選項和分數外,它們現在還能指出物件、讀取文件中的數值、以範圍估算數值,以及選出所有適用選項。詳情請參閲d1-2B和d1-omni-2B的 model card。

兩款 d1 模型的分別:

  • d1-2B:適用於文字、圖片和影片。它取代了d1-3B,參數量少三分之一,並在我們四項決策測試套件中的得分全部較高,例如在 ImajevBench 上得分為 75.5,對比 64.0。
  • d1-omni-2B:適用於包含音訊的輸入。如果你以語音而非文字提問,它幾乎能保持全部準確度。

如要執行 d1-2B,請安裝 transformers>=5.19 及其視覺相依套件:

pip install "transformers>=5.19" torch torchvision pillow

然後載入 d1-2B,讓它在單次處理中回答有關同一張支援服務單的多個問題:

import torch
from transformers import AutoModel

device = "cuda" if torch.cuda.is_available() else "mps" if torch.backends.mps.is_available() else "cpu"
dtype = torch.float32 if device == "cpu" else torch.bfloat16
model = AutoModel.from_pretrained("LiquidAI/d1-2B", trust_remote_code=True, dtype=dtype).to(device)

# Several named questions over one state, answered in one pass
questions = {
    "refund": {"type": "noul", "instructions": "Is the customer asking for a refund?"},  # yes/no: P(yes)
    "team": {"type": "choice", "instructions": "Which team should handle this?",
             "criteria": {"billing": "Charges, refunds, invoices", "shipping": "Delivery and parcels",
                          "technical": "App or site faults"}},
    "topics": {"type": "choice", "multiple": True, "instructions": "Which topics does the message raise?",
               "criteria": {"billing": "Payments and charges", "delivery": "Shipping and parcels",
                            "login": "Signing in to the account"}},
    "urgency": {"type": "score", "instructions": "How urgent is this ticket?", "criteria": ["low", "medium", "high"]},
}
out = model.system_one("I was charged twice and my parcel never arrived. Please refund one charge.", questions)
a = out["answers"]
urgency = a["urgency"]["legend"][str(int(a["urgency"]["score"]))]
print(round(a["refund"]["noul"], 2), a["team"]["choice"], a["topics"]["choices"], urgency)
# 1.0 billing ['billing', 'delivery'] medium

為求簡潔,我們只提供 d1-2B 的示例。音訊片段和語音提問示例請參閲d1-omni-2B model card。

為你的任務微調 LFM3

LFM3 專為專門化而設。頂尖模型雖然是強大的通用模型,但未必精通你的使用情境。LFM3 將更多能力集中在小巧快速的模型中,因此只需短時間微調,便能讓它成為精通你任務的可靠專家,並使用你的數據、術語和工具。由於模型體積小,你可以在應用程式運行的地方部署微調後的模型,從裝置、私有基礎設施到雲端皆可。

所有模型都可在單張 GPU 上微調;這些 notebook 會帶你完成文字、視覺、音訊和全模態模型的完整任務流程,從數據準備到評估。

模型 方法 任務 筆記簿
LFM3-1.7B SFT 從雜亂文件擷取結構化 JSON 在 Colab 中開啟
LFM3-1.7B DPO 根據檢索到的文件回答,否則拒絕回答 在 Colab 中開啟
LFM3-1.7B GRPO 在配備 108 種工具的手機應用程式中呼叫合適工具 在 Colab 中開啟
LFM3-1.7B CPT 從原始文字學習新語言(土耳其語) 在 Colab 中開啟
LFM3-VL-2B SFT 將收據照片轉換為 JSON 在 Colab 中開啟
LFM3-VL-2B GRPO 將方程式圖片轉錄為 LaTeX 在 Colab 中開啟
LFM3-Audio-2B SFT 將口述智能家居指令映射至函數呼叫 在 Colab 中開啟
LFM3-Audio-2B SFT 讓模型學會新的聲線 在 Colab 中開啟
LFM3-Omni-2B SFT 將口述智能家居指令映射至函數呼叫 在 Colab 中開啟
LFM3-Omni-2B SFT 回答有關醫學影像的口述問題 在 Colab 中開啟

範例:教 LFM3 採取行動

我們將 LFM3-VL-2B 調整為三款互補的機械人模型,分別用於協調、導航和操控。協調器透過工具呼叫操作機械臂:以指向方式定位物件,使用深度工具測量物件,呼叫動作規劃器,並在後續相機影像中檢查結果。導航器根據近期 RGB 觀測遵循路線描述,只用五個 token 預測空間目標和航點軌跡。操控 VLA 在單次前向傳遞中,將影像、語言和機械人狀態映射為每段八步的連續動作。VLA 在 15 種機械人平台上共同訓練,在四個 LIBERO 測試套件的平均成功率達 96.2%,在 RoboCasa-GR1 桌面任務的成功率則為 45.7%;使用 TensorRT FP16 時,它在 Jetson AGX Orin 上生成每段動作所需時間少於 50 ms。這些結果顯示,LFM3-VL-2B 是一款精巧的機械人技術基礎模型,涵蓋由高階規劃至低階控制,並能在嵌入式硬件上即時生成動作。

觀看這段示範影片,瞭解 LFM3-VL-2B 如何處理感知、導航和操控。

Video title

開始使用 LFM3

所有 LFM3 模型均採用開放權重,現已可在 Hugging Face 取得:

  • 下載:Hugging Face 上的 LFM3 系列,包括供你自行進行後訓練的 LFM3-1.7B-Base。
  • 微調:使用我們的微調筆記簿,按你的任務調整 LFM3。
  • 在你的執行框架中使用:參閲我們的指南,瞭解如何執行 OpenClaw、Hermes Agent 和 Pi 等本機代理程式。

期待看看你會打造出甚麼。

引用

如使用這項成果,請引用發佈網誌:

@article{liquidAI2026LFM3,
  author = {Liquid AI},
  title = {Introducing LFM3: Every Modality for Specialized Intelligence},
  journal = {Liquid AI Blog},
  year = {2026},
  note = {www.liquid.ai/blog/lfm3},
}

來源:Hugging Face Blog · huggingface.co