Categories
AngularAWSIonic
この記事は、AWS Amplify ( Gen2 )でIonic Frameworkを利用したAngularアプリケーションをデプロイする方法を紹介しています。「AWS Community Builders Advent Calendar 2024」の9日目記事で、Ionic Frameworkで構築したウェブアプリケーションをAWS Amplifyでホストする手順やAmplify CLIコマンドの使い方などが詳細に説明されています。記事では、Angularを選択し、Amplifyのセットアップからデプロイまでの流れが解説されています。AWS AmplifyやIonic Frameworkの公式ドキュメントも参考にされています。
AI / MLAWSLLM
この記事では、JavaScriptを利用した生成AIチャットの作り方が紹介されています。LangChainやAmazon Bedrock、そしてHonoを使用することで実装が容易になります。また、Honoを使うことで複雑なフロントエンド実装を行う必要がなくなり、AWS Lambdaなどのホスティングサービスの違いに影響を受けにくくなります。技術選定の背景やAPIの実装方法などが詳細に説明されています。
AWS
この記事は、AWS Amplify( gen2 )でのビルド通知について紹介します。Slackでビルド開始や完了・失敗などの通知を簡単に受け取る方法を知りたい方は、ぜひ参考にしてください。
AWSAWS CDK
この記事では、AWS Lambdaで発生したエラーをSlackに通知する仕組みを、AWS CDKで構築する方法を紹介します。Lambdaなどのアプリケーションコードを使わずに通知する仕組みを作ることで、エラー通知システムのデバッグをせずに済む方法を模索しました。
この記事では、AWS CDKを使用してSNSトピックを作成するLambda関数や、SNSトピックおよびEmailのサブスクリプションを作成する方法が紹介されています。CDKを使うことで、手組みの構成を忘れることなくリソースを管理できます。具体的なコードやLambda関数の実装方法も紹介されており、EventBridgeを介してSNSに情報を送信するプロセスも紹介されています。dotenvなどの追加の設定も必要です。
AWSAWS CDKPython
この記事では、Pythonで作成したLambda関数をAWS CDKでデプロイする方法が紹介されています。CDKのセットアップやLambda関数のソースコード配置方法、定義方法などが詳細に説明されています。また、TypeScriptを使用することも可能で、AWS LambdaのPython版に関する情報も参考になります。CLIコマンドの実行やライブラリの追加手順も記事内で紹介されています。
AngularAWSAWS CDK
この記事では、AWS Amplifyを使用してAngularアプリをホスト・デプロイする際の注意点や設定箇所について紹介されています。AWS AmplifyはGitリポジトリからビルド&デプロイできるため、簡単にウェブアプリケーションを公開できます。ただし、Node.jsのバージョンに注意が必要で、設定画面で変更することができます。また、AWS Amplifyの詳細設定にはNode.js以外のツールのバージョン指定もできるため、注意が必要です。
AWS LambdaがCloudWatch Logsに出力するログのフォーマットをJSONに変更可能になりました。CDKを使用してlambda.Functionを作成する際にloggingFormatパラメータを追加することで設定できます。Node.jsアプリの場合もaws_lambda_nodejsを使用し、loggingFormatを設定可能です。ログフォーマットをJSONに変更することで、CloudWatch Logsの設定やJSONデータの取り扱いが容易になります。
AWSJavaScript
Bedrock Knowledge Baseを使用すると、RAGのベースとなるベクターストアを簡単に準備できます。ただし、CMSやECサイトなどでは定期的なデータ更新が必要です。AWS SDKを使用してデータの更新/同期を行う方法を調査しました。データの取り込みはIngestionJobと呼ばれ、StartIngestionJob APIを使用して実行できます。データ量によって取り込みに時間がかかる場合は、ListIngestionJobs APIを使用してIngestion Jobの履歴を取得できます。また、個別のジョブについて詳細を確認するにはGetIngestionJob APIを使用します。データソースはS3に保存されているため、シンプルにジョブを実行できます。App FlowやEventBridge / Step Functionsと組み合わせることでさまざまなことができます。
LLMを使用したアプリの開発では、ユーザーの待ち時間内にインタラクションを作成するために、Streamを使ってレスポンスを処理するのが一般的です。Amazon Bedrockでホストされているモデルを呼び出す際に、Streamでレスポンスを受け取る方法について調査しました。Bedrock Runtime ClientのInvokeModelWithResponseStreamを使用することで、Streamでの受け取りが可能です。ただし、必須項目としてmax_tokens_to_sampleを指定する必要があります。また、Claudeを使用する場合には、「Assistant:」で終わらせる必要があります。