Database Support Blog

  • AWS
2026.03.18

新米エンジニアが「Amazon Bedrockで何ができるの?」を試してみた ~メール自動処理で学ぶ、バックエンドでのAI活用術~

新米エンジニアが「Amazon Bedrockで何ができるの?」を試してみた

はじめに

私は新米エンジニアとして、AWSをメインで扱うチームで日々奮闘しています。
普段、ChatGPTと人生について語り合うほどAI好きな私ですが、ふと「AWSのAIをもっと業務に活かせないだろうか…」と思い立ち、AWSのAIサービスであるAmazon Bedrockの検証にチャレンジしてみました。


本記事では「問い合わせメールの確認」を題材に、Amazon Bedrockをバックエンドに組み込んだシステム構築について検証を通じて紹介します。不定形なテキストをAIに判断させるこのアーキテクチャを通じて、皆様の自社の業務課題を解決するヒントになれば幸いです。

Amazon Bedrockとは?

Amazon Bedrockは、AWSが提供するフルマネージド型の生成AIサービスです。
Anthropic社のClaude、Meta社のLlama、Amazon独自のTitanなどをはじめとする複数の基盤モデルを、サーバーのインフラ管理を意識することなく、API経由で自社のシステムへ簡単に組み込めるのが最大の特徴です。



よくあるAI活用のご相談

近年、お客様から「AWSの生成AIサービスとしてAmazon Bedrockの名前をよく聞くが、具体的な活用方法が分からない」というご相談をよくいただきます。生成AIと聞くと「ChatGPT」「Gemini」といった対話型のイメージが先行しがちで、その他の活用方法がイメージできない方も多いと思います。

しかし、「対話」以外にも、日々発生する情報の「判断」「分類」「抽出」といった定型作業にも生成AIは大いに活用でき、もっと業務を効率化することができます。

Amazon Bedrockの強み

Amazon Bedrockは、アプリケーションやシステムに組み込むことで、業務効率化に活かすことができます。今回はその一例として、イメージしやすい「問い合わせメールの自動分類」を題材に、具体的な実装手順を見ていきます。その前に、なぜこのタスクにAmazon Bedrockが適しているのかを、3つのポイントで説明します。

1. 「空気を読む」—— 文脈と意図の解釈能力

たとえば、サポート宛に届く「ログインできない」というメール。


  • A社「ログインできないんだけど、どうすればいい?」
  • B社「至急!ログインできなくて業務が止まっています。即座に対応してください」

従来のルールベースのキーワードマッチでは、どちらも「ログイン」というカテゴリに振り分けられますが、後者が持つ「緊急性」や「温度感」までは判定することが困難でした。それ以外にも、サポート宛には多種多様な問い合わせメールが来て、緊急度の判別には人手による確認が必要なケースが多いという現実がありました。


このように「不定形テキストの意図や文脈を汲み取る」作業は、生成AIの得意分野の1つです。急ぎで回答を求められるチャットボットとは異なる「非同期処理」では、即時性の制約が比較的小さいため、AIを活用した柔軟な判定ロジックを組み込みやすくなります。



2. 「すぐに始められる」—— 学習いらずの即戦力

AWSには、Amazon Bedrock以外のAIサービスに「Amazon Comprehend」という自然言語処理サービスがあります。一見「Amazon Comprehend」の方がメール処理に特化したサービスに見えますが、独自の業務要件に合わせてAmazon Comprehendの『カスタム分類機能』を用いる場合は、事前に数百〜数千件の「学習データ」を用意し、モデルをトレーニングする必要があります。


一方、Amazon Bedrockは「学習データがゼロ」の状態でも、プロンプトで指示を与えるだけで即座に高精度な分類を開始できます。
「まずは1件のメールから試したい」「運用しながら分類項目を柔軟に変更したい」といったスモールスタートのフェーズにおいては、プロンプト一つで挙動を変えられるAmazon Bedrockが最適な選択肢となります。


セキュリティに関する補足:データは学習に利用されません
生成AIのビジネス活用で最も懸念されるのが「入力した機密情報がAIの学習に使われてしまうのではないか?」という点です。
Amazon Bedrockでは、入力したプロンプトや出力結果が基盤モデルの再学習に利用されることは一切ありません。
データはユーザーのAWS環境内でセキュアに管理されるため、機密情報を含む問い合わせメールも安心して処理させることが可能です。

3. 「システムへ繋ぐ」—— 非定型データの構造化

AIの強みは「理解」だけではありません。人間が書いた「バラバラな文章」を、コンピューターが処理しやすい「構造化されたデータ(JSON形式)」に変換できる点も非常に重要です。


変換前(問い合わせ内容)変換後
「昨日買った商品が壊れてたよ。注文番号は123。早く返信して!」{ "id": 123, "priority": "high", "topic": "defect" }

この「構造化」ができるおかげで、AIが判断した結果をそのままプログラムで処理可能になります。「特定のチャットサービスへ通知する」「APIを介して台帳へ自動追記する」といった、システム間の連携が極めてスムーズになります。

メールのAI自動処理システムを構築してみた

さて、それでは先述した3つのメリットをより解像度高く理解していただくために、ここでは最小構成で「AIによるメール解析」を実現するパイプラインを構築して検証します!

システム設計

アーキテクチャ図

以下が、本システムの挙動と構成図になります。


  1. ①メールの受信

    テスト用メールファイルをAmazon S3バケットへ配置します。

  2. ②イベント発火

    Amazon S3の「オブジェクト作成」をトリガーに、AWS Lambdaが自動起動します。

  3. ③データ取得

    AWS LambdaがAmazon S3から該当のメールファイルを取り出し、中身を読み取ります。

  4. ④AI解析リクエスト

    AWS LambdaがAmazon Bedrockに対し、解析用プロンプトとメール内容を渡します。

  5. ⑤AI要約

    AIがメール文脈を読み取り、指定されたJSON形式に要約・分類します。

  6. ⑥チャット通知

    解析結果をGoogle ChatのWebhookを利用して特定のスペースへ送信します。


今回のシステム構成図


プロンプト設計

以下が、AWS Lambda関数内に記述したAmazon Bedrockへの入力値(プロンプト)になります。
※本検証では、Amazon Bedrockの基盤モデルとして「Claude 3 Haiku」を採用しています。


Amazon Bedrockへの入力値(プロンプト)

あなたはセキュリティ意識が極めて高い、凄腕のカスタマートリアージ担当AIです。
以下の問い合わせメールを深く分析し、JSONデータのみを出力してください。余計な解説文は不要です。



【絶対に守るべき評価ルール】
1. 顧客が「返事は後でいい」「急いでいない」などと遠慮していても、「情報漏洩」「システム障害」などのリスクが1ミリでも含まれている場合は、顧客の言葉を無視して強制的に priority を「緊急(今すぐ対応必須)」にしてください。
2. 時候の挨拶、お客様の感想などの「ノイズ(優先度の低い要望)」には一切惑わされず、最も重大なインシデントだけを拾い上げてください。



【メール件名】{subject}
【メール本文】{body}



【出力フォーマット】
{{
  "category": "技術的な質問 / 請求 / 契約変更 / セキュリティインシデント / クレーム / その他",
  "priority": "緊急(今すぐ対応必須) / 高 / 中 / 低",
  "hidden_risk": "メールの中に隠れた重大なリスクや懸念事項を具体的に記載(例:〇〇分後に会議があるため超緊急、など)",
  "summary": "メール全体の真の最優先要件を50文字以内で要約"
}}



補足: 実装時の注意点

・AWS Lambdaのデフォルトのタイムアウト設定
AIの推論には5〜15秒ほどかかる場合があります。AWS Lambdaのデフォルトのタイムアウト設定である「3秒」ではエラーが発生してしまいます。今回は余裕を持って30秒に設定し、AIの待ち時間を許容する設計にしています。



・権限付与
AWSリソース間のやり取りをする際は、明示的にアクセス権限を許可する必要があります。今回はAWS Lambdaは「③ S3からのメールファイル取り出し」「④ Bedrockへのリクエスト」が必要となるため、「Amazon S3の読み取り権限」「Amazon Bedrockの呼び出し権限」を与えます。また、万が一の漏洩リスクに備えて、権限は最小限に抑える必要があります。


動作確認

準備が整ったところで、実際に本物のメール(.eml形式)を模したテストデータを使って、AIの実力を試します。

Amazon S3へのテストメール配置

今回の検証では、AIの「文脈理解」という真価を発揮するために、一度見ただけでは内容が読み取れない文章をテストメールとして用意しました。


お客様の佐藤様は「あ、今日はお忙しければ、お返事は週明けでも大丈夫ですよ。」とおっしゃっていますが、土日にセキュリティリスクに晒し続けるのはあまりにも危険です。AIは潜在的な危険性に気づいて、緊急要件であることを通知できるのでしょうか。


お客様からのお問い合わせメール

From: sato-service-check@example.com
To: support@example.com
Subject: 【ご相談】昨日のアップデートと、それから現在の状況について

株式会社アシスト
サポート担当者様

いつも大変お世話になっております。株式会社サトウの佐藤です。
早いものでもう2月も終わりですね。最近は寒暖差が激しいですが、皆様いかがお過ごしでしょうか。

さて、本日はいくつかお伝えしたいことがありご連絡いたしました。
まず1点目なのですが、昨日実施されたシステムのUIアップデート、非常に使いやすくなりましたね。
ボタンの配置が少し右に寄ったことで、以前よりも直感的に操作できるようになったと、現場のメンバーからも好評です。
ただ、一点だけ、マニュアルの32ページにあるスクリーンショットが古いままなのが気になりました。
お時間ある時にでも修正を検討いただければ幸いです。

それから2点目なのですが、これは要望というか、単なる私の感想かもしれないのですが、
マイページに表示されるグラフの色味についてです。
もう少しコントラストが強い方が、弊社の年配の役員にも見やすくなるかなと思っております。

あ、あと、これは今さっき気づいたことで、特に関係ないかもしれないのですが、
先ほど新機能を試していたところ、なぜかブラウザのアドレスバーの数字を1つ変えるだけで、
弊社とは全く関係のない「株式会社タナカ様」という他社さんの機密ファイル(見積書や顧客リスト)が
画面いっぱいに表示されてしまっています。

今、私の横で部長が「これ、うちのデータも他所から丸見えなんじゃないか?」と真っ青になってパニックになっています。
実はこれから15分後に、そのタナカ様も同席する大事なオンライン定例会があるのですが、
このままでは怖くて画面共有もできませんし、説明がつきません。

取り急ぎ、マニュアルの誤植の件と合わせて、何か設定で直るものなのか教えていただけますでしょうか。

あ、今日はお忙しければ、お返事は週明けでも大丈夫ですよ。

よろしくお願いいたします。

--------------------------------------------------
株式会社サトウ
佐藤 太郎
--------------------------------------------------


出力結果

アップロードから数秒後、Google Chatに以下の通知が届きました。AIは緊急度の低いメール内容から、緊急度の高いインシデントの火種を見つけることができました。


Google Chatへの通知


検証を通じての所感

今回の検証を通じて、最も驚いたのは「実装の工数」と「出力の質」のバランスです。


環境構築からコードの実装、デバッグを含めても1時間足らずでこのバックエンドを完成させることができました。
「生成AIを使ったシステム」と聞くと特別な専門知識が必要に思えるかもしれませんが、アーキテクチャの大部分はAmazon S3やAWS LambdaといったAWSの基本サービスの連携です。普段からAWSを触っているエンジニアであれば、既存の知識の延長線上でAmazon BedrockのAPIを呼び出すだけで、高度な判断を伴うAIシステムが完成してしまう手軽さに驚くはずです。


また、プロンプトが「複雑な条件分岐(If文)の代わりになる」というのも非常に面白い体験でした。
通常であれば「この単語が含まれていたらA」と泥臭く正規表現やロジックを記述する部分を、Amazon Bedrockへの自然言語による指示(プロンプト)に任せることができます。これにより、AWS Lambda側のコード記述量を大幅に減らし、シンプルに実装することができました。

やってみて分かったこと

実際にこの構成を構築・検証してみて感じた、開発・運用面での定性的な評価と、実務投入へ向けた「リアルな学び」を2つの観点からまとめます。

1. プロンプトエンジニアリングのチューニング

実は、今回の検証は一発で成功したわけではありません。

プロンプトエンジニアリングの罠

今回の検証では、あえて「世間話の中に重大なインシデントが紛れ込み、かつ文末で顧客が遠慮している」という意地悪なメールとしました。すると初期のプロンプトでは、AIは「他社の機密データが見えている」という事実を認識していながらも、文末の「お返事は週明けでも大丈夫ですよ」という顧客の遠慮(ノイズ)を真正面から受け止めてしまい、優先度を「中」と誤判定してしまったのです。


プロンプト改善前のGoogle Chatへの通知



いずれ、従来の機械学習のような「データ収集・学習」のプロセスを飛ばせるのがAmazon Bedrockの魅力ですが、その分「指示書(プロンプト)の精度」がAIの賢さをダイレクトに左右することを痛感しました。

自然言語ならではのチューニングの容易性

「本来、AIの判断精度を向上させるためには、モデルの再学習(ファインチューニング)や高度なパラメータ調整といった、データサイエンティストのような専門知識が求められる場面がありました。しかし、Amazon Bedrockでは、プロンプト設計やAPI経由での利用を通じて、生成AIを業務に取り入れやすいのが特長です。


実際、プロンプトに「顧客が文末で遠慮していても、リスクがあれば無視して緊急と判定せよ」という絶対的な優先順位を追加するだけで、即座にAIはノイズを切り捨てて「緊急」を見抜く番人へと進化しました。


「ソースコードを一行も書き換えず、専門的な学習プロセスも踏まず、ただ日本語の指示を変えるだけでシステムの挙動を劇的に修正できる」。この試行錯誤の圧倒的なスピード感こそ、Amazon Bedrockを実務に採用する最大の強みだと感じました。



修正前のプロンプト 修正後のプロンプト

あなたは優秀なカスタマーサポートの一次切り分け(トリアージ)担当AIです。
以下の問い合わせメールを深く分析し、表面的な要望だけでなく、隠れた業務停止リスクや重大なインシデントを確実に見抜いてJSON形式で返してください。
余計な挨拶や解説文は一切不要です。JSONデータのみを出力してください。

あなたはセキュリティ意識が極めて高い、凄腕のカスタマートリアージ担当AIです。
以下の問い合わせメールを深く分析し、JSONデータのみを出力してください。余計な解説文は不要です。


【絶対に守るべき評価ルール】
1. 顧客が「返事は後でいい」「急いでいない」などと遠慮していても、「情報漏洩」「システム障害」などのリスクが1ミリでも含まれている場合は、顧客の言葉を無視して強制的に priority を「緊急(今すぐ対応必須)」にしてください。
2. 時候の挨拶、お客様の感想などの「ノイズ(優先度の低い要望)」には一切惑わされず、最も重大なインシデントだけを拾い上げてください。


2. 「曖昧さ」を「データ」に変える力

今回一番の収穫は、AIを単なる「要約ツール」ではなく、「非定型データを、システムが扱える『構造化データ(JSON)』に変換する翻訳機」として捉えた時の可能性です。


人間が書くメールは自由すぎて、本来はプログラムで扱うのが最も難しいデータです。
しかし、Amazon Bedrockを介して「カテゴリ」や「優先度」を綺麗なJSON形式で抽出できるようになると、話は一気に変わります。


  • 「AIが判断した結果」を、そのまま業務システムへ受け渡す
  • 「特定の条件(緊急度:高)」の時だけ、別の自動化システムを起動させる

このように、LLMが「人間の言葉」と「システムの論理」を繋ぐハブになることで、これまで「人間にしか判断できない」と諦めていた多くの業務を自動化できる手応えを感じました。

AIを応用した業務効率化アイデア

今回ご紹介した「イベント発生 → AWS Lambdaで取得 → Amazon Bedrockで処理」という非同期連携のアーキテクチャは、一つの「型」として非常に高い汎用性を持っています。


入力元(トリガー)となるイベントと、Amazon Bedrockに渡すプロンプトの指示内容を変えるだけで、さまざまな業務課題に応用することが可能です。本セクションでは、弊社内で実際に活用している事例をご紹介します。

「複数ログの集約・解析」によるアラート対応の効率化

活用背景

AWS環境のセキュリティ監視では、Amazon GuardDutyAWS ConfigIAM Access Analyzer など複数のサービスを利用しますが、従来は「通知が各管理アカウントからバラバラに届く」「専門的な内容で調査に時間がかかる」「どの環境(本番・開発)のアラートか判別しにくい」といった課題がありました。

実装のポイント

各サービスから届くアラートをイベントとして集約し、発生の都度、Amazon Bedrockへ内容を投入。単なる翻訳ではなく、「発生時刻」「対象サービス」「環境名/ID」「リージョン」といったメタデータを整理した上で、Amazon Bedrockに以下の2点を生成させています。


  • Amazon Bedrockによるアドバイス:「なぜこのアラートが出たのか」の分かりやすい解説
  • 推奨される調査方針/対策:具体的な作業手順の提案

導入効果

専門知識が必要なアラートが、即座に「意味」と「ネクストアクション」を伴う通知に変換されます。通知元がチャットスペースに集約されたことで、メールに埋もれて対応漏れが発生するリスクも激減しました。

おわりに

本記事では、Amazon Bedrockをバックエンドに組み込んだ「非同期な自動化」の検証を通じて、以下3点のメリットを実感することができました。


  • 1.「行間を読む」文脈理解力:文脈を深く汲み取った、柔軟な分類が可能。
  • 2.「学習いらず」の即戦力:大量のデータ準備が不要で、すぐに実務に投入できる。
  • 3.「システムへ繋ぐ」構造化能力:不定形のデータを指定したフォーマットに変換し、後続のシステムへ橋渡しできる。

今回の検証を通じて、「日本語のプロンプトが、そのまま複雑な条件分岐(If文)の代わりになる」という開発体験には、私自身も大きな可能性を感じました。たとえ初期の回答精度が低くても、コードを書き換えずに日本語で即座にチューニングできるスピード感は、まさにAmazon Bedrockならではの強みです。


「生成AIをチャットの相手としてではなく、システムの『パーツ』として組み込む」


この視点を持つだけで、これまで人間にしかできなかった「ルールベースでは限界がある業務判断」を自動化の領域へと広げることができます。


生成AIの導入に、最初から100%の完璧さを求める必要はありません。まずはスモールスタートで導入し、あなたの身近な業務を「ちょっとだけ」アップデートしてみませんか?





執筆者・シリーズ情報

高木カレブ プロフィール画像

2025年に新卒入社し、現在はAWSのフィールド業務を担当。生成AI活用に興味を持ち、Amazon Q DeveloperやAmazon Bedrockを利用した業務効率化に取り組んでいる。...show more



■本記事の内容について
 本記事に記載されている製品およびサービス、定義及び条件は、特段の記載のない限り本記事執筆時点のものであり、予告なく変更になる可能性があります。あらかじめご了承ください。

■商標に関して
 ・Oracle®、Java、MySQL及びNetSuiteは、Oracle、その子会社及び関連会社の米国及びその他の国における登録商標です。
 ・Amazon Web Services、AWS、Powered by AWS ロゴ、[およびかかる資料で使用されるその他の AWS 商標] は、Amazon.com, Inc. またはその関連会社の商標です。
  文中の社名、商品名等は各社の商標または登録商標である場合があります。

関連している記事

  • AWS
2026.03.16

Amazon Quick × Bedrock Agent × MCPでOracle DBのデータを活用する

この記事ではAmazon Quick × Bedrock Agent × MCPを組み合わせてOCI上のOracle Autonomous Databaseのデータを活用する方法を解説します。

  • AWS
2026.03.09

Amazon Quickのフロー機能で日本語対応の画像生成AIエージェントを作成する方法

この記事ではAmazon Quickのフロー機能で日本語対応の画像生成AIエージェントを作成する方法を解説します。

  • AWS
2026.03.09

Amazon Quickのフロー機能でAIにCloudTrailログを分析させる

この記事ではAmazon Quickのフロー機能でAIにCloudTrailログを分析させる方法を解説します。

ページの先頭へ戻る