フリーランチ食べたい

No Free Lunch in ML and Life. Pythonや機械学習のことを書きます。

Serverless

SageMakerをFargateで定期実行する環境をServerless Frameworkで一発でつくる

機械学習のモデルを学習する、あるいは推論APIを作成するにあたってSageMakerはとても便利ですが、 定期実行する機能をSageMaker自身では持っていない という問題があります。 このエントリでは、Serverless Framework(以降、Serverless)を使って素早くSageM…

Aurora Serverless Data APIとLambdaでAPIをServerless Framework(CloudFormation)で作る

昨年末のAurora Serverless Data APIの登場で、Lambdaからの利用が簡単になりました。この記事ではServerless Framework、CloudFormationを用いて、Aurora Serverless Data APIとLambdaを使ったAPIを構築する方法を紹介します。 使ったコードはすべてGitHub…

CloudFormationのOutputsを活用してServerlessプロジェクト内の情報を外部と共有する

Serverless内で使っている環境変数を外部と共有する方法を紹介します。Serverlessでは設定ファイル内でCloudFormationを書くことができ、そこで作成したS3などのResourceをServerlessプロジェクトから使うことができます。この機能はとても便利なのですが、…

SageMakerとServerlessを組み合わせて、お手軽にscikit-learnの機械学習APIを作る

SageMakerとServerlessを使ってscikit-learnの機械学習APIを作る方法を紹介します。 公式ドキュメントやその他の記事の多くはコンソール操作やnotebook上での操作が多く含んでいて、そのコードのまま本番運用に使うのは難しいと感じたので、この記事では コ…

AWS BatchとServerlessを組み合わせて高速に定期実行バッチやバッチAPIを作る

AWS Lambdaで行えないような重い処理はAWS Batchを使うと簡単に行うことができますが、定期実行したりエンドポイントを作る仕組みはAWS BatchにはまだなくCloudWatchやAPI Gatewayと組み合わせる必要がありますがServerlessと組み合わせることで簡単に実現で…

Lambda Layerを使ってデプロイを高速化する

TL;DR Lambda Layerを使ってLambdaのデプロイを高速化します。 ServerlessとServerless Pluginを使うことで簡単に実現することができます。 今回試した一例ですが、252.47秒->45.49秒で5倍高速化しました。 はじめに Serverlessを用いたLambda Layerの活用に…

Serverlessを使って簡単にAWS Lambda Layers上でHeadless Chromeを動かす

この記事は Serverless2 Advent Calendar 2018 - Qiita の20日目です。 今年開催された re:Invent2018でAWS Lambda Layersが発表されました。 このアップデートによってC拡張のライブラリや容量の大きいライブラリの利用がより便利になりました。 その中でも…