前回のおさらい
この記事は ローカル AI エージェントは電気羊の夢を見るのか(環境構築) でカバーできなかった範囲の補足記事になる。前回の記事では、Ollama と LM Studio をインストールし、LM Studio を使って立てた API サーバを利用して mastra のサンプルコードを実行した。
今回は LM Studio ではなく Ollama を使ってサンプルコードを実行する方法を説明する。
Ollama を使う場合
公式ドキュメントには Ollama を使う場合は ollama-ai-provider-v2
を使う手順が紹介されている。
しかし、ollama-ai-provider-v2
を使うと Agent が Tool を使用しないという不具合がある。以下の Issue でも報告されているように、ツール呼び出し後にテキストを生成しないような挙動をする。
解決策は Issue で触れられているように @ai-sdk/openai-compatible
を代わりに使うことでこの問題は回避できる。
src/mastra/agents/weather-agent.ts
具体的には、前回の記事で lmstudio
を定義して使っていたところを ollma
という変数を定義し(変数名は任意)、
baseURL
に localhost
のポート番号 11434
を指定する。これは Ollama でサーバを立ち上げたときのデフォルトポート番号だ。もしポート番号を変更しているのであれば、自身の環境にあった番号に変更する。
そして、model
の指定で lmstudio
の代わりに ollama
を使い、引数にはモデル名を指定する。今回は gpt-oss
の 20b
モデルを使いたいので gpt-oss:20b
としている。モデル名は、ollama list
コマンドで確認できる。
動作確認
mastra を起動して適当なプロンプトを入力してみよう。

すると応答が返ってくるはずだ。また、右側の Model を確認すると ollama になっていることが確認できる。
まとめ
前回記事の補足として LM Studio ではなく Ollama を使って mastra のサンプルを動かすための書き方を紹介した。
前の記事では LM Studio を推奨したが、Ollama でもほとんどやることは代わらなかったので、 Ollama にアップロードされているモデルで十分な場合は Ollama でいいかもしれない。