SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

サーバーレスでAIシステム開発スタートダッシュ

サーバーレスでAIシステム開発をはじめよう! サーバーレスの概要とAIシステムにおける活用方法

サーバーレスでAIシステム開発スタートダッシュ 第1回

  • このエントリーをはてなブックマークに追加

 本連載では、AIシステム開発の始め方が分からないという方に向けて、サーバーレス技術を活用したAIシステム開発の進め方を紹介します。第1回では、サーバーレスとは何か、AIシステム開発への応用例と、主要なサーバーレス技術であるAWS Lambda活用のはじめの一歩をご紹介します。

  • このエントリーをはてなブックマークに追加

はじめに

 近年、ChatGPTやDALL-E3などの生成系AI分野の発展が目覚ましいですが、実際にこれらのAIモデルを活用したシステムを構築した経験がある人はどの程度いるでしょうか?

 ビジネスシーンでの課題解決や趣味でAIを活用したいと考えている人など、最初に直面するであろう問題として、「AIを活用したいが、始め方が分からない」「費用や工数はどの程度かかるのだろう」という疑問があります。この連載では、サーバーレスを活用したAIシステムのプロトタイプ開発を通じて、これらの問題を解決する方法を提供します。また、AI開発を始めてみたい人々が一歩を踏み出す助けとなることを目指して、AIシステム開発の入門を解説します。

 このシリーズは全3回の連載を予定しています。第1回の記事では、サーバーレス技術の解説とその活用について、第2回ではAWSを活用して開発したAIシステムの実装例を紹介し、第3回ではGCPを活用してChatGPTを組み込んだシステムの実装例を紹介します。

サーバーレスとは

 システム開発を行うにあたって、まずそのシステムをどの環境で動かすかを考える必要があります。自分でサーバーを管理しながら開発することもできますが、ゼロからインフラを構築するには多大な労力が必要です。そこで活用できるのがサーバーレス技術です。

 自分でサーバーを用意する場合、開発ツールの環境構築、冗長構成の設計、サーバーダウン時の対応など、多くのことを考慮する必要があります。これは素早くプロトタイプを開発したい場合には適していません。一方、サーバーレス環境を利用すると、開発環境が最初から整っていたり、負荷がかかったときに自動的に分散してくれたりするため、インフラ周りの悩みが大幅に減ります。

 今回は、その中でもAWSのLambdaとGCPのCloud Functionsを取り上げ、それぞれの利用方法を紹介していきます。

LamdaとCloud Functions

 LambdaとCloud Functionsは、それぞれAWSとGCPで動作するサーバーレス環境です。これらの魅力は、それぞれのクラウドプラットフォームのサービスを簡単に利用できる点にあります。S3やCloud Strageなどのストレージサービス、RDSやCloud SQLなどのデータベースサービスなど、必要なサービスを随時取り入れながら開発を進めることが可能です。

 サーバーレス技術を選ぶ際に、LambdaとCloud Functionsのどちらを利用するかを検討するかもしれません。基本的には、利用したいサービスがAWSまたはGCPにあれば、そのプラットフォームを選択するのが一般的です。ただし、それぞれには独自の特性と利点があるため、それらを比較し理解することも重要です。

 LambdaやCloud Functionsなどのクラウドサービスには、ある程度の利用量まで無料で利用できる枠があります。プロジェクトの規模にもよりますが、プロトタイプの試用段階では、多くの場合、利用料金がこの無料枠に収まります。これは、コストを抑えながら開発を進める上で大きなメリットとなります。

LambdaとCloud Functionsの無料枠
無料枠/月 Lambda Cloud Functions
リクエスト 100万リクエスト 200万リクエスト
コンピューティング時間 400,000GB秒 400,000GB秒
関数からのデータ送信 100GB 5GB

 Cloud Functionsはリクエスト数に対する無料枠が多く、一方でLambdaは大きなデータの送信に対する許容量が大きいです。

 次に、機能面で比較します。Cloud Functionsには第1世代と第2世代があり、第2世代の方がメモリ割り当てと実行時間に優れています。AIシステムの開発においてこれらの要素は重要ですので、この比較では第2世代Cloud FunctionsとLambdaの最大スペックを比較します。

LambdaとCloud Functionsの機能面での比較
スペック Lambda Cloud Functions
最大メモリ 10.24GB 32.0 GB
最長実行時間 15分

HTTPトリガー:60分

イベントトリガー:9分

最大同時実行数 1,000 3,000
クラウドサービス数 AWS:約220種類

GCP:約165種類

Firebaseとの連携が可能

 主要な部分を抜き出してみると、Cloud Functionsは最大メモリと最長実行時間でLambdaを上回っています。したがって、Lambdaのスペックが不十分な場合は、Cloud Functionsの利用を検討するとよいでしょう。

 また、提供しているクラウドサービスの数も異なり、AWSは約220種類、GCPは約165種類です。GCPにはFirebaseの各種機能との連携という利点もあります。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
AIシステムのプロトタイプにおけるサーバーレスの活用

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
サーバーレスでAIシステム開発スタートダッシュ連載記事一覧

もっと読む

この記事の著者

株式会社ブリューアス AI-TEAM(カブシキガイシャブリューアス エーアイチーム)

 モバイルのアプリを中心にUI/UXデザインから開発保守まで、幅広い実績を持つ会社です。専門的な知識と豊富な開発経験を活かし、AIとサービスの統合を推進しています。 Brewus.inc

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/18675 2023/11/29 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング