mcpField
A
aws-genai-ml-architect

aws-genai-ml-architect

github.com/awslabsクラウド・DevOps6878 回インストール4 週間前に更新
リポジトリ

aws-genai-ml-architect について

医療・ライフサイエンス向けの AWS 生成 AI・ML アーキテクチャ推論スキルです。PHI、臨床上のリスク、データ形式、ワークロード要件に基づき、サービスやコンプライアンス、MLOps の方針を検討します。デプロイコマンドや IaC テンプレートは提供しません。

主な機能

  1. 01Bedrock と SageMaker の比較
  2. 02データ形式に応じた構成パターン
  3. 03PHI のセキュリティとコンプライアンス評価
  4. 04臨床モデルの監視と承認計画
  5. 05推論方式とコストの検討

活用シーン

  1. 01臨床テキスト要約や文献 RAG の設計
  2. 02PHI を使うモデル学習の計画
  3. 03医療画像推論方式の選択
  4. 04臨床リスクモデルの MLOps 構築

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/awslabs/hcls-agent-skills --skill aws-genai-ml-architect

インストール後、Claude Code で/aws-genai-ml-architectを入力して読み込まれたか確認します。

同梱ファイル.gitkeep

詳細

AWS GenAI/ML アーキテクト(HCLS)

概要

このスキルでは、ヘルスケアおよびライフサイエンス(HCLS)のワークロードにおける AWS の GenAI と ML のアーキテクチャ上の判断について、エージェントが推論する方法を説明します。CLI コマンドや IaC テンプレートを指定するものではなく、経験豊富な HCLS クラウドアーキテクトがサービスを選択し、コンプライアンスを徹底し、よくある落とし穴を避けるために使う判断フレームワークをまとめています。具体的な IaC やデプロイ成果物が必要な場合は、このスキルをパイプラインスキルと組み合わせてください。

HCLS ワークロードは、すべての判断に大きく影響する次の 3 つの制約によって、一般的な ML ワークロードと区別されます。HIPAA に基づく PHI の取り扱い、臨床出力におけるハルシネーションの高いコスト、そしてコーディングの変更、施設のオンボーディング、季節的なケアパターンによって生じる分布シフトです。あらゆる段階で、これらを念頭に置いてください。

使用方法

ユーザーが次のようなアーキテクチャレベルの質問をした場合に、このスキルを呼び出してください。

  • 「臨床記録の要約には Bedrock と SageMaker のどちらを使うべきですか?」
  • 「AWS で医学文献を対象にした RAG を構築するにはどうすればよいですか?」
  • 「全スライド画像に適した推論パターンは何ですか?」
  • 「PHI を安全に使ってモデルをトレーニングするにはどうすればよいですか?」
  • 「臨床リスクモデル向けの MLOps スタックはどのようなものにすべきですか?」

次の順序で判断してください。

  1. 臨床/科学的なユースケースと PHI の露出範囲を明確にします。
  2. サービス選択フレームワークを適用します。
  3. 対象モダリティに応じた HCLS アーキテクチャパターンを重ね合わせます。
  4. セキュリティとコンプライアンスの判断ポイントを徹底します。
  5. MLOps、モニタリング、コストに関する考慮事項を追加します。
  6. 最終決定の前に、よくある間違いを明らかにします。

ユーザーがペイロードサイズ、レイテンシ SLO、PHI のステータス、規制上の方針を指定していない場合は、前提を明示してください。

回答形式

  • 直接的な推奨または分類を冒頭に示します(3 文以内)。
  • 次の順序で構成します。推奨事項 → 根拠(具体的な基準/しきい値を引用)→ 注意点
  • 比較には表を、基準の一覧には箇条書きを使用します。
  • ユーザーがすでに知っている背景情報は省略します。ユーザーは質問への回答を求めています。
  • 目安は 200~400 語です。ただし、ユーザーが網羅的な説明を求めた場合は除きます。

このスキルに含まれる判断ツリーとフレームワークは、内部での推論専用です。結論を導くために使用し、回答にそのまま再掲しないでください。根拠を添えた最終的な推奨事項のみを提示してください。

コアコンセプト

  • PHI と匿名化済みデータ:PHI を扱うには、HIPAA 対応サービス、署名済みの BAA、より厳格な分離が必要です。匿名化済みデータや合成データでは一部の制御を緩和できますが、後続工程で再識別されるリスクは引き続き評価する必要があります。
  • 基盤モデル(FM)とカスタムモデル:FM は汎用的で、迅速に導入でき、トークン数または呼び出し回数に応じて課金されます。カスタムモデルは特定のドメインに特化し、トレーニングデータと運用が必要で、コンピューティング時間に応じて課金されます。
  • 同期・非同期・バッチ推論:適切なエンドポイントの種類は、モデルサイズだけでなく、レイテンシ SLO、ペイロードサイズ、トラフィック形状によって決まります。
  • グラウンディングと生成:誤った回答が患者に危害を及ぼしたり、規制上のリスクを招いたりする可能性がある場合、臨床出力は取得可能な情報源(RAG、構造化検索)に基づく必要があります。
  • 分布シフトは例外ではなく、常態です:医療データは、ICD コーディングの更新、新しい施設、季節、ケアパスの変更のたびにシフトします。初日からこれを考慮した設計にしてください。

サービス選択フレームワーク

最初の判断には、次の基準を使ってください。

  • Bedrock が適している場合:

    • 基盤モデルをそのまま使用する場合(要約、抽出、テキストに関する質疑応答)
    • Knowledge Bases または Agents を使って RAG を構築する場合
    • PII/PHI のマスキングや有害性に対するマネージドガードレールが必要な場合
    • トレーニング、エンドポイント、GPU 容量を管理したくない場合
  • SageMaker が適している場合:

    • 独自の臨床データまたはオミクスデータを使ったカスタムトレーニングやファインチューニングを行う場合
    • 特化型モデル(医療画像 CNN、カスタム NER、生存モデル)を使う場合
    • コンテナ、ネットワーク、インスタンスタイプを完全に制御する必要がある場合
    • モデルレジストリや承認ワークフローを備えた MLOps パイプラインを構築する場合
  • 両方 が適している場合:

    • FM が非構造化テキストを処理し、カスタムモデルが構造化リスクをスコアリングする場合
    • FM による要約と特化型分類器を組み合わせたアンサンブルを構築する場合
    • 臨床テキストでトレーニングしたカスタム埋め込みモデルを使って RAG の検索を行う場合

経験則として、テキスト中心のユースケースでは、まず Bedrock から始めてください。FM の精度、コスト、レイテンシー、またはデータレジデンシーの制約がある場合に限り、SageMaker に移行してください。

HCLS アーキテクチャパターン

モダリティに応じてパターンを選択してください。

  • 臨床記録の要約/抽象化:小規模で指示調整済みの FM、臨床医がレビューしたプロンプトテンプレート、PHI のマスキングと禁止トピック向けに設定した Bedrock Guardrails を組み合わせます。 必ず、記録内の該当箇所を示す出典スパンの引用を含めてください。

  • 医学文献/ガイドラインの RAG:OpenSearch Serverless をバックエンドとする Bedrock Knowledge Bases を使用します。固定のトークンウィンドウではなく、意味のあるセクション(抄録、方法、結果、ガイドラインの推奨事項)ごとにチャンク化してください。臨床医はセクション単位で推論するため、固定長のチャンクでは表や投与指針が分割されます。追跡可能性を確保するため、出典のメタデータ(PMID、ガイドラインのバージョン、公開日)を保存してください。

  • 病理画像と放射線画像の推論:全スライド画像や DICOM ボリュームには、SageMaker 非同期エンドポイントを使用します。ペイロードはリアルタイムエンドポイントの制限を超え、推論時間も同期 SLO を超えます。エンドポイントを呼び出す前に、SageMaker Processing ジョブで前処理(タイル分割、リサンプリング)を行ってください。

  • ゲノミクスのパイプライン:カスタムワークフローには、Step Functions がオーケストレーションする SageMaker Processing ジョブを使用します。ワークフローがマネージド WDL/Nextflow 実行モデルに適合する場合は HealthOmics を使用します。クエリ可能なゲノムデータには、HealthOmics のバリアントストアとアノテーションストアを使用してください。

  • 創薬と分子モデリング:大規模な構造予測モデルや物性予測モデルの分散トレーニングには SageMaker HyperPod を使用します。分子の説明、文献のマイニング、化学に関する質疑応答には Bedrock を使用します。精度が不可欠な最終的な物性予測には、決して Bedrock を使用しないでください。

  • アンビエント臨床文書作成:文字起こしの後処理と構造化記録の生成には Bedrock を使用し、ガードレールを適用したうえで、EHR で人間が承認するようにします。

データアーキテクチャ

データの形状とアクセスパターンに応じて、ストアを選択してください。

  • FHIR 臨床データ → HealthLake。FHIR ネイティブのクエリと統合 NLP に対応しています。ML トレーニング用に S3 にエクスポートします。
  • 観察研究/請求データの研究 → Redshift または Athena 上の OMOP CDM。標準語彙により、公開済みの表現型定義を再利用できます。
  • ゲノミクス → VCF、BAM、CRAM、FASTQ の信頼できる唯一の情報源として S3 を使用します。ガバナンスには Lake Formation、アドホッククエリには Athena、インデックス付きアクセスには HealthOmics のストアを使用します。
  • 医療画像 → 生の DICOM には S3、インデックス付きの部分画像アクセスと推論パイプラインとの統合には HealthImaging を使用します。
  • 非構造化ドキュメント(PDF、スキャンした記録)→ 抽出には S3 と Textract を組み合わせ、その後、構造化された出力を上記の適切なストアに振り分けます。

全体にわたる共通要素:分析者のペルソナをまたいだきめ細かなアクセス制御には Lake Formation を使用し、単一のメタデータプレーンとして Glue Data Catalog を使用します。

セキュリティとコンプライアンス

コンプライアンスは最後に確認するチェックリストではなく、必須のゲートとして扱います。

  • HIPAA BAA:PHI に関わるワークフローでは、AWS の HIPAA 対象サービス一覧に掲載されているサービスのみを使用します。ログやモニタリングの送信先も含め、アーキテクチャ内のすべてのサービスについて対象かどうかを確認します。
  • ネットワーク分離:PHI を扱うワークロードは、インターネットへのアウトバウンド通信がないプライベートサブネットで実行します。S3、SageMaker、Bedrock、KMS、CloudWatch の VPC エンドポイントを使用します。PHI を扱うトレーニングジョブとエンドポイントでは、SageMaker のネットワーク分離を有効にします。
  • 暗号化:S3、EBS、SageMaker ボリューム、Bedrock Knowledge Base のベクトルストアには、カスタマー管理 KMS キーを使用します。転送中のデータは TLS 1.2 以降で暗号化します。復号できるのは意図したロールのみとなるよう、キーのポリシーを制限します。
  • 監査と検知:CloudTrail(PHI を含むバケットのデータイベントを含む)、設定変更を検知する AWS Config ルール、脅威を検知する GuardDuty を使用します。Bedrock のモデル呼び出しログを S3 または CloudWatch に記録する設定を有効にします。有効にしないと、FM に何が入力され、何が返されたかを再構成できません。
  • IAM:最小権限を適用し、PHI を含むバケットや KMS キーにワイルドカードを使用しません。データサイエンティスト、トレーニングジョブ、推論エンドポイントには個別のロールを割り当てます。環境をまたいでロールを共有しないでください。
  • 匿名化:ユースケースで許可される場合は、トレーニング前に匿名化します。その方法(セーフハーバー、専門家による判定)を文書化し、判定の証拠を保管します。

明示しておくべきコンプライアンス上の判断事項:

  • 入力、出力、プロンプト、ログのいずれかに PHI が含まれますか?含まれる場合、経路上のすべてのサービスが HIPAA 対象であり、BAA の適用対象である必要があります。
  • FM プロバイダーは PHI を参照しますか?Bedrock モデルが対象リージョンにあること、および呼び出しログが CMK で暗号化されていることを確認します。
  • ワークロードはアカウントやリージョンをまたぎますか?BAA の適用範囲とデータ所在地に関するコミットメントを再確認します。

HCLS の MLOps

臨床モデルは時間の経過とともに劣化します。ドリフトを前提とし、それに備えて設計します。

  • モニタリング:データ品質、モデル品質(ラベルが得られた場合)、バイアスのドリフトを SageMaker Model Monitor で監視します。集計値だけでなく、施設および保険者ごとの特徴量分布を追跡します。
  • 分布シフトの監視対象:ICD および CPT のコード更新、EHR テンプレートの変更、新しい施設の導入、季節性疾患のパターン、フォーミュラリーの変更、ケアパスウェイへの介入。
  • モデルレジストリと承認:すべての臨床モデルを、明示的な承認状態とともに SageMaker Model Registry に登録します。モデルカードの完成、バイアス評価、臨床面での承認を昇格の条件とします。
  • 実験の制約:患者を対象とするランダム化オンライン A/B テストには、通常 IRB の承認が必要です。シャドーモードでの評価、または人間が介在してレビューするチャンピオン/チャレンジャー方式を標準とします。トラフィックを切り替える前に評価設計を文書化します。
  • 再現性:コンテナイメージ、トレーニングデータのスナップショット(S3 のバージョニング)、ハイパーパラメーターをレジストリで固定します。再構築できないモデルは、規制当局に対して説明できません。
  • インシデント対応:本番稼働前に、デプロイ済みの臨床モデルごとにロールバック基準とキルスイッチを定義します。

コスト最適化

正確性とコンプライアンスを確保してから最適化します。

  • トレーニング:耐障害性のあるトレーニングにはスポットインスタンスを使用します。チェックポイントの作成は必須です。これを行わないと、スポット中断によってコンピューティングリソースが無駄になります。長時間実行する分散ジョブでは、セットアップコストを分散するために HyperPod を使用します。
  • 推論の形式:
    • リアルタイムエンドポイント:レイテンシーが約 60 秒未満で、トラフィックが安定しており、ペイロードが約 6 MB 未満の場合。
    • 非同期エンドポイント:大きなペイロード(WSI、DICOM ボリューム、長文書)や、推論に時間がかかる場合。
    • サーバーレス推論:コールドスタートを許容できる、急増または断続的なトラフィックの場合。
    • バッチ変換:大規模コホートのオフラインスコアリングの場合。
  • ストレージ:アクセスパターンが不明な研究データセットには S3 Intelligent-Tiering を使用します。コンプライアンス上保持が必要な医用画像やゲノミクスデータのアーカイブには、Glacier へのライフサイクルポリシーを設定します。
  • Bedrock:抽出や分類には小型のモデルを優先し、オープンエンドな生成には大型のモデルを使用します。臨床的に安全な場合は、検索結果をキャッシュします。

判断ツリー

適切な選択肢が明らかでない場合は、次の手順に沿ってユーザーを案内します。

臨床テキストの処理

  1. テキストに対するタスクは抽出、要約、または Q&A ですか? → Bedrock。
  2. 特殊なタスク(カスタム NER スキーマ、大規模な匿名化、ドメイン固有の分類器)ですか? → 臨床モデルをファインチューニングした SageMaker。
  3. PHI が含まれますか? → 選択するサービスにかかわらず、「セキュリティとコンプライアンス」の必須要件を適用します。

PHI を使用したトレーニング

  1. VPC 内の SageMaker トレーニングジョブを使用し、プライベートサブネットのみを利用します。
  2. ジョブでネットワーク分離を有効にします。
  3. 入力 S3、トレーニングボリューム、出力アーティファクトに KMS CMK を使用します。
  4. 最初から最後まで、BAA の対象となるリージョンとサービスを使用します。
  5. インターネットへの送信を禁止し、使用するすべての AWS API に対して VPC エンドポイントを使用します。

推論パターンの選択

  1. レイテンシーの SLO が数秒未満で、ペイロードが小さいですか? → リアルタイムエンドポイント。
  2. ペイロードが大きい(WSI、DICOM、長いレポート)、または推論に時間がかかりますか? → S3 の入力と出力を使用する非同期エンドポイント。
  3. トラフィックが急増する、または少量ですか? → サーバーレス推論。
  4. オフラインでコホート全体をスコアリングしますか? → バッチ変換。

臨床または科学的コンテンツに対する RAG

  1. コンテンツは安定しており、適切に構造化されていますか? → OpenSearch Serverless を使用する Bedrock Knowledge Bases。
  2. 固定トークン数ではなく、セクション単位でチャンクに分割します。表と投薬情報のブロックを保持します。
  3. すべての回答に引用を必須とし、根拠のない回答は拒否します。
  4. コーパスに PHI が含まれる場合、ベクトルストア、埋め込みモデル、FM がすべて HIPAA の適用対象であり、BAA の対象となっていることを確認します。

このスキルを使用しない場合

  • HCLS 以外のワークロード — このスキルのコンプライアンスガイダンス(HIPAA、BAA、FDA SaMD)は、汎用アプリケーションには適用されません
  • コスト見積もりや料金の確認 — AWS Pricing Calculator を使用してください。このスキルはアーキテクチャパターンを対象としており、請求は扱いません
  • デプロイ済みの既存アーキテクチャのレビューや監査 — このスキルは新しいシステムを設計します。既存のシステムには Well-Architected Reviews を使用してください

よくある間違い

  • 誤り: カスタムモデルが必要な問題に Bedrock を使用する 正解: 精度が不可欠でラベル空間が狭い場合は、ファインチューニングした分類器を SageMaker で使用します 理由: 制約のあるタスクでは、基盤モデル(FM)は適切にラベル付けされたドメイン分類器より性能が劣り、信頼性の低い臨床出力を生成します

  • 誤り: 1 週間でリリースできる場面で SageMaker を使用する 正解: 汎用的な要約や抽出タスクには Bedrock から着手し、精度、コスト、データレジデンシーの要件によって必要になった場合にのみ SageMaker に移行します 理由: 一般的な NLP タスクのために特注のインフラストラクチャを構築すると、エンジニアリングの時間を何カ月も浪費します

  • 誤り: RAG パイプラインで医学文献を固定サイズのチャンクに分割する 正解: 意味上のセクション(抄録、方法、結果、ガイドラインの推奨事項)ごとに分割し、表や用量の記載部分はそのまま保持します 理由: 固定サイズのチャンクでは用量表、禁忌事項、ガイドラインの推奨事項が分断され、検索品質が損なわれます

  • 誤り: 全スライド画像にリアルタイムエンドポイントを使用する 正解: WSI や DICOM ボリュームには SageMaker の非同期エンドポイントを使用します 理由: WSI のペイロードはリアルタイムエンドポイントのサイズ制限を超え、推論時間は同期タイムアウトの SLO を超えます

  • 誤り: Bedrock の呼び出しログ記録を有効にし忘れる 正解: Bedrock のモデル呼び出しログ記録は、CMK 暗号化を使用して S3 または CloudWatch に必ず有効化します 理由: ログがなければ、基盤モデルに何を入力し、何が返されたかを再構成できず、コンプライアンスとデバッグの両面で問題になります

  • 誤り: PHI のトレーニングジョブでパブリックサブネットやインターネットへの送信経路を使用する 正解: PHI のワークロードはインターネットへの送信経路がないプライベートサブネットで実行し、すべての AWS API に VPC エンドポイントを使用します 理由: データ自体が転送中に暗号化されていても、HIPAA が求める分離の要件に違反します

  • 誤り: PHI バケットにワイルドカード IAM ポリシーを使用する 正解: IAM ポリシーの対象を特定のリソースとアクションに限定し、環境と利用者の役割ごとにロールを分けます 理由: 過剰な権限を持つ単一のロールは、アーキテクチャ内の他のあらゆるセキュリティ制御を弱体化させます

  • 誤り: チェックポイントを設定せずにスポットインスタンスでトレーニングする 正解: トレーニングジョブでスポットインスタンスを使用する場合は、必ずチェックポイントを有効にします 理由: スポットインスタンスが中断されると、最後のチェックポイント以降の進捗はすべて失われます。その結果、オンデマンドより高くつくことも少なくありません

  • 誤り: IRB の承認を得ずに患者を対象としたランダム化オンライン A/B テストを実施する 正解: シャドーモードでの評価、または人間が介在してレビューするチャンピオン/チャレンジャー方式を基本とします 理由: 患者を対象とするランダム化実験は人を対象とする研究に該当するため、IRB の承認なしでは規制違反となります

  • 誤り: 全体の精度が低下するまで分布シフトを無視する 正解: SageMaker Model Monitor を使用し、初日から施設および支払者レベルで特徴量の分布を監視します 理由: 全体指標に変化が表れる頃には、施設単位での被害がすでに発生している可能性があります

  • 誤り: 匿名化すればデータ取り扱いに関する義務がすべてなくなると思い込む 正解: 匿名化の方法(Safe Harbor または Expert Determination)を文書化し、再識別のリスクと契約条件を評価します 理由: 匿名化後も再識別のリスクや契約上の義務が残ることはよくあります

  • 誤り: 共有 KMS キーを使用して、開発環境と本番環境を 1 つの AWS アカウントに混在させる 正解: 開発環境と本番環境は別々のアカウントに分け、独立した KMS キーと IAM 境界を設定します 理由: 共有アカウントで何らかのミスが起きた場合、その影響範囲には本番環境の PHI も含まれます

人間の専門家へのエスカレーションが必要な場合

次の場合は、人間によるレビューを推奨してください。

  • ユースケースが、臨床医によるレビューを介さずに治療の判断に直結する場合。
  • FDA SaMD の分類または 21 CFR Part 11 の管理策が必要なワークロードで、それらを確認できない場合。
  • データの保存場所、国境を越えるデータ移転、または複数の管轄区域にまたがる PHI の規則が適用される場合。
  • 安全性が重要な臨床アウトプットに新しい FM を提案しており、対象集団を対象とした公開済みの評価がない場合。

このような場合は、アーキテクチャを作成し、未解決の規制上および臨床上の質問を列挙したうえで、実装に進む前に作業を止めてください。

参考資料

コメント