Level 1:生成AIの導入方式を決める
Deployment Strategy
外部API・Managed・Self-hostのどれを選ぶ?
Level 0で、Nortia株式会社の社内ナレッジAIに求められる機能要件・非機能要件が固まりました。ここからが最初の技術判断です。
そして最初の判断は、モデル選定でもGPU選定でもありません。「そもそも生成AIを、どこで動かすのか」 です。
1. 現在の企業状況
- 要件は文書化され、経営層の承認も得た
- 評価用の想定質問100件と正解・出典のセットがある
- 予算はPoCフェーズ分のみ確保。本番投資は成果を見て判断される
- AI専任は1人、兼任2人。GPUサーバーの運用経験はない
2. 発生した課題
要件のうち、次の2つが真正面から衝突します。
「機密文書を外部サービスへ送信しない」
×
「AI専任1人+兼任2人で運用できる範囲」
前者を厳密に守るならSelf-hostが視野に入りますが、GPUサーバーの運用経験がない組織にとって運用負荷は跳ね上がります。逆に運用負荷を最小化しようとすれば、外部APIかManagedサービスになり、機密要件との整合を取る必要があります。
「とりあえずSelf-host」から始めない
社内AIの構築記事は、Self-hostを前提に書かれているものが多くあります。しかしSelf-hostは常に優れた選択ではありません。GPU調達、モデル更新、障害対応、性能監視のすべてが自社の責任になります。要件が許すなら、運用を他社に任せられる方式のほうが合理的です。
3. 要件(この判断に関係する部分)
Level 0の非機能要件から、この判断を左右する項目を抜き出します。
| 要件 | 内容 | この判断への影響 |
|---|---|---|
| 機密性 | 人事・法務・未公開の事業計画を含む文書を扱う | データの送信先が決定的な制約になる |
| 性能 | TTFT 2秒以内、回答完了約5秒以内 | ネットワーク経路とキュー待ちが効く |
| スループット | ピーク20〜50人の同時利用 | レート制限・同時実行数の上限が効く |
| コスト | 年間運用費に上限あり | 従量課金と固定費のどちらが有利か |
| 運用 | 専任1人+兼任2人 | 障害対応・モデル更新の負荷が効く |
| 監査 | 質問・参照文書・回答を90日保管 | ログの取得可否と保管場所が効く |
| カスタマイズ性 | 将来のFine-tuning(Level 8)を否定しない | モデルの選択自由度が効く |
4. 選択肢
生成AI導入
│
┌─────────────┼─────────────┐
↓ ↓ ↓
外部API Managed Self-host
ベンダーの クラウド上の 自社GPU上で
APIを利用 マネージド基盤 OSS LLMを稼働
| 方式 | 具体例 | 責任範囲 |
|---|---|---|
| 外部API | 各社が提供する商用LLMのAPI | 利用のみ。モデルも基盤もベンダー側 |
| Managed | Amazon Bedrock等のマネージドLLMサービス | モデル選択とアプリ実装。基盤は事業者 |
| Self-host | GPUサーバー+OSS LLM(vLLM / SGLang / Ollama) | モデル・推論基盤・ハードすべて自社 |
5. 技術比較
Level 0の要件から導いた8つの判断軸で評価します。
| 判断軸 | 外部API | Managed(Bedrock等) | Self-host |
|---|---|---|---|
| 機密性 | △ 事業者のポリシーに依存 | ○ 自社アカウント内で完結させやすい | ◎ 社内ネットワークから出さない |
| データ送信先 | 社外(越境の可能性あり) | クラウド事業者のリージョン内 | 自社データセンター内 |
| Latency | ○ ネットワーク経由。安定性は事業者依存 | ○ リージョン選択で短縮可能 | ◎ 経路が短い。ただし実装依存 |
| 利用量への耐性 | △ レート制限とコストが利用量に比例 | ○ クォータ調整が可能 | ◎ ハードの上限まで追加課金なし |
| 運用能力 | ◎ ほぼ不要 | ○ アプリ運用が中心 | △ GPU・推論基盤・モデル更新まで自社 |
| カスタマイズ | △ 提供された範囲 | ○ 提供モデルの範囲で調整可能 | ◎ モデル・量子化・Servingまで選べる |
| モデル選択自由度 | △ 事業者のラインナップ | ○ 複数ベンダーのモデルから選択 | ◎ OSSモデル全般 |
| TCO | 利用量比例(少量なら安い) | 利用量比例(運用費込みで見ると割安) | 初期投資が大きく、利用量が増えるほど有利 |
TCOは「単価×トークン数」だけではない
Self-hostの比較で最も間違えやすいのがコストです。GPUの購入費だけを外部APIの従量課金と比べると、Self-hostが有利に見えます。実際には次を積む必要があります。
| 費目 | 外部API / Managed | Self-host |
|---|---|---|
| モデル利用 | トークン単価×利用量 | なし(ハードの償却に含まれる) |
| ハードウェア | なし | GPUサーバー購入費 or クラウドGPUの時間課金 |
| 設置・電力・空調 | なし | データセンター費用または社内設置コスト |
| 運用工数 | 小 | 障害対応・モデル更新・性能監視の人件費 |
| 待機コスト | なし(使った分だけ) | 利用が少ない時間帯もGPUは確保され続ける |
| スケール時の追加 | クォータ引き上げで対応可 | GPU追加調達(リードタイムあり) |
利用量が少ないうちは従量課金が有利で、一定量を超えるとSelf-hostが有利という交点が存在します。その交点がどこかは、実測しないと分かりません(Level 4とLevel 9で扱います)。
待機コストという固定費
Nortia株式会社の利用時間帯は8:00〜22:00です。残りの10時間、Self-hostのGPUは基本的に遊びます。従量課金ならゼロになる時間に固定費が発生する——これがSelf-hostの見落とされやすいコストです。
6. 採用判断
Self-hostをPoC対象とし、非機密領域ではManagedを併用するハイブリッドを前提に進めます。
決め手になったのは、8軸のうち1つ、機密性です。
要件:人事・法務・未公開の事業計画を含む文書を扱う
機密文書を原則として外部LLMへ送信しない
↓
外部API → 要件を満たせない(社外送信が前提)
Managed → 契約・リージョン・ネットワーク構成次第では成立しうる
Self-host → 要件を最も素直に満たす
↓
まずSelf-hostをPoCし、実現可能性を実測で確認する
他の7軸ではSelf-hostは勝っていない
運用能力の軸では、Self-hostは明確に不利です(専任1人+兼任2人)。それでも採用するのは、機密性が「満たさなければ導入自体が不可」という制約条件だからです。
判断軸には、比較して優劣を測る軸(トレードオフ)と、満たさなければ失格になる軸(制約)の2種類があります。この2つを混ぜて総合点で決めると、制約を満たさない構成が選ばれます。
併用方針
すべてをSelf-hostにする必要はありません。文書の機密区分で経路を分けます。
| 対象 | 経路 | 理由 |
|---|---|---|
| 人事・法務・未公開の事業計画 | Self-host | 社外送信不可 |
| 公開済み規程・一般的なFAQ・技術ドキュメント | Managed(将来検討) | 機密性の制約がなく、運用負荷を下げられる |
| 社外公開情報の要約など | Managed(将来検討) | 同上 |
併用は「後から足す」設計にする
PoC段階から2経路を実装すると、検証項目が倍になります。まずSelf-host単独で成立させ、アプリケーション側はモデル呼び出しをOpenAI互換インターフェースで抽象化しておく——これが現実的な進め方です。抽象化しておけば、後からManagedを足す判断が実装の作り直しになりません。
7. Architecture
PoCフェーズの論理構成です。まだRAGも権限制御も入っていません。
社員(検証メンバー)
│
↓
┌──────────────────┐
│ 検証用UI │
└────────┬─────────┘
│ OpenAI互換API
↓
┌──────────────────┐
│ 推論サーバー │ ← Level 3で方式を選ぶ
│ (Self-host) │
└────────┬─────────┘
↓
OSS LLM ← Level 2でモデルを選ぶ
↓
GPU ← Level 2でサイジングする
インターフェースをOpenAI互換に固定することが、この構成の設計上の要点です。推論エンジン(Ollama / vLLM / SGLang)を差し替えても、アプリケーション側の変更が不要になります。Level 3で推論方式を比較検討できるのは、ここで抽象化しているからです。
8. 実装
このLevelの実装は「PoC計画の確定」です。
- 検証環境の調達 — 手元で完結するGPU環境を用意する(Level 4のGX-10)
- 抽象化レイヤの決定 — アプリからはOpenAI互換APIのみを呼ぶ
- 検証項目の定義 — 応答時間、同時実行、メモリ使用量、回答品質
- PoC合否基準の合意 — 何が出たら本番投資へ進むのかを、測定前に決める
9. Benchmark / Evaluation
PoCの合否基準を、Level 0の非機能要件から逆算して先に決めます。
| 検証項目 | 合格ライン | 根拠となる要件 |
|---|---|---|
| TTFT | 単一リクエストで2秒以内 | 性能要件 |
| 回答完了時間 | 想定質問で約5秒以内 | 性能要件 |
| 同時実行 | 検証機で同時8リクエストまで応答時間が線形以内 | ピーク20〜50人への外挿元 |
| メモリ | モデル+KV Cacheが検証機の容量に収まる | サイジングの前提 |
| 回答品質 | 想定質問100件で正答率60%以上(RAGなしの素点) | Level 5の改善余地を測る基準 |
| 運用 | 起動・モデル差し替え・ログ取得が手順化できる | 運用要件(専任1人) |
RAGなしで60%という基準
この段階ではまだRAGがないため、社内固有の質問には答えられません。60%という数字は「一般知識で答えられる範囲の質問に、破綻なく答えられるか」を見るものです。ここが低ければ、モデル選定かServing設定に問題があります。RAGを足す前に、素の状態を測っておくことが後の切り分けを容易にします。
10. 残った課題
- どのモデル(パラメータ数・量子化・Dense/MoE)を選ぶかが未決定
- 必要なGPUメモリの見積もり方が分からない
- 推論サーバーをOllama / vLLM / SGLangのどれにするか未検討
- Managed併用の判断は、Self-hostの実測が出るまで保留
11. 次のLevelへ
Level 2:モデルとGPUを理解するでは、「27BモデルだからこのGPU」という短絡ではなく、
Model weights + KV Cache + Batch + Context Length + Runtime = 必要メモリ
というサイジングの考え方を扱います。パラメータ数だけでGPUを選ぶと、同時利用が増えた瞬間にOOMで破綻します。