本文へスキップ
Starone

これらは一般化したパターンです。実際の設計はお客様の要件と制約から出発し、多くの場合、少なくとも1つの重要な点でパターンから離れます。

本番AIアプリケーションの構造

本番AIアプリケーションの構造
  1. ユーザー

    • Webアプリ
    • モバイルアプリ
    • チャットUI
    • 社内ツール
  2. アプリケーション層

    ID、権限、ユーザー体験を担う層

    • セッション管理
    • アクセス制御
    • レスポンスストリーミング
    • フィードバック収集
  3. AIオーケストレーション層

    プロンプト、ツール、ポリシーをバージョン管理しテストする層

    • プロンプト管理
    • ツール呼び出し
    • ガードレール
    • モデルルーティング
  4. モデル / エージェント

    • ホスト型LLM
    • セルフホストモデル
    • タスクエージェント
    • 埋め込みモデル
  5. ナレッジ・データ層

    検索は呼び出し元の権限に従う

    • ベクトルインデックス
    • ドキュメントストア
    • リレーショナルデータ
    • セマンティックキャッシュ
  6. 業務システム / API

    • ERP・CRM
    • IDプロバイダー
    • 社内API
    • ドキュメントリポジトリ
  7. インフラ・オブザーバビリティ

    トレース、コスト、品質をリクエスト単位で計測

    • Kubernetes
    • GPU・APIキャパシティ
    • トレーシングと評価
    • コスト監視
本番AIシステムにおいて、ユーザーとモデルの間にある層を示します。エンジニアリングの労力の大半は、モデル呼び出しそのものではなく、オーケストレーション、ナレッジ、統合、オブザーバビリティに費やされます。

AIエンジニアリングのライフサイクル

AIエンジニアリングのライフサイクル
  1. 01

    データ

    ソースの収集・整備・ラベル付け・統制

  2. 02

    モデル

    モデルの選定・適応・バージョン管理

  3. 03

    オーケストレーション

    プロンプト、検索、ツール、ガードレール

  4. 04

    アプリケーション

    プロダクト画面とシステム統合

  5. 05

    評価

    オフラインテストセットとオンラインレビュー

  6. 06

    オブザーバビリティ

    トレース、コスト、レイテンシ、ドリフト

本番AIシステムが必ず通る6つの段階です。評価とオブザーバビリティの結果がデータとモデルに還元されるため、一度きりの引き渡しではなく、継続的なループになります。

検索拡張生成(RAG)パイプライン

検索拡張生成(RAG)パイプライン

取り込み

  1. 01

    ソース

    ドキュメント、データベース、社内API

  2. 02

    パースとチャンク化

    構造を保ったままテキストを抽出

  3. 03

    埋め込み

    バッチ処理、モデルはバージョン管理

  4. 04

    インデックス化

    ACL付きのベクトル・キーワードインデックス

クエリ

  1. 01

    質問

    認証済みユーザーとそのアクセス範囲

  2. 02

    検索

    ベクトルとキーワードのハイブリッド検索

  3. 03

    リランキング

    最も関連性の高いパッセージのみ残す

  4. 04

    生成

    引用付きの根拠ある回答

  5. 05

    評価と記録

    トレース、スコア、フィードバックを記録

取り込み処理では、企業コンテンツをあらかじめ検索可能な状態に整えます。クエリ経路では、検索とリランキングを経て、使用したパッセージを引用した回答を生成し、そのやり取りを評価用に記録します。

人による承認を組み込んだエージェント型ワークフロー

人による承認を組み込んだエージェント型ワークフロー

推論

  1. 01

    トリガー

    イベント、スケジュール、ユーザー要求

  2. 02

    計画

    目標を範囲の限られたステップに分解

  3. 03

    ツール呼び出し

    型付きツールによる読み取り専用の参照

  4. 04

    アクション案

    根拠を添えた変更の提案

統制下の実行

  1. 01

    ポリシーチェック

    上限、権限、リスク評価

  2. 02

    人による承認

    影響の大きいアクションで必須

  3. 03

    実行

    対象システムへの冪等な書き込み

  4. 04

    検証

    結果を確認し、再試行またはロールバック

  5. 05

    監査

    全ステップを記録し、再生可能に

エージェントは計画を立て、読み取り専用ツールで根拠を集めたうえでアクションを提案します。書き込みはポリシーチェックを通り、影響が大きい場合は人による承認を経てから実行され、監査記録が残ります。

マイクロサービスアーキテクチャ

マイクロサービスアーキテクチャ
  1. クライアント

    • Webアプリ
    • モバイルアプリ
    • パートナー連携
  2. APIゲートウェイ / BFF

    • ルーティング
    • 認証
    • レート制限
    • レスポンス整形
  3. ドメインサービス

    各サービスが1つの境界づけられたコンテキストを担う

    • 注文
    • 決済
    • カタログ
    • アカウント
    • 通知
  4. 非同期メッセージング

    • Kafkaトピック
    • アウトボックス発行
    • イベントコンシューマー
    • デッドレターキュー
  5. データストア

    サービスごとにデータベースを持ち、テーブルは共有しない

    • サービス別PostgreSQL
    • Redisキャッシュ
    • 検索インデックス
    • オブジェクトストレージ
  6. プラットフォーム

    • トレーシングとメトリクス
    • ログの集中管理
    • CI/CDパイプライン
    • サービス設定
ゲートウェイの背後に、独立してデプロイできるサービスを配置します。各サービスは自身のデータを所有し、同期呼び出しが不要な箇所ではイベントで連携します。これだけ多くの可動部品を運用可能にするのがプラットフォーム層です。

イベント駆動アーキテクチャ

イベント駆動アーキテクチャ

プロデューサー

  1. 01

    コマンド

    サービスがリクエストを処理

  2. 02

    ローカルトランザクション

    状態とアウトボックス行を同時にコミット

  3. 03

    アウトボックスリレー

    ポーリングかログ追跡で取得し発行

  4. 04

    発行

    スキーマバージョン付きのキー付きイベント

ブローカー

  1. 01

    トピック

    イベント種別または集約ごとに1つ

  2. 02

    パーティション

    キー単位で順序を保証

  3. 03

    保持

    過去のオフセットから再生可能

  4. 04

    デッドレターキュー

    失敗し続けるイベントを保持

コンシューマー

  1. 01

    コンシューマーグループ

    パーティションをまたいでスケールアウト

  2. 02

    冪等ハンドラー

    適用前にイベントIDで重複排除

  3. 03

    バックオフ付きリトライ

    一時的な障害に限定

  4. 04

    オフセットコミット

    副作用の成功後に実行

  5. 05

    状態の投影

    リードモデルとキャッシュを更新

プロデューサーはトランザクショナルアウトボックスを通じてイベントを発行し、ブローカーはキー単位で順序を保ち、コンシューマーは各イベントを冪等に適用します。処理できないイベントはパーティションを塞がず、デッドレターキューに退避されます。

フロントエンドのレンダリング戦略

フロントエンドのレンダリング戦略

ビルド時(SSG)

  1. 01

    コンテンツとデータ

    ビルド時にCMS、Markdown、APIを読む

  2. 02

    静的生成

    ページを一度だけHTMLにレンダリング

  3. 03

    CDN

    キャッシュしてエッジから配信

  4. 04

    再検証

    変更時または一定間隔で再生成

リクエスト時(SSR)

  1. 01

    リクエスト

    ユーザー別または最新のデータが必要

  2. 02

    サーバーレンダリング

    データを取得しコンポーネントを描画

  3. 03

    ストリーミング

    シェルを先に送り、遅い部分は後続

  4. 04

    ハイドレーション

    ブラウザでハンドラーをアタッチ

クライアント(SPA)

  1. 01

    クライアント状態

    UI状態と楽観的更新

  2. 02

    API呼び出し

    バックエンドへの型付きリクエスト

  3. 03

    キャッシュ

    重複排除、再検証、無効化

  4. 04

    ナビゲーション

    プリフェッチ付きクライアントルーティング

ページをどこでレンダリングするかによって、速度、鮮度、コストが決まります。多くのプロダクトは3つを併用します。安定したコンテンツには静的生成、パーソナライズされたデータや最新データにはサーバーレンダリング、インタラクションにはクライアント状態を使います。

モバイルアプリケーションのバックエンド

モバイルアプリケーションのバックエンド
  1. モバイルアプリ

    • iOS (Swift)
    • Android (Kotlin)
    • Flutter
    • オフラインデータストア
  2. エッジ

    • CDN
    • APIゲートウェイ
    • 認証
    • レート制限
  3. BFF / モバイルAPI

    可能な限り1画面を1往復で取得

    • 画面単位のレスポンス
    • APIバージョニング
    • 同期エンドポイント
    • フィーチャーフラグ
  4. サービス

    • アカウント
    • コンテンツ
    • 決済
    • メディア処理
  5. データ・通知

    • PostgreSQL
    • Redis
    • オブジェクトストレージ
    • APNs・FCMプッシュ
  6. オブザーバビリティ

    • クラッシュレポート
    • APIトレーシング
    • リリースヘルス
    • クライアント分析
モバイルクライアントはBFF(Backend for Frontend)と通信します。BFFは画面ごとにレスポンスを整形し、サービス側の変更からアプリを保護します。古いバージョンのアプリは市場で使われ続けるため、APIのバージョニングとリリースヘルスもアーキテクチャの一部です。

クラウドプラットフォームアーキテクチャ

クラウドプラットフォームアーキテクチャ
  1. エッジ

    • DNS
    • CDN
    • WAF
    • DDoS対策
  2. ネットワーク

    ワークロードとデータはプライベートサブネットに配置

    • VPC
    • 公開・非公開サブネット
    • ロードバランサー
    • NAT・ピアリング
  3. コンピュート

    • Kubernetes
    • コンテナ
    • サーバーレス関数
    • オートスケーリング
  4. データ

    • マネージドデータベース
    • キャッシュ
    • オブジェクトストレージ
    • メッセージキュー
  5. プラットフォームサービス

    • シークレット管理
    • IAM
    • Infrastructure as Code
    • コンテナレジストリ
  6. オブザーバビリティ・DR

    リストアは想定で済ませず、実際に演習する

    • メトリクスとログ
    • トレーシング
    • バックアップ
    • ゾーン間フェイルオーバー
エッジからリカバリーまでを網羅するクラウド基盤です。各層はコードとして定義されるため、環境を手作業で維持するのではなく、レビューし、再現し、再構築できます。

セキュリティゲートを備えたCI/CDパイプライン

セキュリティゲートを備えたCI/CDパイプライン

ビルドと検証

  1. 01

    コミット

    mainブランチへのレビュー済みマージ

  2. 02

    ビルド

    再現可能、依存関係はバージョン固定

  3. 03

    テスト

    単体・結合・コントラクトテスト

  4. 04

    SAST・依存関係スキャン

    静的解析と依存関係の監査

  5. 05

    イメージスキャンと署名

    レイヤーをスキャンし署名、SBOMを添付

リリース

  1. 01

    ステージング

    同一アーティファクト、本番相当のデータ

  2. 02

    カナリア

    一部のトラフィックでシグナルを監視

  3. 03

    本番

    ゲート付きの段階的ロールアウト

  4. 04

    モニタリング

    SLOで昇格かロールバックかを判断

1つのアーティファクトをビルド、検証、スキャン、署名し、内容を変えずにステージングとカナリアを経て本番へ昇格させます。モニタリングがリリースを昇格させるかロールバックするかを判断し、ループを閉じます。

セキュリティアーキテクチャ:多層防御

セキュリティアーキテクチャ:多層防御
  1. アイデンティティ

    すべてのリクエストを認証・認可する

    • SSO・MFA
    • ロールベースアクセス制御
    • サービスID
    • セッションポリシー
  2. エッジ

    • WAF
    • DDoS対策
    • TLS終端
    • レート制限
  3. アプリケーション

    • 入力検証
    • 認可チェック
    • セキュアSDLC
    • 依存関係スキャン
  4. データ

    • 保存時の暗号化
    • 転送時の暗号化
    • 鍵管理
    • データ分類
  5. インフラ

    • ネットワーク分離
    • ハードニング済みイメージ
    • シークレット管理
    • パッチ管理
  6. 検知・対応

    統制は破られる前提で備える

    • 監査ログの集中管理
    • アラートルール
    • インシデント対応手順書
    • フォレンジック用の保持
1つの統制が破られてもシステムが露出しないよう、統制を重ねます。予防だけで完全になることはないため、アイデンティティを最も外側の統制、検知を最後の統制として位置づけます。

Web3・デジタルアセットインフラ

Web3・デジタルアセットインフラ
  1. アプリケーション・API

    • クライアントアプリ
    • APIゲートウェイ
    • パートナーAPI
    • 運用コンソール
  2. ウォレット・トランザクション

    • アドレス管理
    • トランザクション構築
    • ナンス・手数料制御
    • ポリシーエンジン
  3. 鍵管理

    鍵は署名境界の外に出ない

    • HSM
    • MPC署名
    • 承認クォーラム
    • 鍵ローテーション
  4. ノード / RPC層

    • フルノード
    • RPCプロバイダー
    • フェイルオーバー経路制御
    • メモリプールアクセス
  5. インデックス・分析

    チェーンデータはファイナリティに達するまで暫定扱い

    • ブロック取り込み
    • イベントデコード
    • リオーグ(再編成)処理
    • クエリAPI
  6. 監視・コンプライアンス

    • トランザクション監視
    • アドレススクリーニング
    • 監査証跡
    • アラート
デジタルアセットプロダクトを支えるオフチェーンシステムです。スマートコントラクトは全体のごく一部にすぎず、運用リスクの大半はカストディ、ノードアクセス、インデックス、モニタリングにあります。

モダンデータプラットフォーム

モダンデータプラットフォーム

取り込みと保存

  1. 01

    ソース

    データベース、SaaS、イベント、ファイル

  2. 02

    取り込み

    バッチ、CDC、ストリーミング

  3. 03

    生データストレージ

    不変のランディングゾーン

  4. 04

    レイクハウス

    オープンテーブル形式またはウェアハウス

  5. 05

    カタログ

    スキーマ、リネージ、オーナーシップ

変換と提供

  1. 01

    変換

    バージョン管理しテストしたSQLモデル

  2. 02

    品質チェック

    鮮度、件数、スキーマのテスト

  3. 03

    BIへの提供

    ダッシュボードと統制された指標

  4. 04

    APIでの提供

    アプリケーション向けデータプロダクト

  5. 05

    MLと埋め込み

    特徴量とベクトルインデックス

  6. 06

    ガバナンス

    アクセスポリシー、マスキング、監査

データは業務系のソースから統制されたストレージへ移され、バージョン管理されテストされたモデルによって変換され、分析、アプリケーション、機械学習へ提供されます。ガバナンスは最後だけでなく、経路全体に適用されます。

高性能トランザクションプラットフォーム

高性能トランザクションプラットフォーム
  1. チャネル

    • Web
    • モバイル
    • パートナーAPI
    • バッチファイル
  2. APIゲートウェイ

    • 認証
    • レート制限
    • 冪等性キー
    • リクエスト署名
  3. トランザクションサービス

    JavaとSpring Boot、ステートレス、水平スケール

    • 支払い開始
    • オーソリゼーション
    • 台帳への記帳
    • 限度額とリスク
  4. Kafkaイベント基盤

    • トランザクションイベント
    • アウトボックスリレー
    • パーティション分割トピック
    • デッドレタートピック
  5. 台帳DB・Redis

    正となるのは台帳であり、キャッシュではない

    • 複式簿記台帳
    • リードレプリカ
    • 残高キャッシュ
    • 分散ロック
  6. 照合(リコンサイル)・監査

    • 決済照合
    • 不一致の検出
    • 不変の監査ログ
    • レポート出力
  7. モニタリング

    • レイテンシ・エラーのSLO
    • コンシューマーラグ
    • トレーシング
    • ビジネスアラート
台帳を唯一の信頼できる情報源とし、すべての状態変化をイベントとして記録し、照合(リコンサイル)によって両者の一致を独立に確認するよう設計したトランザクション経路です。

マルチテナントSaaSアーキテクチャ

マルチテナントSaaSアーキテクチャ
  1. テナント対応エッジ

    • カスタムドメイン
    • テナント解決
    • WAF
    • テナント別レート制限
  2. アイデンティティ・SSO

    • SAML・OIDC
    • SCIMプロビジョニング
    • ロールと権限
    • MFA
  3. コントロールプレーン

    テナントを管理し、テナントのトラフィックは処理しない

    • テナントライフサイクル
    • プランとエンタイトルメント
    • 課金とメータリング
    • フィーチャーフラグ
  4. アプリケーションプレーン

    • ステートレスサービス
    • バックグラウンドジョブ
    • テナントコンテキスト
    • Webhook
  5. データ分離

    分離モデルはプラン階層ごとに選択

    • 行レベルセキュリティ
    • テナント別スキーマ
    • 専用データベース
    • テナント別の鍵
  6. テナント別オブザーバビリティ

    • 利用状況メトリクス
    • テナントタグ付きトレース
    • ノイジーネイバーアラート
    • 監査ログ
コントロールプレーンがテナント、プラン、課金を管理し、アプリケーションプレーンがテナントにサービスを提供します。テナントの識別はエッジで解決され、データストアとテレメトリーに至るすべての層へ引き継がれます。

現実資産(RWA)トークン化のフロー

現実資産(RWA)トークン化のフロー

オフチェーン

  1. 01

    資産オンボーディング

    法的ストラクチャーと関連文書

  2. 02

    投資家KYC

    本人確認と適格性の確認

  3. 03

    資産レジストリ

    所有権と権利の記録

  4. 04

    照合(リコンサイル)

    レジストリとチェーン状態を突合

  5. 05

    レポーティング

    明細、監査、開示

オンチェーン

  1. 01

    トークン発行

    登録済み資産に対してミント

  2. 02

    許可リスト

    確認済みウォレットのみ保有可能

  3. 03

    移転制御

    コントラクト内でルールを強制

  4. 04

    決済

    支払いと引き換えのアトミックな移転

  5. 05

    ライフサイクルイベント

    分配、償還、バーン

オフチェーンのレジストリが資産と保有者の法的な記録を保持し、オンチェーンのトークンは強制力のある移転ルールのもとでそれを反映します。照合(リコンサイル)によって両者の一致を保ち、その結果をレポーティングに反映します。

本番環境で動くシステムが必要な方へ

構築しようとしているものをお聞かせください。エンジニアが内容を拝見し、2営業日以内にご返信します。