AWS Certified Generative AI Developer - Professional 資格対策コース

CI/CD パイプラインと GenAI ゲートウェイ

生田 陸人
LuaGate エンジニア / 現役エンジニア
編集 LuaGate編集部

このレッスンで学ぶこと 対応試験ドメイン D2 タスク 2.3.5(CI/CD と GenAI ゲートウェイ)。GenAI アプリのデプロイ自動化を AWS CodePipeline・AWS CodeBuild・AWS CDK で構成し、複数チーム/アプリからの基盤モデル利用を一元統制する GenAI ゲートウェイ(共通アクセス層)の役割を理解できるようになります。

解説

GenAI アプリも通常のアプリと同様に、コードとインフラを自動でテスト・ビルド・デプロイする CI/CD が必要です。さらに、組織で複数チームが FM を使うようになると、アクセス・コスト・監査を一元化する GenAI ゲートウェイが重要になります。試験では「どの AWS サービスでパイプラインを組むか」「ゲートウェイで何を統制するか」が問われます。

CI/CD の構成サービス

サービス役割
AWS CodePipelineデプロイの流れ(ステージ)をオーケストレーションする CD パイプライン
AWS CodeBuildソースのビルド・テスト・パッケージングを実行
AWS CDKインフラをコード(TypeScript/Python 等)で定義し CloudFormation を生成

典型的な流れは「ソース変更 → CodeBuild でビルド/テスト → CDK で生成したテンプレートをデプロイ → CodePipeline が一連を統括」です。CDK を使うと、Bedrock 関連の IAM ロール・Lambda・API Gateway・Knowledge Base 連携などを宣言的に定義し、環境間で再現性のあるデプロイができます。

GenAI 特有の CI/CD 観点

通常のアプリ CI/CD に加え、GenAI では下記の観点が加わります。

観点内容
プロンプトのバージョン管理プロンプトをコードと同様に管理しデプロイ。Bedrock Prompt Management と連携
評価ゲートデプロイ前に Bedrock Model Evaluation 等で品質を確認し、基準未達なら止める
安全側の段階デプロイカナリア/ブルーグリーンで一部に出してから全展開
ロールバック品質劣化時に前バージョンへ戻せる構成

GenAI ゲートウェイ(共通アクセス層)

GenAI ゲートウェイは、複数のアプリ/チームと基盤モデルの間に置く共通アクセス層です。各アプリが直接 Bedrock を叩くのではなく、ゲートウェイ経由にすることで次の統制を一元化できます。統制できる項目は下記のとおりです。

統制項目内容
一元的な認証認可チーム/アプリ単位のアクセス制御
レート制限・クォータチームごとの利用上限、コスト暴走の抑制
コスト配賦・利用計測どのチームがどれだけ使ったかを集計
監査ログ誰がどのモデルを呼んだかを一元記録
モデル抽象化裏側のモデル差し替えをアプリから隠蔽

ゲートウェイは単一の製品名ではなく設計パターンです。AWS では Amazon API Gateway(認証・スロットリング・計測)と AWS Lambda(ルーティング・前後処理)を組み合わせて実装するのが一般的で、Amazon Bedrock AgentCore Gateway もツール公開の文脈で関連します。試験では「ゲートウェイで一元化する統制項目」を押さえるのが要点です。

コード例(CDK でデプロイ対象を宣言する抜粋)

CDK でインフラをコード化する雰囲気の最小例です。CodePipeline からこの synth/deploy を実行します。

TypeScript

import * as cdk from "aws-cdk-lib"; import * as lambda from "aws-cdk-lib/aws-lambda"; const app = new cdk.App(); const stack = new cdk.Stack(app, "GenAiGatewayStack"); new lambda.Function(stack, "RouterFn", { runtime: lambda.Runtime.PYTHON_3_12, handler: "router.handler", code: lambda.Code.fromAsset("src/router"), });

試験で問われるポイント

  • CodePipeline / CodeBuild / CDK の役割分担。流れの統括は CodePipeline、ビルド/テスト実行は CodeBuild、インフラのコード定義は CDK。これらの混同が問われる
  • GenAI ゲートウェイは設計パターン。単一サービス名ではなく、API Gateway + Lambda 等で実装する共通アクセス層。一元化する統制(認証・レート制限・コスト配賦・監査・モデル抽象化)が頻出
  • GenAI CI/CD では「デプロイ前の評価ゲート」「品質劣化時のロールバック」「カナリア/ブルーグリーン」という安全側のデプロイが問われる
  • 各アプリが個別に Bedrock を直叩きすると、コスト統制・監査・モデル差し替えが分散して破綻しやすい。ゲートウェイで集約するのが正解になりやすい

サービスの使い分け早見表

やりたいこと使うもの混同しやすいもの
デプロイの流れ(ステージ)を統括AWS CodePipelineAWS CodeBuild(ビルド/テスト実行が役割)
ビルド・テスト・パッケージングAWS CodeBuildCodePipeline(オーケストレーション役)
インフラをコードで定義AWS CDKCloudFormation を手書き(CDK が生成・抽象化)
複数チームの FM 利用を一元統制GenAI ゲートウェイ(API Gateway + Lambda)各アプリが Bedrock を直叩き(統制が分散)

まとめ

GenAI アプリの CI/CD は、流れの統括を AWS CodePipeline、ビルド/テストを AWS CodeBuild、インフラ定義を AWS CDK で構成します。GenAI 特有の評価ゲート・ロールバック・段階デプロイも組み込みます。複数チームの FM 利用は GenAI ゲートウェイ(Amazon API Gateway + AWS Lambda で実装する共通アクセス層)に集約し、認証・レート制限・コスト配賦・監査・モデル抽象化を一元化するのが定石です。

次のステップ

次のクイズレッスンで、CI/CD サービスの役割分担と GenAI ゲートウェイの統制項目を問うシナリオ問題に挑戦しましょう。

関連レッスン

  • セキュアアクセス(ID フェデレーション・RBAC・最小権限)(pro-secure-access)
  • FM API 統合(同期・非同期・ストリーミング)(pro-api-sync-async)
  • レジリエントな API(バックオフ・フォールバック・ルーティング)(pro-api-resilience)