powered by TechFeed
表示モード
主要ニュース

Raspberry Pi 5でも動く293MBのLLM — Liquid AIの230Mモデルが800Mパラメータ競合を命令追従で上回る

6月28日、MarkTechPostが「Liquid AI Ships LFM2.5-230M with llama.cpp, MLX, vLLM, SGLang, and ONNX Support for On-Device Inference」と題した記事を公開した。Liquid AIが公開した230Mパラメータのオンデバイス向け小型モデル「LFM2.5-230M」について詳しく紹介されている。

6月28日、MarkTechPostが「Liquid AI Ships LFM2.5-230M with llama.cpp, MLX, vLLM, SGLang, and ONNX Support for On-Device Inference」と題した記事を公開した。Liquid AIが公開した230Mパラメータのオンデバイス向け小型モデル「LFM2.5-230M」について詳しく紹介されている。


llama.cpp・MLX対応、293MBで動くエッジAIモデル

Liquid AIがLFM2.5-230Mをリリースした。同社がこれまでに出したモデルの中で最小のものだ。Hugging Faceでベースと指示チューニング済みの両チェックポイントがオープンウェイトとして公開されている。

このモデルが刺さるポイントは一点に絞られる。4ビット量子化で293〜375MBのメモリフットプリントに収まり、llama.cpp・MLX・vLLM・SGLang・ONNXのすべてでday-oneサポートが付いていることだ。エッジ環境でLLMを動かそうとしているエンジニアにとって、推論環境の選択肢が初日から揃っているのは珍しい。

実測のスループットはGalaxy S25 Ultraで213トークン/秒、Raspberry Pi 5で42トークン/秒。Raspberry Pi 5での動作確認が取れているのは、組み込み系での利用を本気で想定していることの表れだ。


アーキテクチャ:GQAとLIV畳み込みのハイブリッド

LFM2.5-230MはLFM2アーキテクチャをベースとした230Mパラメータのテキストオンリーモデルだ。14層構成で、うち8層が「ダブルゲートLIV畳み込みブロック」、残り6層がグループクエリアテンション(GQA) ブロックというハイブリッド構成になっている。

LIV畳み込みブロックはLiquid AIが提唱する独自の畳み込み層で、Transformerのself-attentionに代わる状態空間的な処理を担う。GQAとの組み合わせにより、アテンションのコストを抑えながらシーケンス依存関係を捉えるのがこのレイヤー構成の狙いだ。CPU推論の高速化を意識した設計でもある。

コンテキスト長は32,768トークン、語彙サイズは65,536。対応言語は英語・中国語・アラビア語・日本語を含む10言語。知識のカットオフは2024年半ばである。


ベンチマーク:230Mが800Mを上回る場面

Liquid AIが強調するのは命令追従と構造化データ抽出の性能だ。

モデル パラメータ数 IFEval IFBench CaseReportBench MMLU-Pro
LFM2.5-230M 230M 71.71 38.40 22.51 20.25
LFM2.5-350M 350M 76.96 40.69 32.45 20.01
Granite 4.0-H-350M 350M 61.27 17.22 12.44 13.14
Qwen3.5-0.8B (Instruct) 800M ※ 59.94 22.87 13.83 37.42
Gemma 3 1B IT 1B 63.49 20.33 2.28 14.04

※ Qwen3.5-0.8Bの「0.8B」は800Mパラメータを指す。タイトルで言及している「800Mパラメータ競合」はこのモデルを指している。

命令追従を測るIFEvalでは、800MパラメータのQwen3.5-0.8B(59.94)や1BのGemma 3 1B IT(63.49)を上回る71.71を記録している。

一方で苦手な領域もLiquid AI自身が明言している。広範な知識を問うMMlu-Proは20.25で、Qwen3.5-0.8Bの37.42に大きく及ばない。数学・コード生成・創作系のワークロードには推奨しないと明記されている。


ツールコールの実装パターン

LFM2.5はfunction callingを4ステップで処理する。システムプロンプトにツールをJSONで定義し、モデルが専用トークン間にPython風の関数呼び出しを生成する方式だ。

<|im_start|>system
List of tools: [{"name": "get_candidate_status",
  "parameters": {"candidate_id": {"type": "string"}}}]<|im_end|>
<|im_start|>user
What is the current status of candidate ID 12345?<|im_end|>
<|im_start|>assistant
<|tool_call_start|>[get_candidate_status(candidate_id="12345")]<|tool_call_end|>Checking the current status of candidate ID 12345.<|im_end|>

<|tool_call_start|><|tool_call_end|>の間にPythonリスト形式で呼び出しが出力される。JSON形式での出力にも対応しており、システムプロンプトで切り替えられる。


Transformersでの最小実装

Transformers 5.0.0以上が必要な点には注意が必要だ。2026年6月時点でHugging FaceのTransformersの最新安定版がこの要件に相当するが、既存環境で旧バージョンを使用している場合はアップグレードが前提となる。推奨設定はtemperature 0.1、top_k 50、repetition_penalty 1.05。do_sample=Trueが必須なのも注意点だ。

from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "LiquidAI/LFM2.5-230M"
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    device_map="auto",
    dtype="bfloat16",
)
tokenizer = AutoTokenizer.from_pretrained(model_id)

inputs = tokenizer.apply_chat_template(
    [{"role": "user", "content": "What is C. elegans?"}],
    add_generation_prompt=True,
    tokenize=True,
    return_dict=True,
    return_tensors="pt",
).to(model.device)

output = model.generate(
    **inputs,
    do_sample=True,
    temperature=0.1,
    top_k=50,
    repetition_penalty=1.05,
    max_new_tokens=512,
)
print(tokenizer.decode(output[0][inputs["input_ids"].shape[-1]:], skip_special_tokens=True))

ファインチューニング用のレシピも公開されており、SFT・DPO・GRPOをLoRAで実行するColabノートブックがLiquid AIのドキュメントから入手できる。


実機デプロイの実績:Unitree G1ロボット

ベンチマーク外の動作実績として、Liquid AIはUnitree G1ヒューマノイドロボットへの搭載を報告している。ロボット搭載のNVIDIA Jetson Orin上で完結動作させ、自然言語指示をNVIDIAのSONICフレームワークの低レベルスキル呼び出しに変換するスキル選択レイヤーとして機能させた。

SONICはNVIDIAが提供するロボティクス向けフレームワークで、高レベルの言語指示を具体的なモーションスキルへとマッピングする役割を担う。LFM2.5-230Mはそのスキル選択の判断層として組み込まれている。


訓練の概要

事前学習は19兆トークンで実施され、32Kコンテキスト拡張フェーズを含む。ポストトレーニングは3段階構成で、①大きなLFM2.5-350Mからの蒸留を含む教師ありファインチューニング、②直接選好最適化(DPO)、③マルチドメイン強化学習の順に実行される。230Mの小型モデルがより大きなモデルに競合できている背景には、この蒸留ステップがある。


詳細はLiquid AI Ships LFM2.5-230M with llama.cpp, MLX, vLLM, SGLang, and ONNX Support for On-Device Inferenceを参照していただきたい。