Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
AWS Lambda の Python で pandas や requests を使うのに、Lambda Layer を自作する必要はない - AWS SDK for pandas を活用しようAWSpandaslambdaLambda-Layers 概要 AWS Lambda では、マネージドに提供されている AWS レイヤーがあり、自分でビルドすることなく簡単に利用できる AWS SDK for pandas のマネージドな Lambda Leyer には、 pandas / numpy といったデータ処理系のモジュールや aiohttp / requests といった HTTP リクエスト用モジュールなど、様々なモジュールがバンドルされている (一覧は後述) AWS Lambda でこれらのモジュールを使用する方法として、多くの記事では Lambda Layer を自作する方法や第三
Building an Open, Multi-Engine Data Lakehouse with S3 and Python The idea of open, multi-engine data lakehouses is gaining momentum in the data industry. Here is what has happened in the last six months alone. Last week, the data community was abuzz when AWS announced Iceberg-based S3 Tables at this year's re:Invent. In October, Snowflake launched a managed service for Iceberg metadata catalogs ca
こんにちはイワツカです。 今年の夏は、特に猛暑日が続いていたので、例年にも増して素麺を食べてました。 さて今回は、AWS Lambda(Python)でLambda Web Adapterを用いてレスポンスストリーミングする方法を試してみたので紹介します。 1. 概要 1.1 レスポンスストリーミングとは? 1.2 Lambda Web Adapterとは? 2. アプリ作成 2.1 実行環境 2.2 ディレクトリ構成 2.3 FastAPIの実装 2.4 Streamlitの実装 3. アプリを動かして見る 3.1 チャットアプリをデプロイ 3.2 Streamlitを起動する 3.3 チャットを試してみる 4. まとめ 1. 概要 1.1 レスポンスストリーミングとは? レスポンスストリーミングとは、HTTPリクエストに対してサーバーがレスポンスを一度にまとめて送るのではなく、データを
4月は就職や転職、異動などで仕事内容が変わった人も多いはず。新たな仕事をこなしていくうちに、「どんな知識やスキルがこの先必要になってくるのか」や「どんな資格が効果的なのか」がだんだん見えてくるわけですが、動画形式で学べるオンライン学習プラットフォームのUdemyが初夏のビッグセールを行っており、スキルや資格の取得に役立つ対象講座が1講座1300円~という本1冊程度の手ごろな価格で受講できるようになっています。今回は新たな知識をスムーズに吸収できる講座を6つピックアップしてみました。 オンラインコース - いろんなことを、あなたのペースで | Udemy https://www.udemy.com/ ・目次 ◆1:GoogleのGeminiを使ってAIの使い方をマスターできる無料講座 ◆2:IT専門職ではない人にもおすすめな「ITパスポート」資格取得を目指す講座 ◆3:プログラミング言語「P
はじめに この記事では AWSが提供するAWS SDK for Python (Boto3)(以下、Boto3)を学習していく記事です。主な内容としては実践したときのメモを中心に書きます。(忘れやすいことなど) 誤りなどがあれば書き直していく予定です。 AWS SDKとは AWSが提供するAWSでリソースを操作し、構築に利用するツールです。 AWSの公式サイトには下記のように表現されています。 AWS での構築ツール AWS でアプリケーションを開発および管理するためのツール 選択したプログラミング言語を使用して、AWS でアプリケーションを簡単に開発する Python 固有の API と有益なライブラリを使って、アプリケーションを開発する 参考 サービスではなく、ツールの一つです。そもそもSDKとはなんでしょうか。 補足:SDKとは(SDKの定義) SDKとは何だったかここではCircl
Motivation CloudFront + S3 でインデックスドキュメント動作を実現する。Lambda@Edge ではランタイムのサポート期間の長いPythonを使いたい。 背景 CloudFront + S3 で Static Website hosting を使わない場合、インデックスドキュメントの動作を行うためには CloudFront Function または Lambda@Edge での対応が必要になる。 Pythonで実装したいが Lambda@Edge - Python 版実装の情報は少ない。 インデックスドキュメントの動作は CloudFront Functions でも実現可能だが、アプリケーションの構成上、 Lambda@Edge を使いたいこともある。 静的ウェブサイトホスティングはS3バケットをpublic accessにする必要があり、最近のセキュリティ施策
Lambda関数の検証などを行っているとCloudWatch Logsにロググループが溜まっていきます。 放置していると料金も発生してくるので使われなくなったロググループを削除するスクリプトを作成してみました。 作成したスクリプト 作成したスクリプトは以下のGitHubリポジトリに格納しています。 https://github.com/Kobayashi-Riku0226/python_script import boto3 from datetime import datetime, timedelta one_month_ago = datetime.now() - timedelta(days=30) one_month_ago_int = int(one_month_ago.timestamp() * 1000) logs = boto3.client('logs') log_gr
SageMakerでカスタムpytorchモデル実装 記事の目的 SageMakerの分散トレーニング、デプロイオーケストレーションシステムを活用するための 自作pytorchプログラムの改修方法理解 対象者 基礎的な機械学習知識を所有しており、 SageMakerの分散トレーニング、デプロイオーケストレーションシステムを活用したい人 この記事を読み終わるまでの時間 10m 基本的な処理の流れ 事前セットアップ import sagemaker sagemaker_session = sagemaker.Session() bucket = sagemaker_session.default_bucket() prefix = 'sagemaker/DEMO-pytorch-mnist' role = sagemaker.get_execution_role()
はじめに ある日のことAWS Lambdaで並列処理して処理速度向上を図りたいとなりまして。。。 その際に四苦八苦して得た知見を備忘録としてアウトプットしておきたいと思います。 前提 まずAWS Lambdaでは 設定メモリに応じてvCPU数が増減する pythonのmultiprocessingのPoolが使えない らしいです。 個人的にmultiprocessingのPoolを使い慣れていたので困ったもんだなぁと。 方法 Lambdaでの並列処理のやり方を色々調べたのですが、並列化したい処理に戻り値がない場合の解説ばかりでした。 そしてたどり着いたのが以下リポジトリ。 pip installもできるようですが、main.pyをコピペするだけで十分です。 使い方はmaltiprocessingのPoolのような感じで以下のように実装すれば並列処理をすることができます。
大阪オフィスの小倉です。 LambdaランタイムでPython3.10がサポートされました。 Python3.10自体は2021年の10月にリリースされています。 Python3.10での新機能は、上記AWSブログでも紹介されていますが、公式ドキュメントはもちろんのこと、Python.jpのサイトも参考になります。 動作確認 以下の簡単なコードで動作するか確認します。 Python3.10で導入されたパターンマッチング(match-case)を使ってみました。 import sys def lambda_handler(event, context): match sys.version_info: case [major, minor, micro, releaselevel, serial]: # 5つの要素を持つリストやタプルにマッチ print(f'major={major} mi
【♪】TechTune #0005「Running Python on AWS Lambda with API GATEWAY」PythonAWSlambdaAPIGateway 本日の内容は AWS Lambda 上で Python を動作させることを目指したお話です。 時代の傍観者、宴会部長、マカ―の生き残り、生きた化石のいしたんがお届けする、人生の吹き溜まりのラジオ番組「テックチューン」の時間です。 テックチューンは最近話題のテクノロジーや私の身の回りで起こったこと、興味があることなどを剥き出しの感情でお話する番組です。 特に目標もなく無気力に続けていきたいと思いますので、お付き合いいただけますと幸いです。 PoCを行った資料 AWS Lambda に Python のコードを追加して API Gateway 経由で呼び出してみる https://qiita.com/ishitan/
ChatGPT APIをTeamsボットから使いました(AWS Lambda(Python) + API Gateway) ChatGPT APIが有償で利用可能になったので、会社のTeamsボットに実装してみました。 TeamsからAPI GatewayとLambdaを使ってボットを構築した記録は、Microsoft TeamsのOutgoing Webhooksを使ってAWS Lambda(Python), Amazon API Gatewayとbotに書いています。 今回はこのLambdaからOpenAIのChatGPT APIを使ってみました。 OpenAIでAPIキーの作成 OpenAI API keysでAPIを使用するためのシークレットキーを作成しました。 OpenAIのアカウントが必要なのでない場合は作成します。 このままAPIを呼び出してみると、「You exceeded
背景 AWS LambdaでPythonを実行する際、pandasなどの外部ライブラリはLambdaに事前にinstallされていないため、いずれかの方法でLambdaに外部ライブラリ等をinstallさせる必要があります。 私が知る限りでは、AWS LambdaでPythonを実行する際に、外部ライブラリを使用できるようにする方法は以下の3つです。 Lambda レイヤーを使用する方法。 zip デブロイを用いる方法。 コンテナイメージデブロイを用いる方法。 それぞれの方法にメリット・デメリットがありますが、今回は、最もよく使用されているであろう「 2. zip デブロイを用いる方法。」についてご紹介します。 目標 外部ライブラリを含むPython codeをzipデブロイ方式によって、AWS Lambdaで関数を実行できるようになる。 AWS Lambdaとは 本題に入る前に、AWS
概要 DynamoDB Local を使って、開発環境のローカルマシンで DynamoDB を動かすことができるが、DynamoDB Stream を使いたい場合はポーリングする仕組みが必要。その方法のメモ。 Stream を監視する Python のソース import boto3 import os import time from pprint import pprint # 対象のテーブル table_names = [ 'XXX', 'YYY', ] # 初期化 # https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dynamodb.html # https://boto3.amazonaws.com/v1/documentation/api/latest/reference/se
リンク note(ノート) 「超上流工程」って何やるの?【SEの仕事 #1】 |HPEO🌐IT×資格|note システムエンジニア(SE)という職業に興味がある方向けに、その仕事を主に工程別に紹介する【SEの仕事】シリーズ。 第1回目の今回は「超上流工程」についてです。 できる限り日本企業の一般的なケースを想定して記載しましたので、現役SEの方には自身の職場との違いを楽しんでいただければ幸いです。 超上流工程とは 一般的なシステム開発の流れ 日本におけるシステム開発は、下図のように工程を順番に実施していくウォーターフォールモデルで行われるのが一般的です。(最近はアジャイル開発も増えてきましたが、それはまた別の機会に 2
「AWS Amplify + Reactで既存のLambdaを呼び出す」では、既存のLambdaをAWS Amplify + Reactから呼び出す方法について紹介しました。 今回は、この発展形でLambdaに対してファイルを渡す方法、Reactから見るとファイルアップロードを行う方法について記載します。 解法 フロントエンド(React) 非常にシンプルなReactでの実装例になります。 import React, { useState } from 'react' import { Auth } from 'aws-amplify' import { LambdaClient, InvokeCommand } from '@aws-sdk/client-lambda' import Box from '@mui/material/Box' import Button from '@mu
はじめに DVA 取得と、デプロイについての知識とそれを含めた開発スキルのレベルアップのために色々とやっているのでそれの途中経過をアウトプット。 前提として以下の記事の話があります。 React と DRF の SPA で JWT を Cookieで管理してみた話 もくもく会アウトプット:Django で JWT を Cookie で処理するやつを理解したい やったこと フロント側(React)を CodePipeline・CodeBuild・Route53・CroudFront・S3 の構成でデプロイ サーバー側(DRF)を EC2 インスタンス 1 台を使ってデプロイ 上記を Https でやり取りするようにして連携 ひとまず今回は Code シリーズを使った S3 静的 Web ホスティングでの React デプロイと同時にクロスオリジンでの SPA デプロイの体験を行うというのがテ
オペレーション部の加藤(早)です。 上図のように、あるAWSアカウントのIAMユーザから別AWSアカウントに存在するIAMロールに対して MFA用のワンタイムパスワードを用いてAssumeRole(スイッチロール)するスクリプトを作成しました。 サンプルコード IAMユーザの持ち主がローカル端末で動かすことを想定しています。 ワンタイムパスワードは対話的に入力します。 from boto3.session import Session # 変数設定 PROFILE = 'default' # 端末の ~/.aws/credentials 内で設定しているプロファイル名 ROLE_NAME='myRole' # スイッチロール先のロール名 TARGET_ACCOUNT='123456789012' # スイッチロール先AWSアカウントID(12桁) REGION = 'ap-northeas
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く