※この記事はOpenClaw + Gemma4 e2bで書いています。ちょっと怪しい部分もあえて残しています。まぁ、このレベルは書けるということで。
LiteLLMとFreeモデル:OpenClawでの効率的なLLM利用術
LiteLLMを導入し、OpenRouter経由で利用可能なFreeモデルをOpenClawで賢く使おうと考えた際、実運用で直面した課題と、その解決策についてまとめます。
導入の背景と課題
LiteLLMを使ってFreeモデル(OpenRouter経由)を導入することで、コストを抑えつつ多様なモデルを試したいと考えました。しかし、実際にOpenClawで運用を試みたところ、Freeモデルが常にbusy状態になり、実用的な利用が難しいという問題に直面しました。
解決策:モデルの選択と切り替え戦略
この問題を解決するために、モデルごとに最適な動作環境を定義するというアプローチを取りました。
1. モデルごとの設定定義
LiteLLMの設定ファイル(/home/ubuntu/litellm/config.yaml)を用いて、利用するモデルに応じてバックアップモデルを設定しました。
| モデル名 | LiteLLMパラメータ | 備考 |
|---|---|---|
fast |
model: openrouter/google/gemma-4-26b-a4b-it:free |
OpenRouterのFreeモデルを試す |
fast-local |
model: ollama/gemma4-e2b-agent, api_base: http://localhost:11434 |
ローカルのOllamaモデルに切り替えるフェールオーバー先 |
smart |
model: openrouter/qwen/qwen3-coder:free |
Qwenモデルを試す |
smart-mid |
model: openrouter/nvidia/nemotron-3-super-120b-a12b:free |
より高性能なモデルを試す |
smart-local |
model: ollama/gemma4-e2b-agent, api_base: http://localhost:11434 |
ローカルのOllamaモデルに切り替えるフェールオーバー先 |
local |
model: ollama/gemma4-e2b-agent, api_base: http://localhost:11434 |
Ollamaのみを使用する |
2. フェールバックの仕組み
モデル選択の際に、もしOpenRouter経由のFreeモデルが利用できない場合や動作が不安定な場合に備えて、ローカルで動作するOllamaモデルへ自動的に切り替えるフェールバックの仕組みを導入しました。
litellm_settingsにおいて、fallbacksを設定することで、各モデルの実行に失敗した場合に代替モデルへ試行するように設定しました。
実運用上の考察
この戦略により、OpenRouterのFreeモデルの不安定さや利用制限を回避しつつ、ローカル環境で動作するGemmaモデルを利用する選択肢を確保できました。
結論として、 外部APIへの依存度を下げ、安定したローカルリソース(Ollama)を併用するハイブリッドなアプローチが、OpenClawのようなシステムで実用性を高める鍵となります。
これで、LiteLLMとFreeモデルに関する疑問にお答えできたかと思います。
人間のコメント(笑)
こんな感じでGemma4 e2bでもそれなりの文章は書けますが、微妙なニュアンスは伝わりにくいですね。この記事で書きたかったのはGemmma4 e2bだとやっぱり、コードを書いたりさせるとヨワヨワなので。そうはいっても課金モデルをOpenClawに使うのもなぁ。。。と思い、OpenRouterで無料で使えるモデルを寄せ集めて知能をブーストできないかと考えたのですが。。。甘かった。freeで出てるモデルは想像以上で利用制限がかかってて全然使わせてくれない。まぁ、LiteLLMをかませているので使えない場合はフェールオーバーしてローカルのOllama + Gemma4 e2bに落ちるので使えないことはないのですが、効果もなかったって話です。。。