RustによるシンプルなLLM(Large Language Model)推論ランナーです。llama.cppのRustバインディングを使用しており、GGUF形式のモデルをサポートしています。
- Rust (Cargo)
curlまたはwget
このプロジェクトでは、GGUF形式のLLMモデルが必要です。付属のスクリプトを使用して、いくつかの推奨モデルを簡単にダウンロードできます。
まず、スクリプトに実行権限を与えます。
chmod +x download_model.sh次に、モデル名を指定してスクリプトを実行します。
Gemma 2 2B (推奨): バランスの良い性能と日本語能力
./download_model.sh gemma2bQwen 2.5 3B: 高い日本語性能
./download_model.sh qwen3bTinyLlama 1.1B: 非常に軽量
./download_model.sh tinyllamacargo build --releasecargo run コマンドを使用して直接実行するか、ビルドしたバイナリを実行します。
cargo run --release -- --model-path <モデルへのパス> --prompt "<プロンプト>"ダウンロードしたGemma 2 2Bモデルを使って実行する例です。
CPUのみで実行:
cargo run --release -- \
--model-path ./models/gemma-2-2b-it-Q4_K_M.gguf \
--prompt "Rustプログラミング言語の利点は何ですか?"GPUオフロードを使用(例: 全レイヤー):
cargo run --release -- \
--model-path ./models/gemma-2-2b-it-Q4_K_M.gguf \
--prompt "Hello, world!" \
--n-gpu-layers 99| オプション | 短縮形 | 説明 | デフォルト値 |
|---|---|---|---|
--model-path |
-m |
必須: GGUFモデルファイルへのパス | - |
--prompt |
必須: 生成を開始するためのプロンプト | - | |
--max-tokens |
生成する最大トークン数 | 256 | |
--n-gpu-layers |
GPUにオフロードするレイヤー数 | 0 |
利用可能なすべてのオプションを確認するには、--help フラグを使用します。
cargo run -- --help