1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Amazon Bedrock で実現する AWS 最新情報の自動翻訳及び要約・配信システム

1
Posted at

どんなシステム?

AWS What's Newで公開される情報を翻訳、要約してWeb公開、希望の方にはメールで配信するWebシステムです。
https://awsnews.kiwi-cloud.com/
スクリーンショット 2026-09-27 12.20.17.png

なんで作ったの?

AWS What's Newで日本語設定をしていると原文記事(英語)翻訳が完了するまで公式のページで公開されないため、いち早く情報をキャッチアップしたかったのと、毎日ページを見るのが大変だったので、メールで毎日情報を届けてほしかったから。

どんなメールで通知されるのか

以下のように毎日日本時間の8:00に指定のメールアドレスに届きます。

スクリーンショット 2026-09-27 12.12.58.png

利用サービス

本WebシステムはAWSサービスのみで構成しており、下記の用途で各サービスを利用しています。

サービス 用途
Amazon EventBridge 定期実行トリガー(毎時RSS取得 / 毎日8時メール配信)
AWS Lambda RSS取得・AI要約・API処理・メール配信の各ロジック実行
Amazon Bedrock Claude Haiku による記事の日本語要約・ポイント抽出
Amazon DynamoDB 記事・ブックマーク・購読者データの永続化
Amazon API Gateway フロントエンドからのREST API受付
Amazon Cognito ユーザー認証・管理
Amazon SES 購読者へのメール配信・メール認証
Amazon CloudFront フロントエンド静的コンテンツの配信(CDN)
Amazon S3 フロントエンド静的ファイルのホスティング
Amazon Route 53 カスタムドメインのDNS管理
Amazon CloudWatch Lambda実行ログの収集・管理
AWS CloudFormation (SAM) インフラのコード管理・デプロイ

アーキテクチャ図

本システムのアーキテクチャは以下の図の通りです。
会員機能は変更するかもしれません。
今はブックマーク機能を利用したい場合はメールアドレス、パスワード認証が必要としてますが、cookie管理でもいいかも。と思っているので会員機能は消すかもしれません。
メール配信はメールアドレス入力だけで行えるようにしてます!
aws-whatsnew-architecture.drawio.png

どれくらいの利用料がかかっているのか

ほぼ無料枠で収まっています。
記事の要約、翻訳で利用しているClaude Haiku 4.5 (Amazon Bedrock Edition)は一月$0.88でした。
自社専用で作っても月数ドルで収まると思います。
Sonnetだと$5くらいはかかるかもです。Novaは試してないですが、Novaだともっと安いかもしません。

システム作成に使用したAI

Claude Coddeを利用し、Sonnet4.5、Sonnet4.6を利用しました。
システム設計、実装はすべてClaude Codeが行っており、私は要件指示、改善指示のみ実施です。

指示は以下のような指示を行いました。

  • システム全体の要件
    • AWS What's New のRSSフィードを自動取得したい
    • 英語の記事を日本語に要約して見やすくしたい
    • Amazon Bedrock(Claude)で要約する
    • Webサイトとして公開したい
    • インフラは AWS SAM でコード管理したい
  • バックエンド要件
    • Lambda で RSS を定期取得する
    • 取得済み記事は再処理しないよう重複チェックする
    • Bedrock で日本語タイトル・要約・キーポイントを3つに絞って記載
    • 結果を DynamoDB に保存する
    • 記事一覧・詳細を返す REST API を作る
    • API は API Gateway + Lambda 構成にする
  • フロントエンド要件
    • React + TypeScript + Tailwind CSS で作る
    • 記事一覧をカード形式で表示する
    • カテゴリでフィルターできるようにする
    • ブックマーク機能をつける
    • レスポンシブ対応する
    • フロントエンドは S3 + CloudFront で配信する
  • AWS構成などのインフラ要件
    • S3 はパブリックアクセスブロック・OAC 経由のみ
    • カスタムドメイン(awsnews.kiwi-cloud.com)を設定する
    • Route 53 で DNS 管理する
    • メールアドレスだけで購読登録できるようにする(Cognito 不要)
  • メール配信要件(追加で指示)
    • 毎朝8時に前日の新着記事をまとめてメール配信する
    • 解除リンクをメールに入れてワンクリックで停止できるようにする
    • SES で送信する

運用で注意が必要なこと

  • モデルのEOL
    • Haiku 3.5を当初利用していましたが、EOLを迎えたことを気づかず、システムが止まっていました。
    • 対策としてCloudWatchでLambdaエラーを検知しておくといいかもしれません。
  • RSSフィードの仕様変更
    • 特にトラブルが合ったわけではないですが、AWS側のRSSフィードのURLが変わると記事読み込みが止まります。
    • Lambdaエラー監視でも防げないので数日間記事が0件だったらエラーを吐くなどの仕組みが必要かもしれません。
  • DynamoDBの肥大化
    • 過去記事は蓄積するようにしていますが、長期運用すると肥大化するため、料金面、性能面で注意が必要です。
  • Lambdaタイムアウト
    • RSS記事が大量にある状態で実行するとBedrock呼び出しが多数発生してタイムアウトを起こす可能性があります。
    • re:Inventなどの大量発表の時は動作がおかしくなるかもしれません。トラブル時は1回の実行で処理する記事数の上限設定など検討します。
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?