ローカルLLM

HOME > ローカルLLM

ローカルLLM:記事リスト

ローカルLLMのカテゴリーには以下の記事がリストされています。

OllamaのAPIをNode.jsから呼び出す方法|JavaScript・TypeScriptでローカルLLMをLinuxサーバーのWebアプリに組み込む手順

「PythonでOllamaを呼び出す記事は多いが、JavaScriptやTypeScriptからの実装例が見つからない」
「Node.jsで社内向けWebアプリを作っている。バックエンドにOllamaを組み込む具体的な手順が知りたい」

そんな悩みを抱えるLinuxサーバー管理者・Webエンジニアは多いはずです。この記事では、Node.js 18以降で標準搭載されたfetchAPIを使ってOllamaのREST APIを呼び出し、TypeScriptで型安全なクライアントを実装する手順を解説します。
さらにExpress.jsのルートハンドラへの組み込み方と、ストリーミングレスポンスのリアルタイム受信まで、Ubuntu Server上で動作するコードとともに確認します。

この記事のポイント

・Node.js 18以降の標準fetchでOllamaのREST APIを追加パッケージなしで呼び出せる
・TypeScriptの型定義でOllamaのリクエスト・レスポンスを型安全に扱う実装手順
・stream: trueとReadableStreamを組み合わせてLLMのリアルタイム出力を受け取る方法
・Express.jsのPOSTルートにOllamaを組み込み、WebアプリのAPIエンドポイントとして公開する


OllamaのAPIをNode.jsから呼び出す方法|JavaScript・TypeScriptでローカルLLMをLinuxサーバーのWebアプリに組み込む手順

続きを読む "OllamaのAPIをNode.jsから呼び出す方法|JavaScript・TypeScriptでローカルLLMをLinuxサーバーのWebアプリに組み込む手順"

OllamaをWatchdogスクリプトで自動復旧させる方法|bashとcronで異常検知・自動再起動・アラート通知を実装する手順

「Ollamaを本番サーバーで動かしているが、夜間に止まっていることが数回あった」
「systemdのRestart=alwaysで再起動はされるが、プロセスは生きているのにAPIが応答しない状態で止まることがある」

そんな経験を持つインフラ担当者は少なくない。systemdやDockerのrestartポリシーはプロセスの生死を管理できるが、「プロセスは稼働しているがAPIが応答しない」という半死状態には対応できない。
この記事では、OllamaのAPI応答を直接確認するWatchdogスクリプトをbashで実装し、cronで定期実行する手順を解説する。再起動後の確認・Slackウェブフック通知・多段エスカレーションまで含めた実践的な構成だ。Ubuntu ServerへのローカルLLM構築が完了している前提で進める。

この記事のポイント

・curl --max-timeでAPIタイムアウトを検出し、プロセス死活だけでなく応答不能状態も復旧する
・systemctl restart / docker restartを自動判定付きで実行し、復旧確認まで自動で行う
・Slackウェブフックとlogrotateの二重設定で24時間無人運用に対応する
・再起動回数を記録してフラッピング検出と管理者エスカレーションを実装する


OllamaをWatchdogスクリプトで自動復旧させる方法|bashとcronで異常検知・自動再起動・アラート通知を実装する手順

続きを読む "OllamaをWatchdogスクリプトで自動復旧させる方法|bashとcronで異常検知・自動再起動・アラート通知を実装する手順"

OllamaのログをGrafana Lokiで収集・監視する方法|PromtailでAIサーバーの稼働状況を可視化する手順

「Ollamaサーバーでエラーが起きているが、journalctlだけでは複数台のログを追いきれない…」
「Grafanaのダッシュボードでメトリクスとログをまとめてチェックできたら運用が楽になるのに…」

そんな悩みを抱えるLinuxサーバー管理者は多い。Ollamaはsystemdサービスとして稼働しログをjournaldに書き出すが、エラーパターンの絞り込みや複数サーバーにまたがったログ集約には専用ツールが必要になる。この記事では、GrafanaのログストレージであるLokiと、ログ収集エージェントのPromtailをUbuntu Serverに導入し、Ollamaのsystemdログをリアルタイムで収集・可視化する手順を解説する。Prometheusのメトリクス監視と組み合わせれば、Ollamaサーバーの運用監視体制が整う。

この記事のポイント

・GrafanaとLokiはDocker Composeで起動し、Promtailはapt経由でUbuntuホストに直接インストールする
・Promtailのjournalスクレイプ設定に`ollama.service`のrelabel_configsを追加することでOllamaログだけを選別して転送できる
・LogQLの`{job="ollama"} |= "error"`構文でエラーログをリアルタイムに絞り込める
・Promtail接続エラーの典型原因はLokiのURL設定ミスとjournaldへの読み取り権限不足


OllamaのログをGrafana Lokiで収集・監視する方法|PromtailでAIサーバーの稼働状況を可視化する手順

続きを読む "OllamaのログをGrafana Lokiで収集・監視する方法|PromtailでAIサーバーの稼働状況を可視化する手順"

OllamaをLinuxサーバーごと移行する方法|モデル・systemd設定をrsyncで新環境へ移設する完全手順

「VPSのスペックが足りなくなってOllamaを別サーバーに移したい」
「古いマシンからの乗り換えで、モデルを全部ダウンロードし直さずに済む方法が知りたい」

そんな状況に直面したLinuxエンジニアや情シス担当者は少なくないはずです。この記事では、OllamaをLinuxサーバーごと移行する手順をステップごとに解説します。
モデルファイルのrsync転送、systemdサービス設定の再現、OLLAMA_MODELS環境変数の確認、APIの疎通テストまで順を追ってカバーします。40GB以上になることもあるモデルデータを毎回ダウンロードし直さずに済む方法と、移行後のダウンタイムを最小化する並走確認の進め方も含めて解説します。

この記事のポイント

・OLLAMA_MODELSのパスを確認してモデルファイルの保存場所を特定する
・rsync --progress --partial でGBクラスの大容量モデルを中断再開しながら転送できる
・新サーバーでsystemd override.confを再設定してOllamaを自動起動する
・移行後は旧サーバーをすぐ削除せず最低1週間並走して動作を確認する


OllamaをLinuxサーバーごと移行する方法|モデル・systemd設定をrsyncで新環境へ移設する完全手順

続きを読む "OllamaをLinuxサーバーごと移行する方法|モデル・systemd設定をrsyncで新環境へ移設する完全手順"

OllamaをRaspberry Pi 5で動かす方法|ARM64 LinuxでローカルLLMを省電力サーバーとして構築する手順

「Raspberry Pi 5でOllamaが本当に実用的に動くのか知りたい」
「クラウドAIに頼らずに家庭や小規模オフィスで省電力のローカルLLMサーバーを立てたい」

そんな需要に応えるため、OllamaはARM64アーキテクチャに公式対応しており、Raspberry Pi 5(8GBモデル)上でも軽量な量子化モデルを動かせる。消費電力はアイドル時で5W前後、推論時でも15W程度に収まり、24時間稼働のサーバーとして月の電気代コストを大幅に抑えられる。
この記事では、Ubuntu Server 24.04 LTS ARM64のセットアップからOllamaのインストール、モデルのUSB SSD配置、温度管理まで、Raspberry Pi 5上での実装手順を解説する。

この記事のポイント

・OllamaのインストールスクリプトはARM64を自動検出し、Raspberry Pi 5でも通常のcurlコマンドで導入できる
・8GBモデルではGemma 3(2B・q4_K_M)やPhi-4(q4_K_M)など3GB以内に収まるモデルが実用的な速度で動作する
・モデルファイルはUSB SSDに保存しOLLAMA_MODELSで参照先を変更することでロード時間を大幅に改善できる
・vcgencmd measure_tempで温度を監視しアクティブクーラーを搭載するとサーマルスロットリングを防げる


OllamaをRaspberry Pi 5で動かす方法|ARM64 LinuxでローカルLLMを省電力サーバーとして構築する手順

続きを読む "OllamaをRaspberry Pi 5で動かす方法|ARM64 LinuxでローカルLLMを省電力サーバーとして構築する手順"

OllamaとLangfuseでLLM可観測性を実装する方法|プロンプト・レスポンス・トークン使用量をローカル環境でトレースする手順

「Ollamaでチームが投げたプロンプトや返答の内容を後から見直したいが、ログに残っていない」
「本番環境でローカルLLMを使っているが、どのモデルがどれだけのトークンを消費しているか把握できていない」

そんな悩みを抱えるLinux管理者やAIシステム開発者は多いはずです。この記事では、オープンソースのLLM可観測性プラットフォームLangfuseをLinuxサーバーにセルフホストし、OllamaのAPI呼び出しをプロンプト・レスポンス・トークン使用量の単位でトレースする手順を解説します。
Prometheusによるシステムメトリクスの監視とは異なり、Langfuseはアプリケーション層の可観測性を担います。どのクエリに時間がかかったか、どのプロンプトがエラーを起こしたか、チームごとのLLM利用量を可視化できます。Docker ComposeによるLangfuse構築からPython SDKによるOllama統合まで、Ubuntu 22.04/24.04 Serverを前提に進めます。

この記事のポイント

・LangfuseはDocker Composeでセルフホストでき、プロンプト・レスポンス・トークン使用量を完全ローカルで記録できる
・langfuse.openaiのOpenAIラッパーをOllamaのbase_urlに向けるだけで既存コードをほぼ変更なしにトレース対応にできる
・@observeデコレータを付けるだけでRAGパイプライン全体をネストスパンとして可視化できる
・ClickHouseに全文保存するためディスク容量管理とデータ保持期間の設定が本番運用の鉄則


OllamaとLangfuseでLLM可観測性を実装する方法|プロンプト・レスポンス・トークン使用量をローカル環境でトレースする手順

続きを読む "OllamaとLangfuseでLLM可観測性を実装する方法|プロンプト・レスポンス・トークン使用量をローカル環境でトレースする手順"

OllamaとElasticsearchでハイブリッド検索RAGを構築する方法|BM25とベクター検索を組み合わせてLinuxで精度の高い社内文書QAを実現する手順

「Ollamaで社内文書のRAGを試してみたが、キーワードが完全一致しない質問には答えられないことが多い」
「pgvectorのベクター検索だけでは固有名詞・型番・コード番号が混在する検索が弱く、実務で使いものにならない」

そんな課題を持つLinuxエンジニアは少なくないはずです。この記事では、ElasticsearchとOllamaを組み合わせたハイブリッド検索RAGをUbuntu Serverに構築する手順を解説します。
BM25によるキーワード検索とEmbeddingによるベクター検索を並走させ、RRF(Reciprocal Rank Fusion)で統合することで、どちらか一方では取りこぼしていた文書を精度よく引き出せるようになります。pgvectorによる純粋なベクター検索と使い分けたいエンジニア向けに、コマンドと実装コードを中心に説明します。

この記事のポイント

・ElasticsearchはBM25と `dense_vector` を同一インデックスに共存させてハイブリッド検索を一本化できる
・OllamaのEmbedding API(`/api/embeddings`)で生成したベクターをそのままElasticsearchに格納する
・Elasticsearch 8系の `knn` クエリと `sub_searches` + `rrf` でスコア統合の実装コードが最小限に収まる
・ノートPCレベルのCPU専用環境でも `nomic-embed-text` + `llama3.3:8b-instruct-q4_0` の組み合わせで実用速度が出る


OllamaとElasticsearchでハイブリッド検索RAGを構築する方法|BM25とベクター検索を組み合わせてLinuxで精度の高い社内文書QAを実現する手順

続きを読む "OllamaとElasticsearchでハイブリッド検索RAGを構築する方法|BM25とベクター検索を組み合わせてLinuxで精度の高い社内文書QAを実現する手順"

OllamaをTraefikリバースプロキシで保護する方法|自動HTTPS・BasicAuth・レート制限をYAML設定で一括管理する手順

「OllamaをUbuntu Serverに構築してチームで使い始めたが、外部公開のためのNginx設定でproxy_passやlocationブロックの書き方が煩雑でつまずいている」
「認証・HTTPS・レート制限を別々のNginxディレクティブに分散して書くのが管理しづらい。YAMLで一括管理できるリバースプロキシに移行したい」

そんな悩みを持つLinuxサーバー管理者向けに、この記事ではTraefikをDockerで起動してOllamaのAPIを保護する手順を解説する。OllamaがUbuntu Serverにsystemdサービスとして稼働している前提で進める。自動HTTPS・BasicAuth・レート制限・IP制限をYAMLファイル2枚で完結させる構成を段階的に組み立てていく。

この記事のポイント

・Traefikはtraefik.yml+dynamic.ymlの2ファイルでBasicAuth・HTTPS・レート制限を一括管理できる
・dynamic.ymlはwatch:trueで変更を自動反映するためTraefik再起動なしで設定変更が効く
・docker-compose.ymlにextra_hostsを設定することでコンテナ内からホストのOllama(11434番)へ接続できる
・Let's Encrypt証明書はTraefik内蔵のACMEクライアントが自動取得・自動更新するためcertbotは不要


OllamaをTraefikリバースプロキシで保護する方法|自動HTTPS・BasicAuth・レート制限をYAML設定で一括管理する手順

続きを読む "OllamaをTraefikリバースプロキシで保護する方法|自動HTTPS・BasicAuth・レート制限をYAML設定で一括管理する手順"

OllamaをTailscaleのプライベートネットワーク経由で公開する方法|ゼロコンフィグVPNでチームがどこからでもローカルLLMに安全接続する手順

「複数メンバーがそれぞれのPCからOllamaサーバーにアクセスできるようにしたいが、VPN設定が複雑すぎる」
「SSHポートフォワーディングでは繋ぎ直しが面倒で、固定のURLで常時使えるようにしたい」

そんな悩みを持つサーバー管理者やエンジニアは多い。この記事では、Tailscaleを使ってOllamaをチームのプライベートネットワークに公開する手順を解説する。インストールと `tailscale up` だけでNATを越えたメッシュVPNが完成し、ドメイン取得もNginx設定もTLS証明書管理も不要になる。

この記事のポイント

・Tailscaleをインストールして `tailscale up` するだけでOllamaサーバーとクライアントが同一プライベートネットワークにつながる
・`OLLAMA_HOST` をTailscale IPにバインドすることでインターネット公開ゼロのまま、チームからAPIにアクセスできる
・TailscaleのACLポリシーでタグを使い、接続元をチームメンバーに限定できる
・MagicDNSを有効化するとIPの代わりに `http://サーバー名:11434` という固定URLでOllamaにアクセスできる


OllamaをTailscaleのプライベートネットワーク経由で公開する方法|ゼロコンフィグVPNでチームがどこからでもローカルLLMに安全接続する手順

続きを読む "OllamaをTailscaleのプライベートネットワーク経由で公開する方法|ゼロコンフィグVPNでチームがどこからでもローカルLLMに安全接続する手順"

OllamaとLangGraphでステートフルAIエージェントを構築する方法|グラフ構造とループ処理でローカルLLMに複雑な業務フローを実装する手順

「LangChainでLLMを連結する処理は書けたが、ループや条件分岐が入ると途端にコードが複雑になる」
「AutoGenのように複数エージェントを動かしたいが、処理の流れをもっと明示的に制御したい」

そんな課題を持つPython開発者・インフラエンジニアには、LangGraphが解決策になる。LangGraphはLangChainエコシステムの拡張ライブラリで、エージェントの処理をグラフ(ノードとエッジ)として表現する。ループ・分岐・状態管理が明示的に扱えるため、調査→判断→再試行といった複雑な業務フローをローカルLLMで実装しやすい。
この記事では、OllamaとLangGraphを組み合わせてステートフルAIエージェントを構築する手順を解説する。StateGraphの基本構造からConditional Edgeによる分岐・ループ、MemoryCheckpointerによる会話履歴管理まで、Ubuntu Server上でゼロから実装する。

この記事のポイント

・LangGraphのStateGraphでノードとエッジを定義し、グラフ構造のエージェントを構築できる
・add_conditional_edgesで条件分岐とループを実装し、LLMが自律的に処理を継続・終了を判断できる
・MemorySaverをCheckpointerに指定すると、スレッドIDごとに会話履歴を永続管理できる
・LangGraphはLangChainの単純チェーンでは扱いにくい「繰り返し処理が必要なタスク」に向いている


OllamaとLangGraphでステートフルAIエージェントを構築する方法|グラフ構造とループ処理でローカルLLMに複雑な業務フローを実装する手順

続きを読む "OllamaとLangGraphでステートフルAIエージェントを構築する方法|グラフ構造とループ処理でローカルLLMに複雑な業務フローを実装する手順"

OllamaとCeleryで非同期LLMタスクキューを構築する方法|複数ユーザーのリクエストをワーカーで並列処理してサーバー負荷を制御する手順

「Ollamaのチームサーバーに複数ユーザーが同時にリクエストを送ると、後から来たリクエストが詰まってタイムアウトしてしまう」
「リクエストをキューに積んで順番に処理させたいが、OllamaのAPIにはキュー管理機能がない」
そんな悩みを抱える情報システム担当者やサーバー管理者は多い。この記事では、PythonのタスクキューフレームワークCeleryとRedisブローカーを組み合わせて、OllamaへのLLMリクエストを非同期タスクキューで管理する仕組みを構築する。OllamaのAPIコールをCeleryタスクとして定義し、ワーカーが並列で処理することで、複数ユーザーからの同時リクエストをサーバー過負荷なしにさばけるようになる。systemdでCeleryワーカーをサービスとして登録し、再起動後も自動復旧する本番構成まで一気に進める。

この記事のポイント

・Celery+Redisでollamaリクエストを非同期タスクとしてキュー処理できる
・`worker_concurrency`でGPU/RAM容量に合わせた同時処理数を制御する
・systemdの`After=ollama.service`で起動順序を保証して本番運用に対応する
・バッチ処理とリアルタイム処理をキュー名で分離して優先度制御できる


OllamaとCeleryで非同期LLMタスクキューを構築する方法|複数ユーザーのリクエストをワーカーで並列処理してサーバー負荷を制御する手順

続きを読む "OllamaとCeleryで非同期LLMタスクキューを構築する方法|複数ユーザーのリクエストをワーカーで並列処理してサーバー負荷を制御する手順"

OllamaとMinIOでローカルS3互換ストレージのRAGを構築する方法|オブジェクトストレージに蓄積した社内文書をローカルLLMで検索・質問応答する手順

「社内文書をオブジェクトストレージに集約しているが、ローカルLLMのRAGとどう連携すればいいかわからない」「MinIOはすでに動いているのに、OllamaのEmbeddingと接続する手順が見つからない」

そんな悩みを抱えるインフラエンジニア・情シス担当者は多いはずです。MinIOはS3互換のオープンソースオブジェクトストレージで、社内ドキュメントの集約先として広く使われています。一方、Ollamaはローカルでテキスト埋め込み(Embedding)を生成できるため、MinIOとの組み合わせは「完全オンプレRAGシステム」を実現する有力な選択肢です。この記事では、MinIOのインストールからバケット設定・PythonでのEmbeddingパイプライン構築・Chromaへのベクトルデータ格納・RAG質問応答の実装まで、Ubuntu Server上で一気通貫に手順を解説します。すべてのデータとモデルがオンプレに留まる構成なので、機密性の高い社内文書にも安心して適用できます。

この記事のポイント

・nomic-embed-textでMinIO上のドキュメントをEmbeddingに変換しChromaに格納する
・MinIOのPython SDKでオブジェクトを動的に取得してRAGパイプラインを構築する
・MinIOのイベント通知でドキュメント追加を自動検知してインデックスを更新する
・すべてのデータとモデルがオンプレに留まる完全ローカルRAGを実現する


OllamaとMinIOでローカルS3互換ストレージのRAGを構築する方法|オブジェクトストレージに蓄積した社内文書をローカルLLMで検索・質問応答する手順

続きを読む "OllamaとMinIOでローカルS3互換ストレージのRAGを構築する方法|オブジェクトストレージに蓄積した社内文書をローカルLLMで検索・質問応答する手順"

OllamaのモデルファイルをNFSで複数サーバーに共有する方法|共有ストレージでダウンロード1回・ディスク節約のクラスター構成手順

「Ollamaサーバーを3台に増やしたら、70GBのモデルを3回ダウンロードする羽目になってディスクが足りない」
「新しいモデルを追加するたびに全台にpullし直すのが手間で、チームのサーバー台数が増えるほど管理コストが上がっている」
そんな課題を抱えるLinuxサーバー管理者は多いはずです。この記事では、NFS(Network File System)を使ってOllamaのモデルファイルを1か所に集約し、複数のOllamaサーバーで共有する構成手順を解説します。モデルのダウンロードは1回・保管はNFSサーバー1台だけで済み、クラスター全体のストレージ効率が大幅に改善します。Ubuntu Server上でのNFSサーバー構築からOllamaへのパス設定、systemdの依存関係設定まで一通り説明します。

この記事のポイント

・OLLAMA_MODELS環境変数でモデルパスを変更すれば、NFS上のモデルをそのまま使える
・NFSサーバー側の設定は /etc/exports へのエントリ追加とnfs-kernel-serverの起動だけ
・systemdのAfter=とRequires=でNFSマウントをOllama起動前に保証し、起動順のトラブルを防ぐ
・モデル追加作業を「書き込み許可サーバー1台」に集中させるポリシーで整合性を保つ


OllamaのモデルファイルをNFSで複数サーバーに共有する方法|共有ストレージでダウンロード1回・ディスク節約のクラスター構成手順

続きを読む "OllamaのモデルファイルをNFSで複数サーバーに共有する方法|共有ストレージでダウンロード1回・ディスク節約のクラスター構成手順"

OllamaでPDFをローカル処理する方法|pypdfとPythonでテキスト抽出・要約・質問応答を社内サーバーで完結させる手順

「社内の契約書や仕様書がPDFで山積みになっているのに、一つずつ読んで要点をまとめる作業に毎回1時間以上かかっている」
「PDF要約のAIサービスは便利だが、機密文書を外部サーバーに送ることを情報セキュリティ部門が許可してくれない」

そんな悩みを抱えるインフラ担当者・情シス担当者は多いはずだ。この記事では、PythonのPDFライブラリ「pypdf」とOllamaを組み合わせ、PDFファイルのテキスト抽出・ページ別要約・自然言語での質問応答をUbuntu Server上で完全ローカルに実装する手順を解説する。
外部APIへの通信はゼロ。完成後はPythonスクリプトにPDFパスを渡すだけで、契約書・仕様書・報告書の要点が自動生成される。

この記事のポイント

・pypdfで抽出したテキストをOllamaの/api/generateに渡すと完全ローカルでPDF要約が実現できる
・pip install pypdf requests の2パッケージだけで動作し、クラウド依存ゼロで導入できる
・長いPDFは1,500字程度のチャンクに分割してOllama APIに渡すとコンテキスト超過を防げる
・日本語PDFのテキストが空になる場合はpdfplumberへの切り替えで解消できるケースが多い


OllamaでPDFをローカル処理する方法|pypdfとPythonでテキスト抽出・要約・質問応答を社内サーバーで完結させる手順

続きを読む "OllamaでPDFをローカル処理する方法|pypdfとPythonでテキスト抽出・要約・質問応答を社内サーバーで完結させる手順"

OllamaとGitHub Actionsを連携させる方法|セルフホストランナーにローカルLLMを導入してPRレビューと自動要約を実装する手順

「GitHub ActionsのコードレビューにクラウドAIを使うとAPIコストが積み上がる…」
「PRの差分をクラウドに送るのはセキュリティポリシー上NG、でも自動化もしたい」
そんな悩みを抱えるLinuxサーバー管理者・DevOpsエンジニアは多いはずです。この記事では、GitHub Actionsのセルフホストランナーを立てたLinuxサーバーにOllamaを同居させ、PRレビューコメントの自動投稿とコミットメッセージ自動生成ワークフローを実装する手順を解説します。ソースコードをクラウドAIに送ることなく、社内サーバーだけでコードレビューを自動化するための設定をステップごとに示します。

OllamaのLinuxへの基本的なインストールは完了済みであることを前提にしています。まだの方は先にUbuntu ServerでローカルLLMを構築する方法で環境を整えてください。

この記事のポイント

・セルフホストランナーとOllamaを同一Linuxサーバーに同居させ、PRレビューをローカルLLMで実行する
・ワークフローYAMLでgit diff取得→ollama run呼び出し→gh pr comment投稿の流れを実装する
・Gemma3:9b-instruct-q4_0がコードレビュー用途で速度・品質のバランスが取りやすい
・GITHUB_TOKEN権限のスコープとセルフホストランナーのセキュリティ設定が実運用の要


OllamaとGitHub Actionsを連携させる方法|セルフホストランナーにローカルLLMを導入してPRレビューと自動要約を実装する手順

続きを読む "OllamaとGitHub Actionsを連携させる方法|セルフホストランナーにローカルLLMを導入してPRレビューと自動要約を実装する手順"

OllamaのsystemdでCPUとメモリ使用量を制限する方法|cgroup v2のリソースクォータで複数チームが使う共有Linuxサーバーを安定稼働させる手順

「Ollamaがメモリを食い尽くして同じサーバー上の他のサービスが突然落ちた」
「チームメンバーが一斉にリクエストを投げるとCPUが張り付いて共有サーバー全体が重くなる」

そんな問題を抱えるLinuxエンジニアや情シス担当者は多いはずです。この記事では、systemdのDrop-inファイルを使ってOllamaのCPU使用率・メモリ上限・ディスクI/O優先度を設定する手順を解説します。
cgroup v2を使ったsystemdのリソース制御はOllama固有の技術ではなく、systemdで管理された任意のサービスに適用できる汎用的なLinux技術です。Ollamaのsystemdサービス自体の基本構築はUbuntu ServerでローカルLLMを構築する方法で確認してください。

この記事のポイント

・systemdのDrop-in設定でOllamaにCPUQuota・MemoryMaxをサービス単位で適用できる
・/etc/systemd/system/ollama.service.d/override.confに記述してdaemon-reloadで即時反映する
・/sys/fs/cgroup/system.slice/ollama.service/配下のファイルで設定値とリアルタイム使用量を確認できる
・MemorySwapMax=0でSwap書き出しを禁止し、メモリ不足時はOOMで素早く回復させる運用が実務に向く


OllamaのsystemdでCPUとメモリ使用量を制限する方法|cgroup v2のリソースクォータで複数チームが使う共有Linuxサーバーを安定稼働させる手順

続きを読む "OllamaのsystemdでCPUとメモリ使用量を制限する方法|cgroup v2のリソースクォータで複数チームが使う共有Linuxサーバーを安定稼働させる手順"

OllamaをマルチGPU環境で動かす方法|複数NVIDIAカードのVRAM合算で70BモデルをLinuxサーバーで稼働させる手順

「NVIDIAカードを2枚積んだのに、Ollamaが片方のGPUしか使っていない」
「1枚では24GBしかVRAMがなく70BモデルをGPUで動かせない。2枚合算できないのか」

そんな悩みを抱えるインフラエンジニアは多いはずです。OllamaはNVIDIAカードを自動検出してモデルのレイヤーを複数GPUに分散配置します。この記事では、OllamaのマルチGPU動作の仕組み・環境確認コマンド・CUDA_VISIBLE_DEVICESとOLLAMA_GPU_OVERHEADによる制御・nvidia-smiでのリアルタイム監視・「1枚しか使われない」問題の対処法を実機コマンドとともに解説します。

この記事のポイント

・OllamaはCUDAドライバが認識する全GPUを自動検出しVRAMを合算してレイヤー分散する
・ollama psとnvidia-smiの組み合わせで複数GPU使用を確認できる
・CUDA_VISIBLE_DEVICESで使用するGPUを明示的に制限・指定できる
・OLLAMA_GPU_OVERHEADで予約VRAMを設定しOOM(メモリ不足)クラッシュを防げる


OllamaをマルチGPU環境で動かす方法|複数NVIDIAカードのVRAM合算で70BモデルをLinuxサーバーで稼働させる手順

続きを読む "OllamaをマルチGPU環境で動かす方法|複数NVIDIAカードのVRAM合算で70BモデルをLinuxサーバーで稼働させる手順"

OllamaをインターネットなしのLinuxサーバーで運用する方法|エアギャップ環境でのモデル配布・オフライン構築手順

「セキュリティポリシーでインターネット接続が禁止されたサーバーにローカルLLMを入れたい」
「エアギャップ環境へのOllamaの持ち込み方がわからず、ネットが使えないとどうにもならない」

そんな悩みを抱えるインフラエンジニアや情シス担当者は多いはずです。この記事では、インターネット接続のないLinuxサーバー(エアギャップ環境)にOllamaをインストールし、あらかじめ準備したモデルファイルを転送して実際に使えるようにするまでの手順を解説します。事前準備で必要なファイルの一覧から、エアギャップサーバーでの展開と動作確認まで、実際のコマンド例とともに丁寧に説明します。

この記事のポイント

・OllamaバイナリはGitHub Releasesのtar.gzを接続環境で取得してエアギャップサーバーへ転送する
・モデルは接続環境でollama pullしたあと~/.ollama/modelsをtar czfでパッキングして持ち込む
・GGUFファイル+Modelfileのインポートを使えばモデル更新時の転送量を最小化できる
・OLLAMA_MODELS環境変数でモデル置き場を外付けストレージに変更すると容量管理が楽になる


OllamaをインターネットなしのLinuxサーバーで運用する方法|エアギャップ環境でのモデル配布・オフライン構築手順

続きを読む "OllamaをインターネットなしのLinuxサーバーで運用する方法|エアギャップ環境でのモデル配布・オフライン構築手順"

OllamaのAPIをPython asyncioで並列呼び出しする方法|httpxとasyncio.gatherで複数プロンプトを同時処理してスループットを向上させる手順

「Ollamaで大量のテキストファイルを処理したいが、1件ずつ順番に実行すると時間がかかりすぎる」
「Pythonからの複数プロンプト実行をどう並列化すればよいか、asyncioの書き方がわからない」

そんな悩みを抱えるPython開発者やLinux管理者は多い。Ollamaは内部で複数リクエストを同時に処理できる仕組みを持っているが、Pythonからの呼び出しがシーケンシャルなままでは本来の性能を引き出せない。
この記事では、Pythonのasyncioとhttpxを使ってOllamaのAPIを並列呼び出しし、バッチ処理のスループットを向上させる手順を解説する。asyncio.gatherによるファンアウト処理とasyncio.Semaphoreによる並列数の制御、実務での一括要約スクリプトまで、Ubuntu 22.04/24.04を想定したコードで紹介する。

この記事のポイント

・OLLAMA_NUM_PARALLELを設定し、httpx + asyncioで複数プロンプトを同時処理するPythonコードを解説
・asyncio.gatherで複数タスクを一斉実行し、完了順にレスポンスを回収する実装パターンを紹介
・asyncio.Semaphoreで同時接続数を制限し、Ollamaのリソースを超えない安全な呼び出しを実現
・社内ドキュメントの一括要約スクリプトを実装例として提示し、すぐに実務へ応用できる構成にする


OllamaのAPIをPython asyncioで並列呼び出しする方法|httpxとasyncio.gatherで複数プロンプトを同時処理してスループットを向上させる手順

続きを読む "OllamaのAPIをPython asyncioで並列呼び出しする方法|httpxとasyncio.gatherで複数プロンプトを同時処理してスループットを向上させる手順"

Ollamaの公式PythonライブラリでLLMを呼び出す方法|pip install ollamaでストリーミング・非同期・ツール使用を実装する手順

「PythonからOllamaを呼び出したいが、HTTPリクエストを自前で書くと煩雑になる」
「LangChainは覚えることが多すぎる。もっとシンプルにローカルLLMをPythonで使いたい」

そんな悩みを抱えるLinuxエンジニアは多いはずです。Ollamaには公式のPythonライブラリ(`ollama`パッケージ)が用意されており、`pip install ollama` 一行でインストールできます。この記事では、基本的なチャット呼び出しからストリーミング応答・非同期クライアント・ツール使用(Function Calling)・マルチターン対話まで、公式ライブラリを使った実装手順を解説します。

curlやrequestsを使った低レベルなHTTP操作や、LangChainなどのフレームワーク不要で、数行のコードからローカルLLMを呼び出せるようになることが目標です。

この記事のポイント

・pip install ollama でフレームワーク不要のPythonクライアントを導入できる
・ollama.chat(stream=True) でストリーミング応答をジェネレータとして逐次処理できる
・AsyncClient と asyncio.gather() を組み合わせて複数リクエストを並列処理できる
・tools パラメータで Function Calling を OpenAI 互換フォーマットで実装できる


Ollamaの公式PythonライブラリでLLMを呼び出す方法|pip install ollamaでストリーミング・非同期・ツール使用を実装する手順

続きを読む "Ollamaの公式PythonライブラリでLLMを呼び出す方法|pip install ollamaでストリーミング・非同期・ツール使用を実装する手順"

OllamaのAPIをnginxで保護する方法|Basic認証・HTTPS・レートリミットでチームサーバーのセキュリティを強化する手順

「OllamaのAPIをチームに公開したいが、認証なしで外部に出すのは怖い」
「nginxでリバースプロキシを組もうとしたが、Basic認証やHTTPS化の設定で手が止まっている」
そんな悩みを持つLinuxサーバー管理者は少なくないはずです。この記事では、Ubuntu Server上で稼働中のOllamaをnginxリバースプロキシ配下に置き、Basic認証・HTTPS・レートリミットを加えて安全にチーム公開する手順を解説します。
追加ミドルウェアは不要で、nginx単体で完結します。

この記事のポイント

・OllamaはデフォルトでTCP 11434を開放しており、OLLAMA_HOST=0.0.0.0にした瞬間に無認証APIが露出する
・nginxリバースプロキシ+htpasswdでBasic認証を追加し、チームIDのみアクセス可能にする
・Let's EncryptでHTTPS化してBasic認証の平文漏洩リスクを排除する
・limit_req_zoneでレートリミットを設定し、GPU過負荷とブルートフォースを防ぐ


OllamaのAPIをnginxで保護する方法|Basic認証・HTTPS・レートリミットでチームサーバーのセキュリティを強化する手順

続きを読む "OllamaのAPIをnginxで保護する方法|Basic認証・HTTPS・レートリミットでチームサーバーのセキュリティを強化する手順"

OllamaとQdrantでローカルベクター検索を構築する方法|Rustベース高性能ベクターDBをUbuntuに導入してRAGを高速化する手順

「pgvectorでRAGを組んだが、社内ドキュメントが数万件に増えてくると検索レスポンスが遅くなってきた」
「ベクター検索専用のDBに移行したいが、OllamaのEmbeddingとどう繋げればいいのかわからない」
そんな悩みを抱えるインフラエンジニアやMLOps担当者は多いはずです。この記事では、Rustで書かれた高性能ベクターデータベース「Qdrant」をUbuntu ServerにDockerで構築し、OllamaのEmbedding APIと連携してローカルRAGパイプラインを実装する手順を解説します。
pgvectorとの使い分け判断から、コレクション作成・ドキュメント登録・セマンティック検索・LLMによる回答生成まで、インターネットにデータを一切送らず社内完結で実現する方法を網羅します。

この記事のポイント

・nomic-embed-textのEmbeddingとQdrantを組み合わせてローカルRAGを構築できる
・docker runコマンド1つでQdrantサービスを起動し、Python qdrant-clientでコレクションを作成する
・pgvectorと異なり専用ベクターDBのためドキュメント数が増えてもミリ秒レベルの検索速度を維持できる
・本番運用時はQdrant Web UIとREST APIでコレクション状態を監視・管理する


OllamaとQdrantでローカルベクター検索を構築する方法|Rustベース高性能ベクターDBをUbuntuに導入してRAGを高速化する手順

続きを読む "OllamaとQdrantでローカルベクター検索を構築する方法|Rustベース高性能ベクターDBをUbuntuに導入してRAGを高速化する手順"

OllamaをPodmanコンテナで動かす方法|Rocky Linux/RHELへのDockerなし導入とOpen WebUI連携手順

「RHELやRocky Linuxで社内AIを動かしたいが、Dockerのdaemonを入れるのは社内ポリシー上難しい」
「Podmanを使えばDockerなしでOllamaを動かせると聞いたが、具体的な手順がわからない」

そんな悩みを抱えるLinuxエンジニアや情報システム担当者は多い。この記事では、「Podman」を使ってOllamaをRocky Linux 9(RHEL 9互換)に導入する手順を解説する。Ollamaの基本的な仕組みについてはUbuntu ServerでローカルLLMを構築する方法も参考にしてほしい。

この記事のポイント

・PodmanはDockerなしでOllamaをRocky Linux/RHELに動かせるRed Hat標準のコンテナエンジン
・dnf install podman 1コマンドでインストール可能・追加リポジトリ不要
・Podmanネットワーク機能でOllamaとOpen WebUIをコンテナ間で安全に接続できる
・podman generate systemd とloginctl lingerでサーバー再起動後の自動起動を実現する


OllamaをPodmanコンテナで動かす方法|Rocky Linux/RHELへのDockerなし導入とOpen WebUI連携手順

続きを読む "OllamaをPodmanコンテナで動かす方法|Rocky Linux/RHELへのDockerなし導入とOpen WebUI連携手順"

Ollamaをcurlとwrkで負荷テストして本番スペックを決める方法|トークン毎秒・同時接続数・GPU使用率を実測してインフラを設計する手順

「Ollamaをチームサーバーにデプロイしたものの、何人まで同時に使えるのか全く見当がつかない」
「GPU代を出してサーバーを強化する前に、本当に必要なスペックを数字で把握しておきたい」
そんな悩みを抱えるインフラエンジニアやLinux管理者は多いはずです。この記事では、Ollamaをcurlとwrkで負荷テストする方法を、トークン毎秒(TPS)・初回トークン到達時間(TTFT)・同時接続上限・GPU使用率の4指標を実測する手順を中心に解説します。測定結果から本番サーバーに必要なスペックを算出し、スケールアップ投資の判断基準を数字で出せるようになることを目指します。OllamaをUbuntu Serverに構築する前提手順はUbuntu ServerでローカルLLMを構築する方法を参照してほしい。

この記事のポイント

・curlの-wオプションでTTFT・総レスポンスタイムを1コマンドで計測できる
・wrkの-cオプションで並列接続数を上げながらスループット上限を特定できる
・Pythonのasyncioで同時接続を段階的に増やし、エラーが出始めるラインをつかめる
・GPU VRAM使用率と応答速度の相関を見るとスペック判断の根拠が明確になる


Ollamaをcurlとwrkで負荷テストして本番スペックを決める方法|トークン毎秒・同時接続数・GPU使用率を実測してインフラを設計する手順

続きを読む "Ollamaをcurlとwrkで負荷テストして本番スペックを決める方法|トークン毎秒・同時接続数・GPU使用率を実測してインフラを設計する手順"

OllamaのセキュリティをLinuxで強化する方法|iptables・Dockerネットワーク隔離・Fail2banでローカルLLMサーバーを保護する手順

「OllamaをUbuntuに立てたが、デフォルトの11434ポートが外部からアクセスできてしまう」
「チームで使っているOllamaサーバーへのアクセス制限をどこから設定すればいいかわからない」

そんな悩みを抱えるインフラエンジニア・サーバー管理者は多いはずです。この記事では、OllamaをLinuxサーバーで運用する際に必要なセキュリティ設定を体系的に解説します。バインドアドレスの制限からufw・iptablesによるポートフィルタリング、Dockerネットワーク隔離、journaldによるアクセスログ取得、Fail2banによる異常アクセス自動ブロックまで、多層防御の考え方で段階的に強化する手順を網羅します。

この記事のポイント

・OLLAMA_HOST=127.0.0.1:11434をsystemd override.confに設定するだけで外部バインドを即座に防止できる
・ufw allow from 192.168.1.0/24 to any port 11434でLAN内IPのみに絞り込める
・Docker Composeのexpose+internal networkでホストの11434公開を不要にできる
・Fail2banのOllama用filterとjailを組み合わせて過剰リクエストIPを自動ブロックできる


OllamaのセキュリティをLinuxで強化する方法|iptables・Dockerネットワーク隔離・Fail2banでローカルLLMサーバーを保護する手順

Ollamaをそのまま公開するセキュリティリスクを把握する

Ollamaはデフォルトで 0.0.0.0:11434 にバインドします。つまりサーバーに到達できるIPアドレスならば、誰でもOllamaのREST APIを直接呼べる状態になります。認証機構はOllama自身には存在しません。

具体的なリスクは3つあります。1つ目は無断利用です。GPU・CPUリソースを第三者に消費されます。2つ目はデータ流出です。社内ドキュメントをプロンプトに含めている場合、外部から推論結果を抜き取られるリスクがあります。3つ目はサーバー過負荷です。大量リクエストを受け続けるとサービス品質が低下します。

機密データを守るためにローカルLLMを選んだにもかかわらず、アクセス制限を忘れてネットワーク境界に晒すのは本末転倒です。社内でOllamaを選ぶ経緯や情シス側の判断基準については 「社内でChatGPTが使えないときの代替手段|機密データを守るローカルLLMという選択肢」 も参考になります。

以降ではネットワーク層・サービス層・コンテナ層の3層でセキュリティを重ねる多層防御の考え方で手順を解説します。

続きを読む "OllamaのセキュリティをLinuxで強化する方法|iptables・Dockerネットワーク隔離・Fail2banでローカルLLMサーバーを保護する手順"

OllamaとChromaDBでローカルベクターデータベースを構築する方法|社内ドキュメントの意味検索基盤をLinuxサーバーに設定する手順

「社内マニュアルをAIで意味検索できるようにしたいが、ベクターデータベースの選び方がわからない」
「ChromaDBとOllamaを連携させる具体的な手順が見つからず、RAG構築の第一歩で立ち止まっている」

そんな悩みを抱えるLinuxサーバー管理者・インフラエンジニアは多いはずです。この記事では、OllamaのEmbedding APIとChromaDBを組み合わせて、完全ローカル動作のベクターデータベースを構築する手順を解説します。インストールから社内ドキュメントのインジェスト・意味検索の実行・永続化設定まで、Pythonスクリプトとともに一通りカバーします。クラウドAPIを一切使わず機密文書を扱いたい方に向けた内容です。

この記事のポイント

・nomic-embed-text をOllamaで動かすカスタムEmbedding関数でChromaDBと連携できる
・pip install chromadb 後、PersistentClientを使えばファイル永続化まで数十行で実装可能
・インジェスト→意味検索の一連の流れをPythonスクリプトのコピペで試せる
・コレクション管理・バックアップ・よくあるエラー対処法も網羅


OllamaとChromaDBでローカルベクターデータベースを構築する方法|社内ドキュメントの意味検索基盤をLinuxサーバーに設定する手順

続きを読む "OllamaとChromaDBでローカルベクターデータベースを構築する方法|社内ドキュメントの意味検索基盤をLinuxサーバーに設定する手順"

OllamaでGPUを有効化する方法|NVIDIA CUDA・AMD ROCmをLinuxで設定してローカルLLMの推論を高速化する手順

「OllamaをインストールしたのにCPUで動いている気がする」
「NVIDIAのGPUを積んでいるサーバーなのにOllamaがGPUを認識しない」

そんな悩みを抱えるインフラエンジニアは少なくない。GPUが使われていない状態では、7Bパラメータのモデルでも1トークン生成に数秒かかることがあり、実務ではとても使い物にならない。この記事では、NVIDIA CUDAとAMD ROCmそれぞれのLinux向けGPU有効化手順を実際のコマンドで解説する。ドライバのインストールからOllamaのGPU認識確認、推論速度の比較、トラブルシュート、マルチGPU設定まで一通り押さえる。

この記事のポイント

・`ollama ps` コマンドで現在のモデルがGPUを使っているか即座に確認できる
・NVIDIAはCUDA 12.x系ドライバ、AMDはROCm 6.x系が現時点でのOllama動作確認済み推奨バージョン
・GPU未認識の第一原因はドライバ未インストール・バージョン不一致・グループ権限の未設定
・マルチGPUは `CUDA_VISIBLE_DEVICES` 環境変数で使用するGPUを選択できる


OllamaでGPUを有効化する方法|NVIDIA CUDA・AMD ROCmをLinuxで設定してローカルLLMの推論を高速化する手順

続きを読む "OllamaでGPUを有効化する方法|NVIDIA CUDA・AMD ROCmをLinuxで設定してローカルLLMの推論を高速化する手順"

OllamaをHAProxyで負荷分散する方法|複数インスタンスを並列稼働させてLinuxサーバーのスループットを最大化する手順

「Ollamaをチームで共有しているが、同時リクエストが増えるたびに後続のリクエストが数分待たされる」
「GPU搭載のLinuxサーバーを2台用意した。どうやって並列稼働させればよいかわからない」 そんな悩みを抱えているインフラエンジニアや情シス担当は多いはずです。この記事では、HAProxyを使って複数のOllamaインスタンスを束ね、同時リクエストへの応答スループットを向上させる負荷分散構成を、Ubuntu Serverで一から構築する手順を解説します。
ヘルスチェックによる障害ノードの自動除外、`hey` を使ったスループットの実測方法まで網羅しています。
前提として、Ollamaのインストールと基本動作は完了している状態を想定します(Ubuntu ServerでローカルLLMを構築する完全ガイドを参照)。

この記事のポイント

・HAProxyのhaproxy.cfgにfrontend/backendを定義して複数OllamaインスタンスをRound Robinで束ねる
・systemdのサービスユニットを複製してOLLAMA_HOSTを変えることで同一サーバーに複数インスタンスを立てられる
・`option httpchk GET /api/tags` とfall/rise設定でノード障害を自動検出・切り離し・自動復帰できる
・`hey -n 200 -c 20` で負荷前後のRequests/secを実測し、スループット改善を定量確認する


OllamaをHAProxyで負荷分散する方法|複数インスタンスを並列稼働させてLinuxサーバーのスループットを最大化する手順

続きを読む "OllamaをHAProxyで負荷分散する方法|複数インスタンスを並列稼働させてLinuxサーバーのスループットを最大化する手順"

OllamaをGitのpre-commitフックに組み込む方法|ローカルLLMでコードレビューとコミットメッセージ生成を自動化する

「コードを書くたびに手動でレビューする時間が取れない」
「コミットメッセージを後から見返すと何の変更か分からないものばかり残っている」

そんな悩みを抱える開発者・インフラエンジニアは多いはずです。この記事では、Ollamaをgit pre-commitフックに組み込み、コミット前にローカルLLMが自動でコードをレビューし、問題があればコミットをブロックする仕組みを解説します。さらに、commit-msgフックによるConventional Commits書式チェックと、コミットメッセージの下書きを自動生成するprepare-commit-msgフックの実装まで一気通貫で説明します。
APIキー不要・インターネット不要。機密コードを外部サービスに一切送らず、手元のLinuxサーバー(またはWSL2環境)だけで完結します。RHEL 9系/Ubuntu 24.04 LTSを想定環境として説明します。

この記事のポイント

・`git diff --cached | curl http://localhost:11434/api/generate` の組み合わせだけでローカルLLMレビューが動く
・exitコードで制御するため、問題検出時に `git commit` を自動ブロックできる
・`commit-msg` フックでConventional Commits形式の書式チェックも同時に自動化できる
・`core.hooksPath` または `.pre-commit-config.yaml` でチーム全員に同じフックを展開できる


OllamaをGitのpre-commitフックに組み込む方法|ローカルLLMでコードレビューとコミットメッセージ生成を自動化する

続きを読む "OllamaをGitのpre-commitフックに組み込む方法|ローカルLLMでコードレビューとコミットメッセージ生成を自動化する"

OllamaをCaddyでHTTPS化する方法|自動SSL証明書取得でリバースプロキシをLinuxに最短構成で構築する手順

「Nginxの設定ファイルが複雑で、リバースプロキシの設定に時間がかかる」
「Let's Encryptの証明書をCertbotで手動取得・更新するのが面倒だ」

そんな悩みを抱えるLinuxエンジニアは多い。CaddyはNginxと同じくWebサーバー・リバースプロキシとして機能しながら、Let's EncryptのSSL証明書を自動で取得・更新する機能を内蔵している。Caddyfileの設定はわずか数行で済む。この記事では、Ubuntu Server上でCaddyを使ってOllamaのAPIをHTTPS対応リバースプロキシ経由で安全に公開する手順を解説する。インストールからBasic認証の追加・よくあるトラブルの対処まで一通りカバーする。

この記事のポイント

・Caddyfileにドメイン名とreverse_proxyを書くだけでHTTPS証明書が自動取得される
・certbotやcronの手動設定が不要で、証明書の更新もCaddyが自動で行う
・caddy hash-passwordとbasicauthディレクティブでAPIをパスワード保護できる
・OLLAMA_HOSTを127.0.0.1に限定してCaddy経由のみアクセスさせる構成が基本


OllamaをCaddyでHTTPS化する方法|自動SSL証明書取得でリバースプロキシをLinuxに最短構成で構築する手順

続きを読む "OllamaをCaddyでHTTPS化する方法|自動SSL証明書取得でリバースプロキシをLinuxに最短構成で構築する手順"

OllamaでローカルLLMをfine-tuningする方法|UnslothとLoRAでGGUF変換して業務特化モデルをOllamaに取り込む手順

「RAGで社内ドキュメントを参照させているが、専門用語や社内独自の言い回しに全く対応できていない…」
「Modelfileでシステムプロンプトを調整してみたが、それだけでは回答の一貫性が改善しない場面がある…」
そんな悩みを抱えるインフラエンジニア・MLエンジニアは多いはずです。この記事では、Unslothを使ったLoRAによるfine-tuning、llama.cppでのGGUF変換、そしてOllamaへのModelfileインポートまでの一連の手順を解説します。RAGやModelfileのシステムプロンプトでは対応しきれない業務特化モデルを、手元のLinuxサーバーのGPUで作成し、チームで運用するまでの流れをカバーします。

この記事のポイント

・LoRA+Unslothで ollama run できるカスタムモデルをGPU1枚で作れる
・学習データはJSONL形式のinstruction-outputペアを100件以上用意するのが品質の目安
・llama.cppの convert_hf_to_gguf.py でHugging Face形式→GGUF変換後、Modelfileでインポートする
・量子化タグ q4_K_M でVRAMを抑えつつ本番運用に耐える品質を保てる


OllamaでローカルLLMをfine-tuningする方法|UnslothとLoRAでGGUF変換して業務特化モデルをOllamaに取り込む手順

続きを読む "OllamaでローカルLLMをfine-tuningする方法|UnslothとLoRAでGGUF変換して業務特化モデルをOllamaに取り込む手順"

OllamaとText-to-SQLでPostgreSQLを自然言語で操作する方法|PythonとローカルLLMでSQLを自動生成して業務データを安全に検索する手順

「社内の業務DBにAIで問い合わせたいが、クラウドサービスに業務データを送るのは社のポリシー上NG」
「RAGやpgvectorを試したが、整備済みのテーブルに対しては、ベクター検索よりSQLで直接クエリする方が精度が高い」

そんな場面で使えるのが、ローカルLLMを使ったText-to-SQLです。この記事では、OllamaとPythonを組み合わせ、日本語の質問をPostgreSQLのSELECT文に変換して業務データを検索するパイプラインを構築する手順を解説します。
スキーマの動的取得からOllamaへのプロンプト設計、読み取り専用ユーザーによる安全な実行、SQLインジェクション対策まで、Ubuntu Server上でそのまま動かせる実装を一通りカバーします。社内にPostgreSQLが既にある場合、この構成はRAGとは別の有力な選択肢になります。

この記事のポイント

・OllamaのPOST /api/generateに「CREATE TABLEスキーマ+質問」を渡すとSQL文が得られる
・information_schemaでスキーマを動的取得すれば、テーブル追加後もプロンプト更新不要になる
・生成SQLは読み取り専用ユーザー+SELECTのみ許可フィルタで安全に実行できる
・few-shot例をプロンプトに追加するとJOINや集計クエリの生成精度が大幅に向上する


OllamaとText-to-SQLでPostgreSQLを自然言語で操作する方法|PythonとローカルLLMでSQLを自動生成して業務データを安全に検索する手順

続きを読む "OllamaとText-to-SQLでPostgreSQLを自然言語で操作する方法|PythonとローカルLLMでSQLを自動生成して業務データを安全に検索する手順"

OllamaをHAProxyでロードバランシングする方法|複数LinuxサーバーにOllamaを分散して高可用性ローカルLLMクラスターを構築する手順

「OllamaサーバーがGPU1台だけで、障害が起きた瞬間チーム全員が使えなくなって困っている」
「GPU付きLinuxが複数台あるのに、Ollamaを1台にしか入れておらず処理能力を持て余している」

そんな課題を抱えるLinuxエンジニアは多いはずです。この記事では、HAProxyを使って複数台のOllamaサーバーへ推論リクエストを自動分散する手順を解説します。
クライアント(Open WebUIやPythonスクリプト)はHAProxyのIPアドレス1つを向くだけで、バックエンドのサーバー追加・交換・障害を意識せずに済みます。Ollamaサーバーのバインド設定変更からHAProxy設定ファイルの作成、ヘルスチェックによる自動フェイルオーバー、動作検証まで、実際に動かせる手順を順番に示します。

この記事のポイント

・HAProxyのbackendブロックにOllamaサーバーを列挙するだけで複数台へ分散できる
・OLLAMA_HOST=0.0.0.0:11434 をoverride.confで設定してLAN公開が前提
・option httpchk GET /api/version でOllamaのヘルスチェックを行い障害サーバーを自動切り離す
・LiteLLMプロキシと組み合わせるとAPIキー管理と負荷分散を分離して管理できる


OllamaをHAProxyでロードバランシングする方法|複数LinuxサーバーにOllamaを分散して高可用性ローカルLLMクラスターを構築する手順

続きを読む "OllamaをHAProxyでロードバランシングする方法|複数LinuxサーバーにOllamaを分散して高可用性ローカルLLMクラスターを構築する手順"

OllamaをGitLab CI/CDに組み込む方法|マージリクエストのコードレビューとセキュリティチェックをローカルLLMで自動化する手順

「GitLabのマージリクエストでコードレビューを毎回手動でやるのが追いつかず、品質のばらつきが出ている」
「外部のAIコードレビューサービスはソースコードを社外に送ることになるので、セキュリティポリシー上使えない」

そんな課題を抱えるLinuxエンジニアや開発チームは多いはずです。この記事では、GitLab CI/CDパイプラインにOllamaを組み込み、マージリクエスト(MR)の差分をローカルLLMで自動コードレビューする仕組みを構築する手順を解説します。
コードはすべて社内サーバーのOllama上で処理され、外部には一切送りません。GitLab RunnerのシェルモードによるOllama連携、.gitlab-ci.ymlの設定、GitLab APIを使ったMRへのコメント自動投稿まで、実際に動く形でまとめました。

この記事のポイント

・GitLab RunnerをシェルモードでOllamaと同じサーバーに配置すれば、MR差分を直接ローカルLLMに送れる
・.gitlab-ci.ymlに`only: - merge_requests`を指定するとMR作成時だけジョブが起動する
・Python 20行でOllama APIに差分を投げてレビューを取得し、GitLab APIでMRコメントに自動投稿できる
・差分は`head -c 3000`で切り詰めてトークン上限を超えないようにするのが最初の実務的対処


OllamaをGitLab CI/CDに組み込む方法|マージリクエストのコードレビューとセキュリティチェックをローカルLLMで自動化する手順

続きを読む "OllamaをGitLab CI/CDに組み込む方法|マージリクエストのコードレビューとセキュリティチェックをローカルLLMで自動化する手順"

OllamaにRedisセマンティックキャッシュを導入する方法|同一質問の重複LLM呼び出しを削減してチームサーバーのレスポンスを高速化する手順

「チームで同じ質問を何度もOllamaに投げて、GPUが無駄に占有されている」
「複数人でローカルLLMを共有すると、繰り返し質問でレスポンスが遅くなる」
そんな悩みを抱えるインフラエンジニアやシステム管理者は多いはずです。この記事では、OllamaチームサーバーにRedisセマンティックキャッシュを組み込み、意味的に類似した質問に対してLLM推論を再実行せずキャッシュ応答を返す仕組みを構築します。RedisStackのインストールから、Pythonによるキャッシュ層の実装、ヒット率測定まで、実務で即使える手順を丸ごと解説します。

この記事のポイント

・RedisStackのHNSWベクターインデックスと nomic-embed-text でセマンティックキャッシュを実現できる
・類似度閾値0.92(コサイン距離0.08)を起点に調整すれば、意味が同じ質問を自動でキャッシュヒットに振り分けられる
・Pythonの redis-py 17行のクラスで既存Ollamaコードへの差し込みが可能
・TTL・DIM不一致・メモリ上限が本番でよく引っかかるポイントで、それぞれ具体的な対処がある


OllamaにRedisセマンティックキャッシュを導入する方法|同一質問の重複LLM呼び出しを削減してチームサーバーのレスポンスを高速化する手順

続きを読む "OllamaにRedisセマンティックキャッシュを導入する方法|同一質問の重複LLM呼び出しを削減してチームサーバーのレスポンスを高速化する手順"

OllamaをCPU-onlyのLinuxサーバーで動かす方法|GPU不要でVPS・ラズパイにローカルLLMを安定稼働させる手順

「GPUサーバーは月額が高すぎてローカルLLMの検証すらできない」
「VPSやRaspberry Pi 5に本当にOllamaが入るのか、実際の設定手順が見当たらない」

そんな悩みを持つLinuxエンジニアは多い。OllamaはGPUが検出できない環境でも、自動的にCPU推論モードへフォールバックして動作する。応答速度はGPUに劣るが、バッチ要約・社内文書の分類・単発質問応答のような非リアルタイム用途では十分に実用になる。
GPU環境が整ったあとも、CPU環境で作成したModelfileやカスタマイズはそのまま引き継げる。まず低コストな環境で仕組みを把握し、必要に応じてGPUサーバーに移行するという使い方が現実的だ。
この記事では、VPS(GPUなし・RAMのみ)とRaspberry Pi 5を対象に、CPU-onlyモードでOllamaを安定稼働させる具体的な手順をステップ形式で解説する。モデル選定・量子化タグの選び方・Linuxシステム設定・代表的なトラブル対処まで一気通貫でカバーする。

この記事のポイント

・OllamaはGPU不在でもCPU-onlyモードで自動起動し、追加設定なしで推論できる
・CPU環境ではRAMの60%以内のモデルサイズとq4_K_Mタグを組み合わせるのが基本方針
・OLLAMA_NUM_THREADSとOLLAMA_MAX_LOADED_MODELS=1で他サービスとの同居稼働を安定させる
・swapとvm.swappiness=10でOOM Killを防ぎ、長時間の安定稼働を実現する


OllamaをCPU-onlyのLinuxサーバーで動かす方法|GPU不要でVPS・ラズパイにローカルLLMを安定稼働させる手順

続きを読む "OllamaをCPU-onlyのLinuxサーバーで動かす方法|GPU不要でVPS・ラズパイにローカルLLMを安定稼働させる手順"

OllamaとAnythingLLMを連携させる方法|ローカルLLMにドキュメント管理・複数ワークスペース・ユーザー権限を一括追加する手順

「OllamaでRAGを使いたいが、Pythonコードを書かずにドキュメントをアップロードするだけで使い始めたい」
「チームメンバーごとに専用のドキュメントセットと会話履歴を分離して管理したい」
そんな悩みを抱えるインフラエンジニアや情報システム担当者は多い。この記事では、OllamaをバックエンドにしてAnythingLLMを動かす手順を解説する。AnythingLLMはRAG・マルチワークスペース・ユーザー権限管理を標準搭載したオープンソースのUIツールで、Pythonコードを1行も書かずに社内ドキュメントQ&Aをローカル環境で実現できる。
Ubuntu 22.04/24.04でOllamaが稼働中のLinuxサーバーを前提に、DockerでAnythingLLMをインストールしてOllamaと繋ぐところから、マルチユーザー設定・RAGチューニング・よくあるトラブルの対処まで順に説明する。

この記事のポイント

・docker compose up -d だけでAnythingLLMのWeb UIとRAGが即起動する
・LinuxではDockerからOllamaへの接続にextra_hostsの明示設定が必要
・ワークスペース単位でドキュメントを隔離しユーザーごとに参照権限を割り当てられる
・チャンクサイズとTop K Resultsの調整がRAG精度向上の主要ポイント


OllamaとAnythingLLMを連携させる方法|ローカルLLMにドキュメント管理・複数ワークスペース・ユーザー権限を一括追加する手順

続きを読む "OllamaとAnythingLLMを連携させる方法|ローカルLLMにドキュメント管理・複数ワークスペース・ユーザー権限を一括追加する手順"

Ollamaのモデルをベンチマークする方法|応答速度・トークン/秒・VRAM使用量を実測してLinuxサーバーの最適構成を判断する手順

「Ollamaでモデルをいくつか入れてみたが、どれが速いのか感覚でしか判断できていない」
「VRAM不足でプロセスが落ちることがあるが、どのモデルが何GBを消費しているのか数字で把握できていない」

そんな状況に直面しているLinuxサーバー管理者は多いはずです。この記事では、Ollamaの `/api/generate` が返すレスポンスフィールドと `nvidia-smi` コマンドを組み合わせて、応答速度・トークン/秒・VRAM消費量を実測する手順を解説します。さらに複数モデルをシェルスクリプトで一括ベンチマークしてCSV保存する方法まで、本番サーバーでモデルを根拠を持って選定できる状態にするのが目標です。

この記事のポイント

・Ollama APIの `/api/generate` レスポンスに含まれる `eval_count` と `eval_duration` を使えば外部ツール不要でtokens/secを算出できる
・`nvidia-smi dmon` をバックグラウンドで走らせながらAPIを叩くことでモデル別のVRAM消費量を記録できる
・シェルスクリプトでモデルを順番に切り替えてCSVに保存し比較判断に使う一連の手順を示す
・初回実行はVRAMロード時間が混入するため、ウォームアップ後の値を使うのがベンチマークの鉄則


Ollamaのモデルをベンチマークする方法|応答速度・トークン/秒・VRAM使用量を実測してLinuxサーバーの最適構成を判断する手順

続きを読む "Ollamaのモデルをベンチマークする方法|応答速度・トークン/秒・VRAM使用量を実測してLinuxサーバーの最適構成を判断する手順"

Ollamaとn8nを連携させる方法|ローカルLLMでメール・Slack・CSVの業務フローを自動化する手順

「業務フローはn8nで自動化しているが、LLM連携の部分だけ外部クラウドAPIに頼っている」
「顧客情報や社内文書をクラウドAIサービスに送ることへのコンプライアンスリスクが消えない」

そんな悩みを抱えるLinuxエンジニアや情報システム担当者は多いはずです。この記事では、オープンソースのワークフロー自動化ツール「n8n」とOllamaを連携させ、メール自動分類・Slack要約翻訳・CSVバッチ解析の3つの業務フローを完全なローカルLLMで動かす手順を解説します。
外部APIキーを一切使わず、社内LAN内のサーバーだけで完結する構成のため、機密データを扱う現場でも導入しやすい点が特徴です。Ollamaの導入・基本設定は完了している前提で話を進めます。導入手順から確認したい方は、Ubuntu ServerでローカルLLMを構築する方法を参照してください。

この記事のポイント

・n8nのHTTP RequestノードでOllamaのREST APIを呼び出し、ワークフローにローカルLLMを組み込める
・メール分類・Slack要約翻訳・CSVバッチ解析の3フローを設定例付きで解説
・タイムアウトが発生する場合はnum_ctxを削減するか軽量モデルへの切り替えで対処できる
・全データは社内LAN内のコンテナで完結し、クラウドAPIへのデータ送信は一切不要


Ollamaとn8nを連携させる方法|ローカルLLMでメール・Slack・CSVの業務フローを自動化する手順

続きを読む "Ollamaとn8nを連携させる方法|ローカルLLMでメール・Slack・CSVの業務フローを自動化する手順"

OllamaをDocker Composeでマルチサービス構成にデプロイする方法|Open WebUI・NginxをYAMLで一元管理してチーム運用を安定化させる

「Dockerでサービスを個別に起動しているが、起動順が崩れると連携が壊れて毎回手動で対処している」
「OllamaとOpen WebUIとNginxをバラバラにdocker runで管理していて、チームメンバーへ手順を共有しても再現できないと言われる」
そんな状況に直面しているLinuxサーバー管理者は少なくない。この記事では、OllamaとOpen WebUI・NginxをDocker Composeのマルチサービス構成にまとめる手順を解説する。
起動順制御・ネットワーク分離・ボリューム永続化・ヘルスチェックまでをYAML1ファイルに集約することで、docker compose up -d一発で全サービスが立ち上がる再現性のある運用環境を構築する。GPUパススルーの設定方法と、運用でよく踏むトラブルの対処法も合わせて示す。

この記事のポイント

・Ollamaのhealthcheckとcondition: service_healthyでOpen WebUIの起動順を確実に制御できる
・networks.backend.internal: trueでOllamaを外部ネットワークから構成レベルで隔離できる
・GPUパススルーにはnvidia-container-toolkitとdaemon.jsonのランタイム設定が前提条件になる
・docker-compose.ymlをGitで管理すれば別サーバーでも完全再現できる環境になる


OllamaをDocker Composeでマルチサービス構成にデプロイする方法|Open WebUI・NginxをYAMLで一元管理してチーム運用を安定化させる

続きを読む "OllamaをDocker Composeでマルチサービス構成にデプロイする方法|Open WebUI・NginxをYAMLで一元管理してチーム運用を安定化させる"

OllamaとTelegramボットを連携させる方法|ローカルLLMをスマートフォンからチームで安全に使う手順

「社内のSlackボットはIT部門が管理していて勝手に追加できない」
「外出先のスマートフォンからでもローカルLLMに話しかけたい」

そんな悩みを持つインフラエンジニアや情シス担当者は少なくない。この記事では、TelegramのBot機能とOllamaを組み合わせ、スマートフォンからでもローカルLLMへ安全にアクセスできる環境を構築する手順を解説する。
PythonとTelegram Bot APIを橋渡しするスクリプトを実装することで、インターネット上にプロンプトや応答を一切流さずに運用できる。会話履歴の保持、systemdによる常時起動、不正アクセスを防ぐユーザーID制限まで、本番で使えるレベルの実装を網羅する。

この記事のポイント

・OllamaのREST APIとTelegram Bot APIをPythonスクリプトで橋渡しし、スマートフォンからローカルLLMへ話しかけられるボットを構築する
・ユーザーID許可リストを実装してBot乗っ取りを防ぎ、外出先からでも安全に利用できる環境にする
・systemdユニットファイルで常時起動化すれば、サーバー再起動後もボットが自動復旧する
・会話履歴をメモリ内に保持してマルチターン対応にし、前後の文脈を考慮した応答が得られる


OllamaとTelegramボットを連携させる方法|ローカルLLMをスマートフォンからチームで安全に使う手順

続きを読む "OllamaとTelegramボットを連携させる方法|ローカルLLMをスマートフォンからチームで安全に使う手順"

OllamaをDocker Composeで起動する方法|GPUパススルー・マルチサービス構成・環境変数管理で開発環境を整備する手順

「DockerでOllamaを動かしたいが、GPUパススルーをcompose.ymlにどう書けばいいか分からない」
「Open WebUIやNginxも一緒に立ち上げて、開発環境を一発で整えたい」
「開発専用ツールを本番では起動させたくない。1つのcompose.ymlを書き換えずに環境を切り替えたい」

そんな課題を抱えるインフラエンジニアやサーバー管理者は多い。OllamaはUbuntu Serverへの直接インストールが一般的だが、Docker Composeを使えばGPU対応コンテナとして起動でき、サービス間の連携や環境の再現性が大きく向上する。この記事では、GPUパススルーを含むcompose.ymlの書き方から、Open WebUI・Nginxを加えたマルチサービス構成、profilesを使った開発・本番のサービス切り替え、.envによる環境変数管理、ヘルスチェックと自動再起動の設定まで、実務に直結する内容をステップごとに解説する。

この記事のポイント

・deploy.resources.reservations.devicesブロックでNVIDIA GPUをコンテナへ割り当てる
・named volumeでモデルデータを永続化し、コンテナ削除後もモデルが消えない設計にする
・Open WebUI・Nginxをdepends_onとnetworkで連携させ、profilesで開発・本番のサービスを切り替えられる
・healthcheckとrestart: alwaysで障害時の自動復旧を仕組みとして組み込める


OllamaをDocker Composeで起動する方法|GPUパススルー・マルチサービス構成・環境変数管理で開発環境を整備する手順

続きを読む "OllamaをDocker Composeで起動する方法|GPUパススルー・マルチサービス構成・環境変数管理で開発環境を整備する手順"

Ollamaのトラブルシューティングガイド|接続エラー・モデル読み込み失敗・GPU認識問題をLinuxで解決する手順

「Ollamaを起動したのにAPIに接続できない」「pull コマンドを叩いたらエラーで止まってしまう」
「GPU搭載のサーバーなのに推論がCPUで動いていて異様に遅い」

そんなトラブルに詰まっているLinux管理者は多い。Ollamaは導入がシンプルな分、エラーが出たときの情報が少なく、調べ方を知らないと手探りのまま時間を溶かしがちだ。
この記事では、Ollama運用で頻出する典型的なトラブルをカテゴリ別に整理し、原因の診断コマンドから設定修正・動作確認まで、実際に手を動かしながら解消できる手順を解説する。systemdサービス・WSL2・Dockerそれぞれの環境差にも対応した切り分け方法を網羅している。

この記事のポイント

・systemctl status ollamaとjournalctl -u ollama -n 50で起動エラーの原因を素早く特定できる
・GPU非認識の主因はNVIDIAドライバ・CUDAバージョン不一致。nvidia-smiとOllamaログで確認する
・接続拒否(connection refused)はポートバインドかsystemd起動順序ミスが多い
・環境別(systemd/WSL2/Docker)で症状が同じでも原因が異なる。切り分け手順を必ず踏むこと


Ollamaのトラブルシューティングガイド|接続エラー・モデル読み込み失敗・GPU認識問題をLinuxで解決する手順

続きを読む "Ollamaのトラブルシューティングガイド|接続エラー・モデル読み込み失敗・GPU認識問題をLinuxで解決する手順"

OllamaをDockerComposeで開発環境に組み込む方法|アプリ・DB・LLMを一括起動してチーム共有を効率化する手順

「Ollamaを毎回手動で起動するのが面倒で、チームメンバーへの環境共有ができない」
「アプリ・データベース・LLMがバラバラに動いていて、開発環境の再現性が低い」

そんな悩みを抱えるLinuxエンジニアは多いはずです。この記事では、Docker Composeを使ってOllamaをWebアプリやデータベースと同一スタックで管理し、docker compose up 一発で全サービスを起動できる開発環境の構築手順を解説します。
モデルの永続化設定、コンテナ間の接続方法、起動順序の制御まで、実際の開発現場で使える構成を順を追って説明します。Ollamaをホストに直接インストールする基本手順についてはUbuntu ServerでローカルLLMを構築する方法で解説しているため、本記事はDocker Compose統合に絞って進めます。

この記事のポイント

・docker-compose.yml の ollama サービス定義と GPU パススルー設定で環境を統一できる
・アプリコンテナからは http://ollama:11434 のサービス名でAPIに接続する
・named volume と OLLAMA_MODELS 環境変数でモデルをコンテナ再起動後も保持する
・healthcheck と depends_on の組み合わせで起動順序を確実に制御できる


OllamaをDockerComposeで開発環境に組み込む方法|アプリ・DB・LLMを一括起動してチーム共有を効率化する手順

続きを読む "OllamaをDockerComposeで開発環境に組み込む方法|アプリ・DB・LLMを一括起動してチーム共有を効率化する手順"

OllamaのLinuxセキュリティ設定ガイド|UFW・systemdサンドボックス・監査ログでローカルLLMサーバーを堅牢化する

「Ollamaをサーバーに展開したが、セキュリティ設定は何もしていない」
「デフォルト設定のまま動かしているが、ポート11434が全IPに開いているのが不安だ」
そんな状態で運用しているLinuxサーバー管理者やインフラエンジニアは少なくない。Ollamaはインストール直後の状態ではポート11434番を全インターフェース(0.0.0.0)でLISTENする。認証もAPIキーも存在しない。社内LANに閉じているからといって安全とは言い切れず、VPN接続端末や侵害された社内機器からの不正アクセスを防ぐ手立てがない状態だ。
この記事では、Ubuntu Serverに構築済みのOllamaを対象に、4層のセキュリティ設定を順番に解説する。UFWによるネットワーク制限、専用ユーザーによるプロセス分離、systemdサンドボックス、auditdとAppArmorによる監査と権限最小化だ。コマンドベースの手順なので、Ollamaの初回構築を済ませたあとの追加作業として実施できる。
なお、Ollamaの基本セットアップは Ubuntu ServerでローカルLLMを構築する方法 に詳しくまとめてある。本記事はその先の「本番向け堅牢化」ステップとして活用してほしい。

この記事のポイント

・UFWで11434番ポートを特定IPからのみ許可し、全公開状態を即座に解消できる
・systemdのProtectSystem・PrivateTmpでOllamaプロセスをOSファイルシステムから分離できる
・auditdでOllamaの実行・モデル操作を監査ログとして記録・追跡できる
・AppArmorのcomplain→enforceの段階移行でプロセス権限を安全に最小化できる


OllamaのLinuxセキュリティ設定ガイド|UFW・systemdサンドボックス・監査ログでローカルLLMサーバーを堅牢化する

続きを読む "OllamaのLinuxセキュリティ設定ガイド|UFW・systemdサンドボックス・監査ログでローカルLLMサーバーを堅牢化する"

OllamaをSSHポートフォワーディングでリモートアクセスする方法|VPSや社内サーバーのローカルLLMを外出先から安全に操作する

「OllamaをVPSに構築したのに、外出先からAPIが呼び出せない」
「社内LinuxサーバーのローカルLLMをリモートワーク中に使いたいが、ポートを開放するのはリスクがある」
そんな悩みを抱えるLinuxエンジニアや情シス担当者は多いはずです。この記事では、SSHポートフォワーディングを使ってOllamaのAPIをリモートから安全に呼び出す手順を解説します。Nginxリバースプロキシとは異なり、サーバー側に新たなポートを公開せず、既存のSSH接続をトンネルとして使うだけで外出先からローカルLLMが使えるようになります。VPSや社内サーバーへのSSHアクセスさえ確保されていれば、追加のミドルウェアなしに今日から実現できます。Ubuntu 22.04~24.04 LTS・Rocky Linux 9系を想定環境として説明します。

この記事のポイント

・ssh -L 11434:127.0.0.1:11434 でOllamaのAPIをローカルに転送できる
・~/.ssh/config に LocalForward を書けば短いコマンドで常用設定になる
・ServerAliveInterval でキープアライブを設定し長時間推論中の切断を防ぐ
・autossh を使うと接続断時の自動再接続まで自動化できる
・Open WebUI(3000番)も同時にトンネリングしてブラウザUIをリモートで使える


OllamaをSSHポートフォワーディングでリモートアクセスする方法|VPSや社内サーバーのローカルLLMを外出先から安全に操作する

続きを読む "OllamaをSSHポートフォワーディングでリモートアクセスする方法|VPSや社内サーバーのローカルLLMを外出先から安全に操作する"

OllamaのAPIをufwで保護する方法|Linuxファイアウォールで社内ネットワーク限定公開とポート制御を設定する手順

「OllamaをUbuntu Serverに入れたが、ポートを絞る設定をしていない」
「チーム外や社外から11434番ポートへアクセスされないか不安だ」

そんな不安を抱えるLinuxエンジニアや情報システム担当者は多いはずです。この記事では、OllamaのAPIポートをufwとsystemdの組み合わせで保護し、社内ネットワークのサブネットだけにアクセスを絞る手順を一通り解説します。
iptablesとの使い分け、Nginxリバースプロキシとの多層防御構成、設定後の実測検証方法まで含めて、本番運用に耐えるファイアウォール設定を完成させましょう。

この記事のポイント

・sudo ufw allow from 192.168.1.0/24 to any port 11434 proto tcp でサブネット限定公開が即日実現できる
・systemdのEnvironment="OLLAMA_HOST=127.0.0.1:11434"でLoopbackバインドに絞るとプロセスレベルで外部遮断できる
・NginxをHTTPS終端にして11434番ポートを外部に見せないのがチーム運用の定石
・設定後はnmap -p 11434 でfilteredと表示されるか実測で確認する


OllamaのAPIをufwで保護する方法|Linuxファイアウォールで社内ネットワーク限定公開とポート制御を設定する手順

続きを読む "OllamaのAPIをufwで保護する方法|Linuxファイアウォールで社内ネットワーク限定公開とポート制御を設定する手順"

OllamaのCLIコマンドを使いこなす方法|run・pull・ps・show・rmで日常のモデル管理を効率化する手順

「ollama runとollama pullしか使っていないが、モデル管理に使えるコマンドが他にもあるはずだ」
「モデルが増えてきて、VRAMを使っているモデルや空きメモリをコマンドで素早く確認したい」

そんな疑問を持つLinux管理者やインフラエンジニアは多いはずです。この記事では、OllamaのCLIコマンドを全9コマンド網羅して解説します。serve・pull・run・list・ps・show・rm・cp・create の役割と実行例を整理し、日常のモデル管理を効率化する使い方をまとめます。systemdサービスとの共存方法や、よくあるCLIエラーの対処法も合わせてカバーします。

この記事のポイント

・ollama ps でロード中モデル・使用VRAM・処理中リクエスト数をリアルタイム確認できる
・ollama show モデル名 でアーキテクチャ・コンテキスト長・量子化形式・デフォルトパラメータを一覧表示する
・ollama run はインタラクティブ・パイプ・1ショットの3パターンで使い分けると業務スクリプトに組み込みやすい
・ollama cp で既存モデルを複製してから ollama create でModelfileを適用するとリスクなしにカスタムモデルを試せる


OllamaのCLIコマンドを使いこなす方法|run・pull・ps・show・rmで日常のモデル管理を効率化する手順

続きを読む "OllamaのCLIコマンドを使いこなす方法|run・pull・ps・show・rmで日常のモデル管理を効率化する手順"

OllamaとPostgreSQL/pgvectorでローカルベクターDBを構築する方法|既存DBインフラにEmbeddingを統合してRAGをエンタープライズ化する手順

「社内RAGを構築したが、FAISSやChromaのインメモリDBではサーバー再起動のたびにデータが消えてしまう」
「既存のPostgreSQLインフラをそのまま活かして、OllamaのEmbeddingを永続保存・全文検索と併用したい」

そんな悩みを抱えるインフラエンジニアやDBA担当者は多いはずです。この記事では、PostgreSQLの拡張機能pgvectorをUbuntu Serverに導入し、OllamaのEmbedding APIと組み合わせてローカル完結のベクターDBを構築する手順を解説します。インメモリ系ベクターDBとの違い、テーブル設計とHNSWインデックスの選定、Pythonによる格納・類似検索コード、実用RAGパイプラインの実装まで一気通貫でカバーします。クラウドAPIへのデータ送信なし、社内サーバーだけで動く構成です。

この記事のポイント

・CREATE EXTENSION vector; の1行でPostgreSQLにpgvectorを組み込める
・nomic-embed-textの768次元EmbeddingをHNSWインデックスで高速類似検索できる
・psycopg3 + pgvectorライブラリでPythonからベクターをそのまま格納・取得できる
・Ollama推論もEmbeddingもPostgreSQLも社内サーバーで完結するRAGが完成する


OllamaとPostgreSQL/pgvectorでローカルベクターDBを構築する方法|既存DBインフラにEmbeddingを統合してRAGをエンタープライズ化する手順

続きを読む "OllamaとPostgreSQL/pgvectorでローカルベクターDBを構築する方法|既存DBインフラにEmbeddingを統合してRAGをエンタープライズ化する手順"

OllamaをKubernetesにデプロイする方法|GPU NodeとHelm ChartでローカルLLMクラスターを本番スケール対応にする手順

「DockerでOllamaを動かすのに成功したが、利用者が増えて単一コンテナでは負荷を捌けなくなってきた」
「複数のGPU Nodeに分散させて安定運用したいが、Kubernetesへの移行手順がわからない」

そんな悩みを抱えるLinuxインフラエンジニアは多いはずです。この記事では、OllamaをKubernetesクラスターへHelmでデプロイし、NVIDIA GPU Operatorによるリソース認識・PersistentVolumeによるモデル永続化・Ingressを使った外部公開まで、本番スケールのローカルLLM環境を一連の手順で構築します。Ubuntu ServerでのOllama単体構築が完了している前提で、コンテナオーケストレーション環境への移行ステップを実例ベースで解説します。

この記事のポイント

・NVIDIA GPU OperatorでKubernetesにGPUリソースを認識させてからHelm install ollamaを実行する
・persistentVolume.enabled: trueでモデルデータを永続化し、Pod再起動後の再ダウンロードを防ぐ
・tolerations+nodeSelectorでGPU NodeだけにOllamaがスケジュールされる設定が必須
・IngressのProxy-Read-Timeoutを3600秒以上に設定しないとLLM応答中にタイムアウトが発生する


OllamaをKubernetesにデプロイする方法|GPU NodeとHelm ChartでローカルLLMクラスターを本番スケール対応にする手順

続きを読む "OllamaをKubernetesにデプロイする方法|GPU NodeとHelm ChartでローカルLLMクラスターを本番スケール対応にする手順"

OllamaとJupyterLabを連携させる方法|ノートブック上でローカルLLMをPythonから対話利用してAI実験環境を構築する手順

「PythonコードとAIの応答を同じ画面で確認しながら試したいが、毎回スクリプトを書き直すのが手間だ」
「ローカルLLMをインタラクティブに実験できる環境が手元に欲しいが、JupyterとOllamaをどう組み合わせるのか分からない」

そんな悩みを抱えるPython開発者やデータエンジニアは多いはずです。この記事では、Ubuntu Server上にJupyterLabをセットアップし、OllamaのAPIをノートブックから直接呼び出す手順を解説します。
シンプルなAPIコールから始まり、ストリーミング表示・会話履歴の保持・テキスト埋め込みによる類似度計算まで、AI実験環境として必要な機能をひとつずつ組み立てていきます。

この記事のポイント

・JupyterLabとOllamaはlocalhost:11434でそのまま連携できる
・ollama PythonパッケージのstreamオプションでCell内リアルタイム表示が実現できる
・会話履歴はPythonのリストで管理し、messagesに渡すだけで実装できる
・Embedding APIとnumpyのコサイン類似度でRAG前の挙動確認をノートブック上で完結できる


OllamaとJupyterLabを連携させる方法|ノートブック上でローカルLLMをPythonから対話利用してAI実験環境を構築する手順

続きを読む "OllamaとJupyterLabを連携させる方法|ノートブック上でローカルLLMをPythonから対話利用してAI実験環境を構築する手順"

OllamaのモデルファイルをLinuxで管理する方法|OLLAMA_MODELS・外付けHDD・バックアップでストレージを最適化する

「Ollamaで複数のモデルをダウンロードしたら、OSのシステムドライブがいつの間にか満杯になっていた」
「モデルファイルを別のHDDに移したいが、どのディレクトリを操作すれば壊れないのかわからない」

そんな悩みを抱えるLinuxサーバー管理者は多いはずです。この記事では、Ollamaのモデルファイルがどこに保存されているかを確認する手順から、OLLAMA_MODELS環境変数を使った保存先変更、外付けHDDやNASへの移転、不要モデルの削除と容量回収、さらにバックアップと別サーバーへの復元まで、実務視点で一通り解説します。
70B級モデルを2~3本抱えると、数百GBはあっという間に溶けます。計画的なストレージ管理が、ローカルLLM運用を長続きさせる鍵です。

この記事のポイント

・OLLAMA_MODELS環境変数でモデル保存先を任意のパスに変更できる
・外付けHDDへの移転はrsyncとサービス停止で安全に実施できる
・ollama rmで削除してもblobsに孤立ファイルが残る場合がある
・バックアップはblobsとmanifests両方を対象にしないと復元できない


OllamaのモデルファイルをLinuxで管理する方法|OLLAMA_MODELS・外付けHDD・バックアップでストレージを最適化する

続きを読む "OllamaのモデルファイルをLinuxで管理する方法|OLLAMA_MODELS・外付けHDD・バックアップでストレージを最適化する"

OllamaをAnsibleで複数Linuxサーバーに一括デプロイする方法|Playbookで本番クラスターを統一管理する手順

「Ollamaを社内の複数台サーバーに展開したが、タイミングがずれてバージョンが揃わない状態になってしまった」
「新しいモデルを追加するたびに全台へSSHログインして同じコマンドを打ち込む手作業が積み重なり、ミスが出始めた」
そんな悩みを持つインフラエンジニアは多い。Ollamaは1台のセットアップには十分使いやすいが、2台・3台と増えると構成のばらつきや作業ミスが避けられなくなってくる。Ansibleを活用すれば、Playbook1本で全サーバーへ同じ手順を冪等(べきとう)に実行でき、構成のばらつきを根本からなくせる。この記事では、AnsibleでOllamaを複数のLinuxサーバーに一括デプロイする手順を、inventoryファイルの作成からOllamaのインストール・systemdサービス設定の配布・モデルの自動取得まで、ステップ別に解説する。

この記事のポイント

・ansible-playbookコマンド一発でOllamaを全サーバーに一括インストールできる
・ollama pullをAnsibleタスク化することで指定モデルを全台に自動展開できる
・--limitや--tagsオプションで特定ホストや特定タスクだけを安全に再実行できる
・Playbookをidempotent設計にすることで何度実行しても副作用が発生しない


OllamaをAnsibleで複数Linuxサーバーに一括デプロイする方法|Playbookで本番クラスターを統一管理する手順

続きを読む "OllamaをAnsibleで複数Linuxサーバーに一括デプロイする方法|Playbookで本番クラスターを統一管理する手順"

OllamaとFastAPIでカスタムAIマイクロサービスを構築する方法|認証・レート制限・ロギングを追加してチームAPIを本番運用する

「OllamaのデフォルトAPIポートをそのままチームに公開するのは認証がなくて不安だ」
「FastAPIでAIエンドポイントを作りたいが、Ollamaとどう連携させればいいかわからない」

そんな悩みを持つLinuxエンジニアや情シス担当者は多いはずです。この記事では、OllamaのREST APIをFastAPIでラップし、APIキー認証・レート制限・構造化ロギングを追加してチーム向けAIマイクロサービスとして本番運用する手順を解説します。
NginxリバースプロキシはネットワークレベルのルーティングやSSL終端は得意ですが、「部署ごとに異なるモデルだけ許可する」「リクエスト数を月次集計する」といった業務ロジックの組み込みにはPythonコードが必要です。FastAPIを使えばそうした制御を自社コードで完全に実装でき、OllamaのポートはLocalhost内に完全に閉じ込められます。Ubuntu Server 22.04 LTS・Python 3.11以降の環境を前提に、コピーして動く形で解説します。

この記事のポイント

・FastAPIとhttpxでOllamaの/api/chatをラップするカスタムAPIサーバーを構築し、Ollamaポートを外部から完全に隔離できる
・APIKeyHeaderとDependencyを使ってチームメンバーごとにAPIキーを発行し、不正利用を403でブロックできる
・slowapiで1分あたりのリクエスト上限を設定し、Ollamaが過負荷で応答不能になるリスクを防げる
・structlogで構造化JSON形式のログを出力し、チーム名・レスポンス時間・リクエストIDをjqで即座に絞り込める


OllamaとFastAPIでカスタムAIマイクロサービスを構築する方法|認証・レート制限・ロギングを追加してチームAPIを本番運用する

続きを読む "OllamaとFastAPIでカスタムAIマイクロサービスを構築する方法|認証・レート制限・ロギングを追加してチームAPIを本番運用する"

OllamaとWhisperでローカル音声文字起こし・要約パイプラインを構築する方法|会議録をローカルLLMで議事録に自動変換する手順

「会議の録音ファイルが増えるばかりで、議事録の作成に毎回1時間以上かかっている」
「音声認識サービスのAPIに機密情報が含まれる会議音声を送るのはセキュリティ上リスクがある」

そんな悩みを抱えるインフラ担当者・情シス担当者は多いはずだ。この記事では、オープンソースの音声認識ライブラリ「faster-whisper」とOllamaを組み合わせ、会議録音ファイルを完全ローカル環境で文字起こしし、さらにローカルLLMで議事録フォーマットに自動変換するパイプラインをUbuntu Server上に構築する手順を解説する。
外部APIへの通信はゼロ。完成後は引数に音声ファイルを渡すだけで、決定事項・アクションアイテム・次回議題を整理したテキスト議事録が自動生成される。

この記事のポイント

・faster-whisperとOllamaを組み合わせると音声→文字起こし→要約が完全ローカルで完結する
・pip install faster-whisper+ffmpegで日本語会議音声の文字起こし精度は実用レベルに達する
・Pythonスクリプト1本でバッチ処理に対応し、cronで定期自動実行にも組み込める
・GPUなしのCPU環境でも動作する(60分音声の文字起こしは5~8分程度が目安)


OllamaとWhisperでローカル音声文字起こし・要約パイプラインを構築する方法|会議録をローカルLLMで議事録に自動変換する手順

続きを読む "OllamaとWhisperでローカル音声文字起こし・要約パイプラインを構築する方法|会議録をローカルLLMで議事録に自動変換する手順"

OllamaをStreamlitと連携させる方法|PythonでローカルLLMの社内専用チャットUIを自作する手順

「OllamaのAPIは稼働しているが、チームメンバーに使わせるUIをどう用意すればいいかわからない」
「Open WebUIでは特定モデルの固定や社内ログ要件に対応できず、Pythonで自作したい」

そんな悩みを抱えるインフラ担当者や社内ツール開発者は多い。この記事では、PythonのWebアプリフレームワーク「Streamlit」とOllamaを組み合わせ、社内専用のローカルLLMチャットUIをゼロから構築する手順を段階的に解説する。最小構成から始めて、ストリーミング表示・会話履歴保持・動的モデル切り替えを実装し、systemdとNginxでチームに公開する本番運用の形まで仕上げる。コード量は最終的に70行前後になる。

この記事のポイント

・OllamaのPOST /api/chat とrequestsでStreamlitから直接接続できる
・st.write_streamでストリーミング表示、st.session_stateで会話履歴を保持する
・GET /api/tags でモデル一覧を取得し、サイドバーで動的に切り替える
・本番公開はsystemdサービス化+NginxのWebSocketプロキシ設定で安定運用する


OllamaをStreamlitと連携させる方法|PythonでローカルLLMの社内専用チャットUIを自作する手順

続きを読む "OllamaをStreamlitと連携させる方法|PythonでローカルLLMの社内専用チャットUIを自作する手順"

OllamaとAutoGenを連携させる方法|会話駆動型マルチエージェントをローカルLLMでLinuxサーバーに構築する手順

「ローカルLLMでAIエージェントを動かしたいが、どのフレームワークを選べばいいか分からない」
「CrewAIは試したが、もっと柔軟な会話型マルチエージェントをOllamaで構築したい」

そんな悩みを持つLinuxエンジニアやサーバー管理者は多い。この記事では、MicrosoftのマルチエージェントフレームワークAutoGenをOllamaと接続し、Ubuntu Server上でローカルLLMを使った会話駆動型マルチエージェントを構築する手順を解説する。
AssistantAgentとUserProxyAgentの基本構成から、GroupChatによる複数エージェントの役割分担、コード実行エージェントの安全な設定、本番運用に欠かせないタイムアウト制御まで、実際に動く形でまとめた。

この記事のポイント

・AutoGenはOllamaのOpenAI互換API(localhost:11434/v1)に接続するだけでローカル推論が使える
・config_listに`"price": [0, 0]`を必ず追加してコスト計算エラーを回避する
・GroupChatはmax_roundとmax_consecutive_auto_replyで無限ループを防ぐ
・コード実行は`use_docker: False`でDockerなし環境でも安全に動作させられる


OllamaとAutoGenを連携させる方法|会話駆動型マルチエージェントをローカルLLMでLinuxサーバーに構築する手順

続きを読む "OllamaとAutoGenを連携させる方法|会話駆動型マルチエージェントをローカルLLMでLinuxサーバーに構築する手順"

OllamaのAPIパラメータで出力品質を制御する方法|temperature・top_p・num_ctxをPythonから動的に調整して用途別AIを実現する

「Ollamaでモデルを動かしているが、出力がプロンプトを変えるたびにバラバラで安定しない」
「temperature を変えたいのに、どこでどう指定すればいいか調べてもわからない」

そんな疑問を持つLinuxエンジニアやAI活用担当者は多いはずです。この記事では、Ollamaが受け付けるAPIパラメータ(temperature・top_p・top_k・num_ctx・num_predict)の役割と設定範囲を整理し、curlおよびPythonから動的に制御する具体的な手順を解説します。
コード生成・文書要約・社内Q&Aなど用途ごとの推奨パラメータセットも表にまとめているので、設定値で迷う時間を一気に短縮できます。

この記事のポイント

・temperature=0.0~0.2でコード生成の精度が安定し、num_predict・num_ctxで速度と長文対応を制御できる
・curl の /api/generate に options オブジェクトを渡すだけでパラメータを即時切り替えられる
・PythonのPRESETS辞書に用途別設定をまとめると、チーム全体の設定標準化と属人化防止につながる
・num_ctx を拡張するほど KV-cache が VRAM を消費するため、nvidia-smi で空き容量を確認してから設定変更する


OllamaのAPIパラメータで出力品質を制御する方法|temperature・top_p・num_ctxをPythonから動的に調整して用途別AIを実現する

続きを読む "OllamaのAPIパラメータで出力品質を制御する方法|temperature・top_p・num_ctxをPythonから動的に調整して用途別AIを実現する"

OllamaでLinuxのログを自動解析する方法|journalctlとシェルスクリプトでエラーを要約・分類してcronで自動化する

「journalctlのエラーログが多すぎて、毎朝ログ確認だけで30分以上かかっている」
「重大なエラーを見落としていないか不安だが、複数台のサーバーログを目視確認するのは現実的ではない」

そんな悩みを抱えるLinuxサーバー管理者は多いはずだ。この記事では、OllamaのREST APIとシェルスクリプトを組み合わせて、Linuxのエラーログをローカル環境で自動要約・分類する仕組みの構築方法を解説する。
journalctlでエラーを抽出し、curlでOllamaに渡して原因と対処案を日本語で出力させ、cronで日次実行するまでを順を追って説明する。ログデータを外部サービスに送ることなく、サーバー上だけで処理が完結するのがこのアプローチの核心だ。

この記事のポイント

・journalctl -p err の出力をcurlでOllamaのAPIに渡してエラーを自動要約できる
・シェルスクリプト1本で取得・解析・メール通知まで一気に自動化できる
・cronで日次実行することでログ確認の工数をほぼゼロに近づけられる
・プロンプトに役割指定と出力フォーマットを明記すると解析精度が大きく上がる


OllamaでLinuxのログを自動解析する方法|journalctlとシェルスクリプトでエラーを要約・分類してcronで自動化する

続きを読む "OllamaでLinuxのログを自動解析する方法|journalctlとシェルスクリプトでエラーを要約・分類してcronで自動化する"

OllamaとLlamaIndexを連携させる方法|ローカルLLMにドキュメントインデックスと高精度RAGパイプラインを組み込む手順

「社内のPDF・Markdownドキュメントをローカル環境で横断検索したいが、LangChainは設定が多くて途中で詰まってしまった」
「OllamaでRAGパイプラインを試したが回答がズレることが多く、チャンクサイズやインデックス設計をどう改善すればいいかわからない」

そんな悩みを抱えるPythonが書けるインフラエンジニア・社内AI担当者は少なくない。この記事では、ドキュメント検索に特化したPythonフレームワーク「LlamaIndex」をOllamaと組み合わせる方法を解説する。
インストールから社内文書のインデックス化、QueryEngineを使った質問応答の実装、チャンク設定による精度向上、インデックスの永続化と差分更新まで、Ubuntu Server上で実機確認した手順を順を追って説明する。LangChainとの使い分け方やよくあるエラーの対処法も取り上げる。

この記事のポイント

・pip install llama-index-llms-ollama llama-index-embeddings-ollama の2パッケージでOllamaと接続できる
・SimpleDirectoryReaderでPDF・テキスト・Markdownを一括取り込み、VectorStoreIndexで検索可能にする
・SentenceSplitterのchunk_size(256~1024)とchunk_overlapを調整するとRAGの回答品質が大きく改善する
・StorageContextでインデックスをディスクに永続化し、再起動後も再Embedding不要にできる


OllamaとLlamaIndexを連携させる方法|ローカルLLMにドキュメントインデックスと高精度RAGパイプラインを組み込む手順

続きを読む "OllamaとLlamaIndexを連携させる方法|ローカルLLMにドキュメントインデックスと高精度RAGパイプラインを組み込む手順"

OllamaとDifyを連携させる方法|ローカルLLMでRAG・チャットボット・AIエージェントをノーコードで構築する手順

「Ollamaでローカルに動かしたLLMを、社内でもっと使いやすいアプリとして展開したい」
「RAGやエージェント機能をコードなしで実装したいが、どのツールを選べばいいか分からない」

そんな悩みを抱えるLinuxエンジニアやシステム管理者は多い。Ubuntu ServerでOllamaを構築するところまではできても、そこからアプリケーション基盤へ発展させる段階で手が止まってしまう。Open WebUIでチャット画面は作れても、RAGとエージェントを組み合わせてAPIとして外部に提供したいとなると、別の構成が必要になる。

この記事では、OllamaとDifyを連携させて、ローカルLLM環境にチャットボット・RAGナレッジベース・AIエージェントをノーコードで構築する手順を解説する。Difyは2024年以降に国内でも急速に普及したLLMアプリ開発プラットフォームで、Open WebUIがチャット画面特化であるのに対し、Difyはアプリ作成・RAG・エージェント・API公開を一つのUIで管理できる。Ubuntu 24.04 LTS・Docker 26.x以上・Ollama 0.3.x以上の環境を前提に手順を進める。

この記事のポイント

・DifyをDockerでインストールし、OllamaのエンドポイントURLを登録するだけで連携できる
・チャットボット・RAGナレッジベース・AIエージェントをノーコードUIで構築できる
・DifyのAPIエンドポイントを使えば既存の業務システムにローカルLLMを組み込める
・連携時のモデル未認識・Docker疎通エラーは対処パターンが決まっており解消しやすい


OllamaとDifyを連携させる方法|ローカルLLMでRAG・チャットボット・AIエージェントをノーコードで構築する手順

続きを読む "OllamaとDifyを連携させる方法|ローカルLLMでRAG・チャットボット・AIエージェントをノーコードで構築する手順"

OllamaをSlackボットに組み込む方法|社内SlackにローカルAIアシスタントをLinuxサーバーで構築する手順

「社内のSlackチャンネルにAIアシスタントを入れたいが、会話内容がOpenAIのサーバーに送られるのは困る」
「障害ログやコード断片を貼ってAIに相談したいが、クラウドAIサービスのSlack連携では機密データが外に出てしまう」

そんな課題を抱えるインフラエンジニアや情シス担当者は多い。この記事では、OllamaのREST APIとPythonの公式ライブラリ slack-bolt を組み合わせて、すべての推論処理を社内Linuxサーバーで完結させるSlackボットの構築手順を解説する。
Slack Socket Modeを使うためNginxのリバースプロキシも外部ポート開放も不要だ。Pythonコードの実装からsystemdサービス化による常時起動まで一通りカバーする。

この記事のポイント

・slack-boltとOllama REST APIを組み合わせれば社内SlackにローカルAIを追加できる
・Socket Modeを使えばポート開放もNginxも不要でボットサーバーを動かせる
・すべての推論が社内Linuxサーバーで完結するため機密データは外部AIに渡らない
・systemdのEnvironmentFileディレクティブでSlackトークンを安全に管理する


OllamaをSlackボットに組み込む方法|社内SlackにローカルAIアシスタントをLinuxサーバーで構築する手順

続きを読む "OllamaをSlackボットに組み込む方法|社内SlackにローカルAIアシスタントをLinuxサーバーで構築する手順"

OllamaでドキュメントをローカルLLMバッチ処理する方法|シェルスクリプトとPythonで社内文書・ログを自動要約する手順

「社内の議事録や日報をAIで自動要約させたいが、OpenAIのAPIに送るのはセキュリティポリシー上できない」
「サーバーのアクセスログや障害レポートが大量にあり、毎日手作業で目視確認するのが限界になってきた」

そんな悩みを抱えるインフラエンジニアや情報システム担当者は多いはずです。
この記事では、OllamaのローカルLLMで複数のドキュメントをバッチ処理する方法を、curlによる基本確認からシェルスクリプト・Pythonの並列実装まで段階的に解説します。
機密情報を外部に一切送らず、社内ネットワーク内で完結するLLM自動処理パイプラインを構築できます。

この記事のポイント

・OllamaのREST APIで stream: false を指定すれば、1回のcurl呼び出しで要約テキストを取得できる
・シェルスクリプトのforループとjqで複数テキストファイルをまとめて安全にバッチ処理できる
・PythonのThreadPoolExecutorで並列実行し、大量ドキュメントを高速に処理できる
・タイムアウト・リトライ設計と失敗ファイルのログ記録で本番バッチを安定稼働させる方法も解説する


OllamaでドキュメントをローカルLLMバッチ処理する方法|シェルスクリプトとPythonで社内文書・ログを自動要約する手順

続きを読む "OllamaでドキュメントをローカルLLMバッチ処理する方法|シェルスクリプトとPythonで社内文書・ログを自動要約する手順"

OllamaにHugging FaceのGGUFモデルをインポートする方法|hf.co直接ロードとModelfileを使ったカスタムモデル追加手順

「Ollamaの公式ライブラリにないモデルを使いたいが、どうやってインポートすればいいのかわからない」
「Hugging Faceで見つけたGGUFファイルをOllamaに追加しようとしたが、手順が複雑で途中で詰まってしまう」

そんな悩みを持つサーバー管理者・インフラエンジニアは多い。OllamaのデフォルトライブラリはLlama3.3・Mistral・Gemma 3など主要モデルをカバーするが、日本語特化モデルや特定業種向けにファインチューニングされたモデル、あるいは社内で独自に作成したGGUFを使いたい場面では、自前でインポートする手順が必要になる。
この記事では、Hugging FaceのGGUFモデルをOllamaに追加する2つの方法——①hf.co形式のURLによる直接ロード、②GGUFファイルを手動ダウンロードしてModelfileでインポートする方法——をUbuntu Server 24.04で動作確認した手順で解説する。どちらを使うべきかの判断基準と、インポート後のモデル管理・エラー対処もあわせて説明する。

この記事のポイント

・ollama pull hf.co/ユーザー名/リポジトリ:タグ でHugging Faceの任意GGUFを直接取得できる
・GGUFファイルをダウンロードして FROM ./model.gguf と書いたModelfileから ollama create で登録する
・インポート後は ollama ls・ollama show・ollama rm でモデルを一元管理できる
・hf.co直接ロードはGGUFがリポジトリルートにあるパブリックリポジトリのみ対応


OllamaにHugging FaceのGGUFモデルをインポートする方法|hf.co直接ロードとModelfileを使ったカスタムモデル追加手順

続きを読む "OllamaにHugging FaceのGGUFモデルをインポートする方法|hf.co直接ロードとModelfileを使ったカスタムモデル追加手順"

OllamaとFlowiseでノーコードAIワークフローを構築する方法|ビジュアルエディタでローカルLLMに会話・RAG・エージェントを組み込む手順

「Ollamaは動かせているが、業務フローに組み込むにはPythonが必要で先に進めない」
「プログラミングなしでローカルLLMの会話・RAG・エージェントをチームに使わせたい」

そんな悩みを抱えるインフラ担当者や情シス担当者は多い。この記事では、OllamaとFlowiseを組み合わせ、コードを一切書かずにローカルLLMのAIワークフローを構築する手順を解説する。Flowiseのビジュアルエディタ上でノードをつなぐだけで、会話チャット・PDF質問応答(RAG)・エージェント(ツール呼び出し)が動く環境を社内に用意できる。インストールから本番向け認証設定・よくあるトラブル対処まで、手順を順番に示す。

この記事のポイント

・FlowiseはChatOllamaノードを設定するだけでOllamaと即接続でき、コードは不要
・npm install -g flowise またはDockerで5分以内に起動できる
・PDF読み込み+nomic-embed-textでRAGフローをビジュアルエディタだけで構成できる
・本番環境ではsystemdサービス化とNginxリバースプロキシで安定運用する


OllamaとFlowiseでノーコードAIワークフローを構築する方法|ビジュアルエディタでローカルLLMに会話・RAG・エージェントを組み込む手順

続きを読む "OllamaとFlowiseでノーコードAIワークフローを構築する方法|ビジュアルエディタでローカルLLMに会話・RAG・エージェントを組み込む手順"

OllamaにLiteLLMプロキシを導入する方法|チームメンバーへのAPIキー発行とローカルLLM利用管理の実装手順

「OllamaをチームサーバーでAPIとして公開したが、誰がどのモデルをどれだけ使っているか把握できない」
「メンバーごとに月の利用量を制限したいが、NginxのBasic認証では個別管理ができない」

そんな課題を抱えるインフラ担当者やサーバー管理者は多いはずです。この記事では、OllamaのフロントエンドにLiteLLMプロキシを導入し、チームメンバーごとのバーチャルAPIキー発行・月額予算制限・リクエスト数上限(rpm_limit)を実装する手順を解説します。Ollamaの基本構築が済んでいるUbuntu Server環境を前提に、アクセス制御レイヤーを追加します。OpenAI互換のエンドポイントはそのまま維持できるため、既存クライアントコードへの影響を最小限に抑えられます。

この記事のポイント

・pip install 'litellm[proxy]' でOllamaの前段にAPIゲートウェイを追加できる
・/key/generate でメンバーにバーチャルAPIキーを発行しモデルと予算を個別設定できる
・rpm_limitとmax_budgetでキー単位のレート制限と月額上限を実装できる
・base_urlをlocalhost:4000に変えるだけで既存のOpenAIクライアントコードがそのまま動く


OllamaにLiteLLMプロキシを導入する方法|チームメンバーへのAPIキー発行とローカルLLM利用管理の実装手順

続きを読む "OllamaにLiteLLMプロキシを導入する方法|チームメンバーへのAPIキー発行とローカルLLM利用管理の実装手順"

Ollamaの量子化モデルを選ぶ方法|VRAM容量に合わせたq4_0・q8_0・q4_K_Mの最適設定ガイド

「モデルをダウンロードしたのに、VRAMが足りなくてOllamaが起動しない」
「q4_0とq8_0の違いが分からず、デフォルトのまま使い続けている」

そんな悩みを持つインフラエンジニアやサーバー管理者は多い。量子化の仕組みを知らないままモデルを選ぶと、VRAMをオーバーして起動失敗になるか、逆に精度が低すぎて業務に使えない回答が返ってくる。Ollamaを使いこなすうえで、量子化レベルの選定は避けて通れないポイントだ。

この記事では、Ollamaで使える量子化フォーマット(fp16・q8_0・q4_0・q4_K_M)の仕組みと、VRAM容量別の最適な選び方を手順付きで解説する。

この記事のポイント

・ollama pullのタグにサフィックスを付けるだけで量子化レベルを選択できる
・fp16→q8_0→q4_0の順にVRAMは半減するが回答精度も段階的に低下する
・q4_K_Mはq4_0より精度が高くq8_0より軽量な、VRAM節約と品質のバランス型
・nvidia-smiとollama psでVRAM使用量を実測してから量子化レベルを決める


Ollamaの量子化モデルを選ぶ方法|VRAM容量に合わせたq4_0・q8_0・q4_K_Mの最適設定ガイド

続きを読む "Ollamaの量子化モデルを選ぶ方法|VRAM容量に合わせたq4_0・q8_0・q4_K_Mの最適設定ガイド"

OllamaをLangChainと連携させる方法|PythonフレームワークでローカルLLMに会話履歴・チェーン処理・ツール統合を組み込む手順

「OllamaのREST APIを直接叩いていたら、会話履歴の管理がコードで煩雑になってきた」
「Function CallingやRAGをもっとシンプルな構成で実装できるPythonフレームワークを探している」

そんな悩みを抱えるLinuxエンジニアは多いはずです。この記事では、PythonのAIフレームワーク「LangChain」をOllamaと連携させる手順を解説します。ChatOllamaによるチャット実装、RunnableWithMessageHistoryを使った会話履歴管理、OllamaEmbeddingsとFAISSを組み合わせたローカルベクトル検索、さらにカスタムツール統合エージェントまで一通り動かせる構成をUbuntu Server上で構築します。OpenAI APIから乗り換える場合のコード差分も示すので、既存コードのローカルLLM化にも役立ちます。

この記事のポイント

・pip install langchain-ollama でChatOllama/OllamaEmbeddingsが使えるようになる
・ChatOllama(model="llama3.3:70b-instruct-q4_0") でOpenAI互換の会話実装が数十行で可能
・RunnableWithMessageHistoryで複数セッションの会話履歴をLangChainが自動管理する
・OllamaEmbeddings+FAISSでクラウド不要のローカルベクトル検索が完成する


OllamaをLangChainと連携させる方法|PythonフレームワークでローカルLLMに会話履歴・チェーン処理・ツール統合を組み込む手順

続きを読む "OllamaをLangChainと連携させる方法|PythonフレームワークでローカルLLMに会話履歴・チェーン処理・ツール統合を組み込む手順"

OllamaでFunction Callingを使う方法|ローカルLLMにツールを呼び出させてLinuxで自律型AIエージェントを構築する

「OllamaでREST APIは叩けるようになったが、LLMに外部コマンドを自律的に実行させる方法がわからない」
「JSON modeで構造化出力はできた。次はLLMに道具を持たせて複合タスクを自動化したい」
そんな悩みを抱えるLinuxエンジニアは多いはずです。この記事では、OllamaのFunction Calling(ツール呼び出し)機能を使い、ローカルLLMに外部ツールを実行させる自律型AIエージェントをUbuntu Serverに構築する手順を解説します。curl・Pythonの両方で実装例を示し、ファイル読み取り・シェルコマンド実行・内部APIとの連携まで一通り動かします。機密データをクラウドに送らず、オンプレミスだけで完結するエージェント環境を整えたいエンジニアに向けた内容です。

この記事のポイント

・/api/chat の tools パラメータにJSONスキーマでツールを定義し、tool_callsを検出して実行する
・Function Callingに対応したモデルはllama3.3:70b-instruct-q4_0やmistral:7b-instruct-v0.3-q8_0が代表例
・Pythonのollamaライブラリを使うと数十行でツール連携エージェントを実装できる
・ツール実行可能範囲はコード側のホワイトリストで制限し、LLMに任意実行させない設計が基本


OllamaでFunction Callingを使う方法|ローカルLLMにツールを呼び出させてLinuxで自律型AIエージェントを構築する

続きを読む "OllamaでFunction Callingを使う方法|ローカルLLMにツールを呼び出させてLinuxで自律型AIエージェントを構築する"

OllamaのJSON modeで構造化出力を使う方法|業務データ抽出・フォーム自動化をローカルLLMで確実に実装する

「OllamaのAPIに問い合わせるたびに戻り値の形式が変わって、JSON解析でエラーが出る」
「"JSON形式で返して"とプロンプトに書いても、マークダウンの```json```囲みが付いてしまいそのままパースできない」

そんな悩みを抱えるエンジニアは多いはずです。この記事では、Ollamaが提供するJSON modeの仕組みと設定方法を、curl・Python両方の実装手順で解説します。
APIパラメータの設定から、システムプロンプトによるスキーマ定義、JSONDecodeError発生時のリトライ設計まで、業務システムに組み込む上で必要な知識を一通りカバーしています。

この記事のポイント

・"format": "json" をAPIリクエストに追加するだけでJSON modeが有効になる
・スキーマの固定はシステムプロンプトで行う。モデル側では型・フィールド名を保証しない
・json.loads(response.json()["message"]["content"]) でPythonからパースできる
・本番運用ではjsonschemaバリデーション+リトライロジックを必ずセットで実装する


OllamaのJSON modeで構造化出力を使う方法|業務データ抽出・フォーム自動化をローカルLLMで確実に実装する

続きを読む "OllamaのJSON modeで構造化出力を使う方法|業務データ抽出・フォーム自動化をローカルLLMで確実に実装する"

OllamaのOpenAI互換APIを使う方法|既存OpenAIコードをそのままローカルLLMに切り替える手順

OllamaのEmbedding APIでテキスト埋め込みを取得する方法|nomic-embed-textとmxbai-embed-largeで類似検索をローカル環境に構築する手順

「OllamaのAPIにテキストを送ったら数字の配列が返ってきた。これは何に使えるのか」
「社内文書をローカルで意味検索したいが、クラウドのEmbedding APIにデータを送るのは情報漏洩リスクが気になる」

そんな課題を抱えるインフラエンジニアや情シス担当者は多いはずです。この記事では、OllamaのEmbedding APIを使ってテキストをベクトル化し、ローカル環境で意味的な類似検索を実現する手順を解説します。
curlによるAPIの基本的な呼び出し方から、PythonでのEmbedding取得、SQLiteを使った簡易ベクトルDB構築まで、実務で使える形でまとめました。

この記事のポイント

・OllamaのEmbedding APIは/api/embedエンドポイントでテキストをベクトル化できる
・nomic-embed-text(768次元)またはmxbai-embed-large(1024次元)をモデルとして使う
・取得したベクトルとコサイン類似度でキーワード一致なしの意味検索が実現できる
・SQLiteに埋め込みを保存することで数千件規模の社内文書検索DBを低コストで構築できる


OllamaのEmbedding APIでテキスト埋め込みを取得する方法|nomic-embed-textとmxbai-embed-largeで類似検索をローカル環境に構築する手順

続きを読む "OllamaのEmbedding APIでテキスト埋め込みを取得する方法|nomic-embed-textとmxbai-embed-largeで類似検索をローカル環境に構築する手順"

OllamaをPrometheus+Grafanaで監視する方法|GPU使用率・レスポンス時間・エラー率をリアルタイムダッシュボードで可視化する

「Ollamaのレスポンスが急に遅くなったが、GPUが足りないのかサーバー全体の負荷が高いのか判断できない」
「チームで共用しているOllamaサーバーがいつ逼迫しているか、誰も把握していない」

そんな悩みを持つインフラ担当者やSREの方は多いはずです。この記事では、OllamaにPrometheus+Grafanaの監視スタックを組み合わせる手順を解説します。
OllamaはデフォルトでPrometheusフォーマットの `/metrics` エンドポイントを公開しており、追加の計装なしにリクエスト数・レスポンス時間・GPU使用量を収集できます。Ubuntu Server 22.04 / 24.04を前提に、node_exporterによるシステム指標の取得から、nvidia_gpu_exporterを使ったNVIDIA GPU指標の可視化、Grafanaダッシュボードの構築まで段階的に説明します。
ローカルLLMのUbuntu Serverへの初期構築がまだの方は、先にUbuntu ServerでローカルLLMを構築する方法を参照してください。

この記事のポイント

・Ollamaは標準で `/metrics` エンドポイントを持つためPrometheusと追加プラグインなしに連携できる
・Prometheus+node_exporter+nvidia_gpu_exporterの3点セットでシステム・GPU・LLMを一元監視できる
・Grafanaのデータソースにprometheusを登録するだけでリアルタイムダッシュボードが構成できる
・アラートルールを設定すればVRAM逼迫やレスポンス遅延を自動検知してSlack通知できる


OllamaをPrometheus+Grafanaで監視する方法|GPU使用率・レスポンス時間・エラー率をリアルタイムダッシュボードで可視化する

続きを読む "OllamaをPrometheus+Grafanaで監視する方法|GPU使用率・レスポンス時間・エラー率をリアルタイムダッシュボードで可視化する"

OllamaでマルチモーダルLLMを使う方法|LLaVA・Moondreamで画像をローカル解析する手順

「社内の帳票やスクリーンショットをAIで解析したいが、クラウドサービスには送れない情報だ」
「OllamaでテキストLLMは動かせたが、画像を入力として使う方法が分からない」

そんな悩みを抱えるインフラエンジニアや情シス担当者は少なくない。OllamaはテキストLLMだけでなく、画像とテキストを同時に処理できるビジョンモデル(マルチモーダルLLM)にも対応している。LLaVAやMoondreamといったモデルを使えば、ネットワーク外に一切データを出さず、社内サーバーだけで画像解析を実現できる。
この記事では、Ubuntu Serverを前提に、OllamaへのLLaVAインストールから、REST API・Pythonを使った画像送信の実装、帳票やシステム画面の業務応用例まで順を追って解説する。

この記事のポイント

・`ollama pull llava:7b-instruct-q4_0`でインストールし、REST APIの`images`フィールドにbase64画像を渡すだけで動作する
・LLaVA 7B(Q4量子化)はVRAM約6GB、Moondreamは約2GBでCPU環境でも実用的な速度が出る
・`base64 -w 0`の`-w 0`オプションを省略すると改行が入りAPIのJSONエラーになるため必ず付けること
・社内機密の帳票・監視画面など、クラウドAIに送れない画像の解析用途に特に適している


OllamaでマルチモーダルLLMを使う方法|LLaVA・Moondreamで画像をローカル解析する手順

続きを読む "OllamaでマルチモーダルLLMを使う方法|LLaVA・Moondreamで画像をローカル解析する手順"

OllamaとContinue.devでVS Codeにローカルコード補完AIを導入する方法|インターネット不要でコーディング支援を社内環境に組み込む

「GitHub CopilotはSaaSだから社内セキュリティポリシーでNG。でも、コーディング支援AIはどうしても使いたい。」
「VS Codeで補完AIを動かしたいが、コードがクラウドに送信されるリスクが怖くて踏み切れない。」
そんな悩みを抱えるエンジニアや情報システム担当者は多い。この記事では、OSSのVS Codeコーディング支援拡張「Continue.dev」とOllamaを組み合わせて、Ubuntu Server上でローカルLLMによるコード補完・チャット型コードレビューを動かす手順を解説する。コードは一切インターネットに出ない。閉域ネットワーク環境でも動作する構成だ。Continue.devのインストール・OllamaへのAPI接続設定・モデル選定・チャット活用まで一通りカバーする。

この記事のポイント

・Continue.devはconfig.jsonのprovider: "ollama"とapiBaseを設定するだけでローカルLLMに接続できる
・チャット用にLlama3.3、Tab補完用にPhi-4と役割でモデルを分けることで応答速度と品質を両立できる
・コードはすべてローカル推論で処理されるため、社内規定でSaaSのCopilotが使えない環境でも導入できる
・VS Code拡張の初回インストールだけはオンライン環境またはVSIXファイルで事前に済ませておく


OllamaとContinue.devでVS Codeにローカルコード補完AIを導入する方法|インターネット不要でコーディング支援を社内環境に組み込む

続きを読む "OllamaとContinue.devでVS Codeにローカルコード補完AIを導入する方法|インターネット不要でコーディング支援を社内環境に組み込む"

OllamaのパフォーマンスをチューニングするLinux設定ガイド|環境変数・並列処理・VRAM管理でチームサーバーを最適化する

「Ollamaをチームで共用しているが、リクエストが重なると急激にレスポンスが遅くなる」
「VRAMに余裕があるはずなのに、モデルが毎回アンロードされて読み込みのたびに30秒待たされる」

そんな悩みを抱えるLinuxサーバー管理者は多いはずです。Ollamaはデフォルト設定のままでも動作しますが、複数人が使う本番環境では環境変数のチューニングが欠かせません。この記事では、OLLAMA_NUM_PARALLEL(並列リクエスト数)・OLLAMA_MAX_LOADED_MODELS(VRAM上のモデル保持数)・OLLAMA_KEEP_ALIVE(アンロード制御)の3変数を中心に、Ubuntu Server上でOllamaのスループットを最大化する設定手順を解説します。ollama psとnvidia-smiを使ったリアルタイム監視の方法、よくあるパフォーマンス低下の原因と対処法もあわせてカバーします。

この記事のポイント

・OLLAMA_NUM_PARALLEL・OLLAMA_MAX_LOADED_MODELS・OLLAMA_KEEP_ALIVEの3変数がチューニングの核心
・環境変数はsystemdのoverride.confに記述し、daemon-reload→restartで確実に永続化する
・ollama psでモデルのVRAM使用量とアンロードタイマーをリアルタイム確認できる
・量子化モデル(q4_0 vs q8_0)の選択でVRAM消費を抑えながら並列数と速度を両立できる


OllamaのパフォーマンスをチューニングするLinux設定ガイド|環境変数・並列処理・VRAM管理でチームサーバーを最適化する

続きを読む "OllamaのパフォーマンスをチューニングするLinux設定ガイド|環境変数・並列処理・VRAM管理でチームサーバーを最適化する"

OllamaをNginxリバースプロキシで公開する方法|HTTPS・Basic認証でチームへ安全に提供する

「OllamaをチームメンバーとURLで共有したいが、認証なしで公開するのはセキュリティ的に怖い」
「NginxでリバースプロキシをかけてHTTPS化したいが、設定ファイルの正しい書き方がわからない」

そんな悩みを抱えるインフラ担当者やLinux管理者は少なくない。OllamaはデフォルトでHTTPの11434番ポートにバインドしており、設定を変えずに公開するとLAN内の誰もが認証なしにAPIを呼べる状態になる。
この記事では、Nginxをリバースプロキシとして前段に設置し、HTTPS化・Basic認証・UFWによるポート制御まで一通り設定する手順を解説する。Ubuntu Server 22.04/24.04を前提にした実践的な内容だ。
Ollamaをチームへ安全に展開したい管理者は、ぜひ最後まで読んでほしい。

この記事のポイント

・OllamaはデフォルトでHTTP 11434番・認証なし。本番公開前に必ずNginxリバースプロキシを挟む
・systemdのoverride.confで OLLAMA_HOST=127.0.0.1 を設定し、Ollamaを外部バインドから切り離す
・Nginxの proxy_pass http://127.0.0.1:11434; でHTTPS転送とBasic認証を追加し安全に提供する
・UFWで11434番を閉じ443番のみを許可すると「Nginxが入口・認証が門番・UFWが外壁」の多層防御が完成する


OllamaをNginxリバースプロキシで公開する方法|HTTPS・Basic認証でチームへ安全に提供する

続きを読む "OllamaをNginxリバースプロキシで公開する方法|HTTPS・Basic認証でチームへ安全に提供する"

OllamaでRAGを構築する方法|社内ドキュメントをローカルLLMで質問応答システムとして活用する

「議事録や社内マニュアルが膨大すぎて、必要な情報をすぐに探し出せない」
「ChatGPTに社内文書を貼り付けて質問したいが、機密情報が外部に送信されるのが不安で踏み切れない」
そんな悩みを抱えるインフラエンジニアや情シス担当者は多いはずです。この記事では、OllamaとChromaDB・LangChainを組み合わせて、社内ドキュメントに対してローカルLLMで質問応答できるRAGシステムをUbuntu Server上に構築する手順を解説します。
外部APIに一切データを送らないため、機密文書を扱う現場でも安全に導入できます。Ollamaのエンベディングモデルでドキュメントをベクター化してChromaDBに保存し、PythonでRAGパイプラインを実装するところまで、順を追って説明します。

この記事のポイント

・ollama pull nomic-embed-textでエンベディングモデルを取得してローカルベクター化を実現する
・LangChainのChromaVectorstoreとOllamaLLMを組み合わせてRAGパイプラインをPythonで実装できる
・ChromaDBはローカルファイルとして動作するため外部サーバー不要で機密文書を安全に扱える
・回答精度が低いときはchunk_sizeとchunk_overlapの調整が最初の改善ポイントになる


OllamaでRAGを構築する方法|社内ドキュメントをローカルLLMで質問応答システムとして活用する

続きを読む "OllamaでRAGを構築する方法|社内ドキュメントをローカルLLMで質問応答システムとして活用する"

OllamaのModelfileでカスタムモデルを作る方法|業務特化AIアシスタントをチームで使い回す設定手順

「OllamaでロードしたLLMが良さそうなのに、毎回チャット開始時に同じシステムプロンプトを貼り直している」
「業務用のAIアシスタントをチームメンバー全員が同じ設定で使えるように配布したい」

そんな課題を抱えるサーバー管理者・情報システム担当者は多い。OllamaにはModelfileという仕組みがあり、ベースモデル・システムプロンプト・推論パラメータを1つのテキストファイルに定義して「業務専用カスタムモデル」として登録できる。

この記事では、Modelfileの基本構文から始まり、業務特化AIアシスタントの作成手順・パラメータ調整・gitを使ったチーム共有方法まで順を追って解説する。一度作成すればollama run カスタムモデル名一発で同じ設定のモデルを呼び出せるようになる。Ollamaの基本的なインストールと環境構築がまだの場合は、先にUbuntu ServerでローカルLLMを構築する方法を参照してほしい。

この記事のポイント

・ModelfileはFROM(ベースモデル)・SYSTEM(システムプロンプト)・PARAMETER(推論パラメータ)の3ディレクティブで構成される
・ollama create モデル名 -f ./Modelfileでビルドすればollama runやREST API・Open WebUIからすぐ使える
・temperatureを0.1 ~ 0.3に下げると技術サポート用途で安定した回答が得られる
・ModelfileをGitで管理することでチーム全員が同じ業務特化AIアシスタントを同一設定で再現できる


OllamaのModelfileでカスタムモデルを作る方法|業務特化AIアシスタントをチームで使い回す設定手順

続きを読む "OllamaのModelfileでカスタムモデルを作る方法|業務特化AIアシスタントをチームで使い回す設定手順"

OllamaにOpen WebUIを導入する方法|ChatGPT風ブラウザUIをUbuntu Serverに構築してチームで使う

「OllamaはCLIで動かせるが、チームの非エンジニアに使わせる方法が分からない」
「毎回ターミナルを開いてコマンドを叩くのは非効率で、普通のチャット画面がほしい」

そんな悩みを持つサーバー管理者やインフラエンジニアは多い。Ollamaは強力なローカルLLM実行環境だが、標準ではCLIとREST APIしか持たない。チーム全員に使ってもらうには、ブラウザからアクセスできるUI層が必要だ。
この記事では、Open WebUIをDockerでUbuntu Serverに導入し、ChatGPT風のインターフェースをチームで共有するまでの具体的な手順を解説する。ユーザー管理・モデル切替・Nginxによるセキュアな公開まで一通りカバーする。

この記事のポイント

・docker run 1コマンドでOpen WebUIをOllama連携済みで起動できる
・管理者・一般ユーザーの権限分けで社内共有環境を安全に構築できる
・Nginxリバースプロキシ+Let's EncryptでHTTPS化して本番運用可能
・コンテナが起動しない・モデルが表示されないなど頻出トラブルの対処法を網羅


OllamaにOpen WebUIを導入する方法|ChatGPT風ブラウザUIをUbuntu Serverに構築してチームで使う

続きを読む "OllamaにOpen WebUIを導入する方法|ChatGPT風ブラウザUIをUbuntu Serverに構築してチームで使う"

OllamaをsystemdでサービスとしてLinuxに常時起動させる方法|override.confで本番運用する

「Ollamaを再起動のたびに手動で起動し直しているが、無人運用にしたい」
「systemctl editでoverride.confを書けると聞いたが、[Service]セクションの書き方がわからない」

そんな悩みを抱える、常時起動・無人運用したいインフラ屋・サーバー管理者は多いはずです。この記事では、OllamaをLinuxのsystemdサービスとして恒久化し、override.confを使ってリッスンアドレス・モデル保存先・起動パラメータを本番向けに設定する手順を解説します。デフォルトのユニットファイルの構造確認から、OLLAMA_HOST・OLLAMA_MODELSの設定方法、journalctlによるトラブルシュートまでをカバーします。

この記事のポイント

・sudo systemctl edit ollama でoverride.confを作成しデフォルト設定を上書きできる
・Environment="OLLAMA_HOST=0.0.0.0:11434" でLAN全体にAPIを公開できる
・OLLAMA_MODELSでモデル保存先を専用ストレージに分離してディスク管理を独立させる
・起動失敗時は journalctl -u ollama -n 50 でログを確認するのが最初の一手


OllamaをsystemdでサービスとしてLinuxに常時起動させる方法|override.confで本番運用する

続きを読む "OllamaをsystemdでサービスとしてLinuxに常時起動させる方法|override.confで本番運用する"

Ollamaをインストールする方法|Ubuntu・WSL2・Docker別の導入手順とモデル取得まで

「Ollamaのインストール方法がわからない」
「Ubuntu・WSL2・Dockerのどの環境を選べばいいか判断できない」

そんな悩みを抱えるローカルLLMをこれから始める初心者は多いはずです。この記事では、OllamaをUbuntu・WSL2・Dockerそれぞれの環境にインストールする具体的な手順を解説します。curl一発導入からモデルの取得・動作確認まで、「とりあえずOllamaを動かす」ところをゴールにします。WSL2とDockerの導入差分や、インストール後に遭遇しやすいエラーの対処法もあわせてカバーします。

この記事のポイント

・Ollamaは curl -fsSL https://ollama.com/install.sh | sh の一行でUbuntu・WSL2に導入できる
・WSL2はUbuntuと同じコマンドで動くが、systemd有効化の確認とGPU連携の手順が追加になる
・Dockerでは docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 ollama/ollama で起動できる
・ollama: command not foundが出る場合はPATH再設定と source ~/.bashrc で解消できることが多い


Ollamaをインストールする方法|Ubuntu・WSL2・Docker別の導入手順とモデル取得まで

続きを読む "Ollamaをインストールする方法|Ubuntu・WSL2・Docker別の導入手順とモデル取得まで"

Ubuntu ServerでGPUを使ってローカルLLMを動かす方法|nvidia-smi・CUDA・ドライバ導入で挫折しない手順

「nvidia-smiを実行したら command not found と出た」「Ollamaは起動しているのに、nvidia-smiで確認してもGPUが推論に使われていない」
GPU環境の構築でこうした壁にぶつかるインフラエンジニアや自宅サーバー勢は、意外なほど多いものです。

この記事では、Ubuntu 24.04 LTSにNVIDIAドライバとCUDA Toolkitを導入し、OllamaのローカルLLMをGPU推論させるまでの手順を実機ベースで解説します。nvidia-smi認識・CUDAセットアップ・OllamaとのGPU連携確認まで、挫折しやすいポイントを正直に押さえます。Gemma 3やPhi-4をGPUで動かす実践例と、よくあるトラブルの対処法も含めます。「Failed to initialize NVML」のような具体的なエラーへの対処も解説します。

この記事のポイント

・nvidia-smi未認識の主因はドライバ未インストール。ubuntu-drivers autoinstallで解消できる
・CUDAはNVIDIA公式リポジトリ経由でインストールし、nvccコマンドで正常動作を確認する
・OllamaはCUDAが正しく入っていれば自動でGPU推論に切り替わる(設定変更は不要)
・CUDA ToolkitのバージョンがnvidiaドライバのCUDA対応上限を超えると「Failed to initialize NVML」が発生する


Ubuntu ServerでGPUを使ってローカルLLMを動かす方法|nvidia-smi・CUDA・ドライバ導入で挫折しない手順

続きを読む "Ubuntu ServerでGPUを使ってローカルLLMを動かす方法|nvidia-smi・CUDA・ドライバ導入で挫折しない手順"

ローカルLLMのモデルを比較する方法|Llama3.3・Mistral・Gemma・Phi-4をUbuntuで使い分けるポイント

「ローカルLLMを動かす環境は用意できたが、モデルが多すぎてどれを選べばいいのか分からない」
「Llama・Mistral・Gemma・Phi-4の違いが曖昧なまま選び、VRAM不足でクラッシュさせてしまった」

この記事では、Ollamaで扱う主要モデル(Llama3.3・Mistral・Gemma 3/4・Phi-4)の特徴とUbuntuでの動作要件、用途別の使い分けと切り替えコマンドを現役講師の視点で解説します。

この記事のポイント

・モデル選定の基準はVRAM容量と用途の2軸で決まる
・ollama pull 前に df -h でディスク容量を確認する(モデルは数GB~数十GB)
・軽量はPhi-4・Gemma 3、高精度はGemma 4・Llama3.3が目安
・-q4_0 などの量子化タグでVRAM消費を大きく下げられる
・OOMは nvidia-smi とログで確認、不要モデルは ollama rm で削除できる

続きを読む "ローカルLLMのモデルを比較する方法|Llama3.3・Mistral・Gemma・Phi-4をUbuntuで使い分けるポイント"

Ubuntu ServerでローカルLLMを構築する方法|Ollamaで機密データを外に出さず業務AIを動かす完全ガイド

「業務でAIを使いたいが、社外秘のコードや顧客データをChatGPTに貼り付けるわけにはいかない」
「ローカルLLMという選択肢は知っているが、Linuxサーバーでどう動かすのか具体像が見えない」

そんな悩みを抱えるインフラエンジニア・プログラマーは多いはずです。この記事では、Ubuntu ServerにOllamaを導入し、機密データを一切外部に出さずに業務用のローカルLLMを動かすまでの手順を、実機ベースで解説します。インストールから本番運用向けのsystemdサービス化、外部アクセス制限、トラブルシュートまで一通りカバーしました。

この記事のポイント

・curl -fsSL https://ollama.com/install.sh | sh でOllamaを一発導入できる
・ローカルLLMなら機密データを外に出さず・月額ゼロ・オフラインで業務AIを動かせる
・本番運用はsystemdのoverride.confでOLLAMA_HOSTやモデル保存先を制御するのが基本
・「ollama: command not found」はPATHとsystemd起動の2点を切り分ければ解決できる
・巨大モデルが必要な場面はクラウドが優位。用途で使い分ける視点を持つ

続きを読む "Ubuntu ServerでローカルLLMを構築する方法|Ollamaで機密データを外に出さず業務AIを動かす完全ガイド"

Linux無料マニュアル(図解60P) 名前とメールで30秒登録