はじめに
先日
という記事を書いたのですが、埋め込みモデルとかVLモデルとか複数モデルを使いたいなと思っていました。
LLaMA.cpp HTTP Serverは
> llama-server --fim-qwen-1.5b-default
のようにモデルを1つだけ指定して起動させるのが基本で、ググっても(もう死語…?)--portでポートを変えて複数起動してねとか、llama-swapが便利だよとかそんな内容しか出てきませんでした。
しかし、パラメータを色々いじってみようとREADMEを読み込んでいたところ
…あれ?本家で複数モデル使えるようになってるやん…
となった次第です。
2025/12/2のb7218で実装されてたみたいです
基本的にはREADMEにかかれている通りにやればOKですが、ちょっとハマったところもあったので記事にしました。
環境
- CPU
- 11世代 Core i5
- メモリ
- 16GB
- OS
- Windows 11 Pro 25H2(64bit)
- ソフトウェアバージョン
- Visual Studio Code: 1.107.1
- Continue: 1.2.11
- llama.cpp server: b7549
- Visual Studio Code: 1.107.1
やり方
本家通りの説明ですと、モデルを指定せず
> llama-server
で起動してください、となります。
でもこれだけだとなぜ複数モデルが選択可能になるのか分かりづらいため、仕組みを補足します。
> llama-server -hf Qwen/Qwen2.5-Coder-3B-Instruct-GGUF
のようにモデルを指定して起動すると、キャッシュディレクトリ(WindowsだとC:\Users\user_name\AppData\Local\llama.cpp)にモデルがダウンロードされます。
一度終了し別のモデルを指定して起動すると、そのモデルもキャッシュディレクトリにダウンロードされ、そこにモデルが蓄積されていきます。
その状態で今度はモデルを指定せず起動すると、蓄積されたモデルを選択できるようになる、という仕組みです。
http://localhost:8080にアクセスしてみると
のようにモデルが選択できるようになっていると思います。
モデルごとにパラメータを変える
> llama-server -ctx 8192 -n 1024 -np 2
のようにパラメータを指定して起動するとすべてのモデルがこのパラメータになってしまいます。
モデルごとにパラメータを変えたい場合は本家にも記載がある通り
version = 1
[*]
c = 4096
[Qwen/Qwen2.5-Coder-3B-Instruct-GGUF]
c = 2048
[LiquidAI/LFM2.5-1.2B-JP-GGUF:Q8_0]
c = 8192
のようなINIファイルを作成し
> llama-server --models-preset models.ini
のように起動してください。
上記例ではINIファイルをllama-server.exeと同じディレクトリに置いています
注意点(私がハマった点)ですが、セクション名に指定するモデル名は-hfで指定したのと同じ名前にしてください。
例えばQwen/Qwen2.5-Coder-3B-Instruct-GGUFは実際にはQ4_K_M量子化モデルがダウンロードされていますが、Qwen/Qwen2.5-Coder-3B-Instruct-GGUF:Q4_K_Mとは書きません。
間違ったモデルを書いてしまうと、モデル選択が
のようになってしまいます。
2つ目のモデルは[*]セクションのパラメータで起動したモデルです。
3つ目のモデルは使えません(いつまで経ってもロードが終わりません)。
おわりに
ルーターモード用のパラメータとして、最大いくつのモデルを並列で使用するかとかあるみたいなので、もう少し色々調べようと思います(勢いで記事書いてしまったのでw)。
補足
どっちに書こうか迷いましたが…
ルーターモードで起動しているLLaMA.cpp HTTP ServerにContinueからアクセスする場合は、providerをllama.cppからopenaiに変更してください。


