ローカル LLM を実行するためのライブラリです。GGUF を読み込み、チャット機能を簡単に実装できます。NPU(QNN)にも対応しており、NPU を使用した高速な推論も可能です。
プラットフォームを選び、最初のローカルチャットを動かしてみましょう。
ailia LLM の Python パッケージを PyPI からインストールします。
pip3 install ailia_llm
Python や git をまだインストールしていない方は、Python 環境のセットアップ(Windows / Mac / Linux) を先にご覧ください。
PyPI で見るailia-models から example.py をダウンロードして実行します。初回実行時に Gemma 4 E2B の GGUF ファイルをダウンロードし、チャット応答をストリーミング生成します。画像入力は example_vlm.py、音声入力は example_alm.py、Function Calling は example_tool_use.py、MTP(Multi-Token Prediction)は example_mtp.py を同じフォルダから取得してください。
wget https://raw.githubusercontent.com/ailia-ai/ailia-models/master/large_language_model/gemma4/example.py
python3 example.py
Windows の場合は python3 の代わりに python を使用してください。
ailia LLM はデスクトップとモバイル上でローカル LLM を動かします。必要メモリはモデルサイズと量子化で変動します。
自分のアプリケーションでチャットをストリーム生成する最小サンプル。
import ailia_llm
model = ailia_llm.AiliaLLM()
model.open("gemma-4-E2B-it-Q4_K_M.gguf")
messages = [{"role": "user", "content": "あなたの名前は何ですか?"}]
for delta in model.generate(messages):
print(delta, end="")
ailia LLM についてのよくある質問。
ailia LLM は llama.cpp と同じ GGUF 形式を読み込みます。Hugging Face のチェックポイントは llama.cpp 同梱の convert_hf_to_gguf.py で GGUF に変換するか、Hugging Face で配布されている変換済み GGUF をダウンロードして利用できます。
Llama / Gemma / Mistral / Qwen / Phi / DeepSeek など、llama.cpp が対応するアーキテクチャに準じます。互換性は llama.cpp の上流に追従します。
model.generate(messages) はモデルがトークンをデコードするたびに差分文字列を返すイテレータです。これを順に受け取ってバッファに足すか直接表示すれば、ストリーミング UX を実現できます。
メモリ使用量はおおむね GGUF ファイルサイズ + KV キャッシュ+中間テンソル分です。目安として Q4 量子化では 2B ≈ 2 GB、7B ≈ 5 GB、13B ≈ 9 GB になります。メモリが限られる端末では、より小さいモデルや高い量子化 (Q4 → Q3) を選んでください。
はい。ailia LLM は iOS / macOS で Metal、Windows で Vulkan を使用します (ailia SDK / Speech / Voice と異なり cuDNN は不要です)。GPU が無い環境では CPU フォールバックします。詳しくは Vulkan セットアップガイド を参照してください。
はい。対応する Android 端末と Windows on Arm 端末では、QNN バックエンドにより Hexagon NPU で推論できます。GGUF を PC 上で SoC 専用の QNN Model に変換して端末で実行します。Gemma 4 E2B / E4B のテキスト・画像・音声入力に対応していますが、利用できるモデルは SoC によって異なります。詳しくは ailia LLM NPU(QNN)ガイド を参照してください。
はい。画像入力を使う VLM と音声入力を使う ALM に対応しています。対応モデルとマルチモーダルプロジェクタを読み込み、ailiaLLMSetMultimodalPrompt または ailiaLLMSetPromptJson で画像・音声を渡します。モデルごとの対応状況は ailiaLLMGetMultimodalCapabilities で確認できます。詳しくは マルチモーダル ガイド を参照してください。
はい。ailia LLM 1.5.0 以降では、Gemma 4 の Function Calling を利用できます。ailiaLLMSetTools でツールを定義し、ailiaLLMSetPromptJson で JSON 履歴を渡します。生成後は ailiaLLMGetResponseJson で tool_calls を含む応答を取得し、実行結果を tool ロールのメッセージとして返します。詳しくは ailia LLM Tool Use ガイド を参照してください。
ailia Tech Blog のモデル解説・リリースノート・チュートリアルです。