小ネタ。 Bedrockには一部の基盤モデルにおいてプロンプトキャッシュという機能があります。2025年7月5日時点では、ClaudeとAmazon Novaのいくつかが対象となっています。 docs.aws.amazon.com 何でもかんでもキャッシュされるわけではなく、プロンプトのト…
先日開催されたAWS Summit 2025に参加してきました。 aws.amazon.com そこで知ったものとして、Serverless dbless RAGがあります。 github.com 早速動かそうとしていたのですが、cdk deploy時に以下のエラーが出て動きませんでした。 5:23:28 AM | CREATE_FA…
引き続きSpring AIとAmazon Bedrockの実装を進めます。 Bedrockの機能の一つにTool Useという機能があります。 docs.aws.amazon.com Function callingとも呼ばれている機能なのですが、平たくいうと事前に定義している関数を生成AIが任意に呼び出すことがで…
はじめに AWS上でSQSをLambdaのトリガーにして何らかの処理をさせることは定番の構成かと思います。私が目にするシステムでもSQSとLambdaを組み合わせた例は多く見るのですが、先日この構成にてトラブルの話があったのでここにその例を記します。 事象:SQS…
今日は小ネタ。引き続きSpring AI。 先日の記事の中でBedrockの設定を使ってログの取得というのをやりました。 同様のことがSpring AIでもできます。 実装はChatClientを作る際にdefaultAdvisorsの引数にSimpleLoggerAdvisorのインスタンスを指定してあげる…
はじめに 先日、GAになったばかりのSpring AIを使ってBedrockを対象としたアプリを実装した記事を記しました。 miyohide.hatenablog.com 今回は、上の記事の考察に記したChat Memoryを実装してみました。 Chat Memoryを使わない場合 Chat Memoryを使わない場…
はじめに 先日、Spring AIが1.0となりGAしたというニュースを目にしました。 spring.io 早速、Amazon Bedrockを対象に実装してみることにしました。 前提 今回は以下の環境で試しました。 us-east-1リージョン EC2インスタンス上にSpring AIアプリを動かす …
はじめに AWS Lambdaにおいてコンソール上でテストを実施する際、テストイベントを利用します。 docs.aws.amazon.com このテストイベントをコンソール上で作成するのはちょっと面倒くさいのでなんとかできないかなと思っていたのですがCDKで実装できることを…
はじめに CDKでAWSのリソースを作成することをよくやっているのですが、最近ベストプラクティスに沿っているかどうかを機械的にチェックできないかという話を受けました。調べたところ、cdk-nagというものを見つけました。 github.com 少し古いですがAWSのブ…
はじめに 少し前の更新情報なのですが、AWS LambdaがApplication SignalsによるJavaのAPMを追加したという更新がありました。 aws.amazon.com 環境構築が面倒くさいなと思っていたのですが、実際やってみると思いのほか簡単にできたので、実装例を紹介します…
先日、DynamoDBのローカル版を試すという記事を書きました。 miyohide.hatenablog.com これを元にDynamoDBの操作を学習し、AWS SDKを使ったプログラムを実装していたのですが、ローカル版とAWS環境とではまったポイントがあったので紹介しておきます。 発生…
AWSの特徴的なサービスの一つにDynamoDBがあります。いわゆるNoSQLサービスなのですが、個人的にはちょっと触る機会がありませんでした。一念発起して触ることにしたのですが、いきなりAWS上に作るのも気が引けたので何か良い方法がないかなと思っていたとこ…
以前、Amazon Q Developerを検証した記事を以下に公開しました。 miyohide.hatenablog.com この記事を書いた時点ではプロンプトは英語だけだったのですが、先日日本語にも対応したということが公開されました。 aws.amazon.com 実際にやってみました。 Chat…
Lambda関数を動かしていたとき、なにか挙動がおかしいなと思っていたらタイムアウトが発生していたということが最近ありました。処理中に明確な例外があればCloudWatch Logsに吐いているログにてエラーログが出ますが、タイムアウトの場合はタイムアウトのメ…
はじめに 先日、RDSに対してIAM認証の設定をしたのですが、手作業で作業をやったこともあり思いのほか手こずったので、CDKをつかって実装してみることにしました。 今回実装したのは、IAM認証を有効にしたRDS(PostgreSQL)とそれをメンテナンスするプライベ…
先日、AWS 認定ソリューションアーキテクト – プロフェッショナル(SAP-C02)を受験し、無事合格しました。 約3年前にSAP-C01を受験して合格していたので今回で再認定となります。 miyohide.hatenablog.com 試験勉強 SAP-C01に合格していたので、差分だけち…
AWS CloudShellで操作をしていたら、Amazon Q CLIが使えるようになっていました。調べてみると去年10月には使えるようになっていたみたいです。 aws.amazon.com 実際に叩いてみるとこんな感じ。 Amazon Q CLIの活用事例として、AWSブログに以下の記事が公開…
先日、以下のブログ記事を拝読しました。 note.com 昔、ちょっと試した時には遅くて開発環境しか使えないなという印象を持っていたのですが、Rails 8になってだいぶ変わったようです。 そこで、ECS FargateにてRails 8アプリを動かし、データベースとしてEFS…
多くのクラウドは従量課金制な料金体系であることが多いので、定期的にどれぐらい料金がかかっているかを確認することは重要です。ちょっと困るのは、リアルタイムで「このサービスを使っているからXXX円かかっています」というような情報を得る手段はなく、…
はじめに コンテナ化したアプリを動かす際に、ファイル出力をしたいというニーズをちょくちょく聞きます。特に既存のアプリケーションに対して、なんとかコンテナ化まではできたが、ファイル出力する仕様までは変更することができなく、どうしたら良いかとい…
先日、AWS Certified Machine Learning - Specialty(MLS)を受験し、合格することができました。 先日、以下のブログで試験対策メモを記しましたが、具体的にどのような対策をしたのかを記します。 miyohide.hatenablog.com miyohide.hatenablog.com 公式練…
AWS Certified Machine Learning - Specialty(MLS)を受験することになりました。全然馴染みがなかった分野なので、用語も何もわからず。日本語での参考書っぽいものも見当たらなかったので、個人的に勉強した内容のことを以下にまとめます。 この記事では…
AWS Certified Machine Learning - Specialty(MLS)を受験することになりました。全然馴染みがなかった分野なので、用語も何もわからず。日本語での参考書っぽいものも見当たらなかったので、個人的に勉強した内容のことを以下にまとめます。 この記事ではS…
今日は小ネタ。 Session ManagerにてLinux系OSのEC2にログインすると、初期ユーザはssm-userとなります。 これだと何かと不便なので、ログイン後はsudo su --login ec2-userを実行してec2-userになっていました。 毎回これを手打ちするのも面倒くさいなと思…
先日、AWS SDK for Javaを使ったプログラムに対してMockitoを使ったテストの書き方を記しました。ちょっと面倒だなと思っていたのですが、AWS SDK for Ruby v3ではSDK自身にダミーのデータを返す機能があるということをたまたま知りました。 具体的にはAws::…
AWS SDKを使っていろいろとAWSに対して処理を書くことが多いのですが、テストコードを書く際にAWSリソースとのやりとりの部分のテストコードを書くことにどうすれば良いかわからないことがあります。 今回は、AWS SDK for Java v2を使ったS3を操作するコード…
AWS Lambdaにはさまざまな制約がありますが、その中の一つに環境変数のサイズがあります。 docs.aws.amazon.com 上記ドキュメントを読めば書いていますが、すべての環境変数の合計が4KB=4,096バイトを超えない必要があります。一つの環境変数の値が4KBを超…
はじめに 今日は小ネタ。昨年、CodePipelineにてECRへのPushがアクションとしてサポートされました。 aws.amazon.com 個人的にはちまちまCodeBuildを使って実装することが多いのですが、設定ファイルの書き方などを毎回忘れるので、GUI操作だけで設定できる…
はじめに 先日からPostgreSQLのRow Level Securityを使ったマルチテナントアプリケーションを実装することをやっています。 miyohide.hatenablog.com 上の記事では直接curlでテナントIDを指定していましたが、今回はAmazon Cognitoのユーザー属性に追加した…
はじめに 今日は小ネタ。だらっとAWSの新着情報を眺めていたら、VPCのブロックパブリックアクセスというものがリリースされていました。 aws.amazon.com 実験 簡単に実験してみます。 適当なVPCを作成したのち、VPCの画面を下にスクロールすると一番下に「設…