「社外秘のデータをChatGPTに貼れない」「全社員分のAPI課金が読めない」——この2つを同時に解決するのが、社内に1台のAIサーバーを置いて、社員がブラウザから共有して使う構成です。データは社内から一切出ず、使い放題で、月額の従量課金もありません。この記事では、その全体像と必要なハードウェア、コストの考え方を実務目線で整理します。
なぜ「社内ローカルAI」なのか
- 機密保持: 入力が外部サーバーに送られない。顧客情報・契約書・設計データ・ソースコードを安心して扱える。
- コスト: 一度サーバーを用意すれば、社員が何回使っても追加課金ゼロ。人数が増えるほどクラウドAPIとの差が開きます。
- 無制限: レート制限や利用枠を気にせず、要約・分類・文書検索などを全社で回せる。
- コンプライアンス: 「生成AIにどのデータを渡したか」を社内で完全に管理できる。
全体像:1台のサーバーをみんなで使う
最小構成はとてもシンプルです。
- GPUサーバー1台(社内に設置/クラウドGPUでも可)
- 推論エンジン: Ollama(手軽)またはvLLM(多人数の同時利用に強い)
- 共有UI: Open WebUI(GitHub 10万スター超。マルチユーザー・チャット履歴・文書アップロード・社内RAGを標準装備)
社員は専用ソフトを入れる必要がなく、社内URLをブラウザで開くだけ。見た目はChatGPTそっくりですが、すべて社内で完結します。
ハードウェア選定(人数×モデルサイズで決まる)
サーバー選びは「同時に何人が使うか」と「どのサイズのモデルを動かすか」で決まります。目安は次の通り(経験則・要検証)。
| 規模 | 想定 | モデル | GPUの目安 |
|---|---|---|---|
| 小規模 | 数人〜十数人・たまに同時 | 〜14B | 24GB GPU 1枚(RTX 4090/5090級) |
| 中規模 | 部署単位・常時数人同時 | 27〜35B(MoE) | 48GB級(RTX A6000 等)1枚 |
| 大規模 | 全社・数十人同時 | 70B級 | H100級、または複数GPU+vLLM |
多人数の同時接続では、スループットに強いvLLMが有利です。たとえば70B級(量子化)は単一の高性能GPUに載りますが、数十人が同時に使うと待ち行列が出るため、2枚構成が安全という目安があります。根拠: Open WebUI/LLMセルフホストの運用ガイド(要検証)。
実際の機材でどのモデルがどれだけの速度(tok/s)で動くかは、検証DBに自前の実測を掲載しています。たとえばRTX A6000(48GB)では、35BのMoEモデルが約122 tok/sと、中規模の社内利用に十分な速度が出ます。
構築の流れ(概要)
詳細な手順はOpen WebUI公式に譲りますが、流れは次の通りです。
- サーバーにGPUドライバとDocker(またはOllama)を導入
- 推論エンジンを起動(
ollama serveがOpenAI互換APIとして常駐) - Open WebUIをDockerで起動し、Ollamaをバックエンドに接続
- 管理者アカウントを作成し、社員をユーザー登録(権限・モデルの出し分けも可能)
- 必要なら社内文書を読ませてRAGを有効化(規程・マニュアル・FAQへの質問が可能に)
コスト:クラウドAPIとの損益分岐
ローカルは「初期投資(サーバー)+電気代」、クラウドは「使った分だけの従量課金」。利用量が多いほどローカルが有利になります。経験則として、全社で日常的にAIを使う規模になると、クラウドAPIの月額がサーバー1台の償却を上回りやすく、損益分岐を越えます(要検証・自社の利用量で試算を推奨)。加えてローカルは「機密を出せない」という、金額に換算しにくい価値もあります。
つまずきやすい点
- VRAM不足でモデルが載らない: 人数より先に「動かすモデルが載るか」を確認。大規模モデルの必要メモリも参照。
- 同時接続で遅くなる: Ollamaは手軽ですが、多人数同時はvLLMの方が安定。
- 電源・空調・設置: GPUサーバーは消費電力と発熱が大きい。常時稼働の前提で設置場所を確保。
- 更新・バックアップ運用: モデル更新やユーザー管理、ログの扱いを最初に決めておく。
まず何から
- 自社の「同時利用人数」と「扱いたいモデルサイズ」を見積もる
- それに合うGPUを選ぶ(実測の速度は検証DBで確認)
- 小さく1台で始め、足りなければvLLM+複数GPUへ拡張
本格的な構築・運用設計や、自社データでのRAG導入を相談したい場合は、Link Fieldへどうぞ。GIS・現場DX・ローカルAI導入の実務に対応しています。巨大モデルを動かす際の現実はKimi K2.7級・大規模AIの現実にまとめています。