Ollama
Ollama で Mattermost の AI ボットを作る
LangBot で Ollama を使った Mattermost の AI ボットを動かす手順:モデル設定、ボットの認証情報、ネットワーク、テスト、トラブルシューティング。
このレシピでは Ollama のモデルを Mattermost のボットにつなぎます。LangBot が Mattermost のメッセージを受け取り、パイプラインで処理して返信するので、プラットフォーム連携のコードは不要です。
Ollama でオープンモデルをローカル実行し、LangBot の内蔵エージェントから提供します。会話データは手元のマシンから出ません。
必要なもの
- 稼働中の LangBot:LangBot Cloud(サーバー不要)、または Docker や
uvx langbotによるセルフホスト。 - LangBot から呼び出せる Ollama のアカウントまたはサーバー。
- Mattermost の ボットアカウント(ロール
Member)とアクセストークン、Mattermost サーバーの URL。
ネットワーク
LangBot から Mattermost サーバーに到達できれば十分で、Mattermost から LangBot への接続は不要です。
1. Ollama のモデルを追加する
- Ollama をインストールしてモデルを取得します(
ollama pullにモデル名)。 - LangBot の モデル で LLM モデルを追加し、プロバイダーに Ollama、リクエスト URL に Ollama サーバー(既定ポート
11434)を指定します。 - LangBot が Docker で動いている場合、
localhostはコンテナ自身を指すため、ホストのアドレス(例:host.docker.internal)を使います。
2. パイプラインを作成する
LangBot WebUI の パイプライン でパイプラインを作成(または既定のものを編集)し、AI を次のように設定します。
| 項目 | 設定値 |
|---|---|
| ランナー | Local Agent(内蔵エージェント) |
| モデル | 追加したモデル。予備モデルも指定できます。 |
| プロンプト | ボットの役割、口調、してはいけないこと。 |
| ナレッジベース | 任意。ナレッジベースを付けると資料に基づいて回答します。 |
3. Mattermost のボットを作成する
- Mattermost でボットアカウントを作成し(DM を使う場合は
post:all)、一度しか表示されないトークンをコピーします。 - Mattermost アダプターでボットを作成し、サーバーアドレスとトークンを入力してパイプラインを紐付けます。
4. 紐付けてテストする
ボットを開いて作成したパイプラインを選び、保存してボットが有効になっていることを確認します。
ボットに DM を送るか、参加しているチャンネルでメンションします。
トラブルシューティング
- 小さなローカルモデルはツール呼び出しが苦手な場合があります。関数呼び出しに対応しないモデルでは ツール使用 をオフにします。
- 管理者向け機能には対応していないため、ボットのロールは
Memberのままにします。 - パイプラインや AI 側がストリーミングに対応しない場合は、ボットのストリーミングを無効にします。
- WebUI の モニタリング に、すべてのメッセージ、パイプラインの実行、エラーが記録されます。
よくある質問
Mattermost には公開 IP のあるサーバーが必要ですか?
いいえ。LangBot から Mattermost サーバーに到達できれば十分で、Mattermost から LangBot への接続は不要です。
Mattermost のボットはストリーミング返信に対応していますか?
はい。ボットでストリーミングを有効にし、AI 側もストリーミングに対応している必要があります。詳しくはプラットフォーム機能一覧をご覧ください。
同じ Ollama の設定を他のプラットフォームでも使えますか?
はい。1 つのパイプラインを複数のボットに紐付けられるので、同じ設定で複数のプラットフォームに同時に応答できます。
関連ガイド
- Mattermost の詳しい設定ガイド
- モデルの設定
- Mattermost で使える他の AI:Dify · n8n · Coze · Langflow · DeepSeek
- Ollama を他のプラットフォームで使う:Telegram · Discord · Slack · Lark(Feishu) · DingTalk · WeCom(社内アプリ)
