Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第118回 雲勉【オンライン】AWS・Google Cloud 生成AI特集
Search
iret.kumoben
November 02, 2023
Technology
0
130
第118回 雲勉【オンライン】AWS・Google Cloud 生成AI特集
下記、勉強会での資料です。
https://youtu.be/msXem-glHpo
iret.kumoben
November 02, 2023
Tweet
Share
More Decks by iret.kumoben
See All by iret.kumoben
第166回 雲勉 コードを読んで理解する AWS Amplify Gen2 Backend
iret
0
18
第165回 雲勉 Google Agentspace について
iret
0
19
第164回 雲勉 Agent Development Kit と MCP Toolbox for Databases で MCP 連携してみた
iret
1
40
第163回 雲勉 CircleCIで複数リポジトリ間のパイプラインを連携する
iret
1
35
第162回 雲勉 比較して学ぶ AWS Amplify Gen 2
iret
0
49
第161回 雲勉 Amazon Kinesis Data Streams と Amazon Data Firehose を使ってみよう
iret
0
47
第160回 雲勉 それ、AWS Step Functions で置き換えれん?
iret
0
69
第159回 雲勉 Amazon Bedrock でブラウザを操作する AI エージェントを作ってみた
iret
0
83
第158回 雲勉 AWS CDK 入門 ~ プログラミング言語で書くインフラ Python 編 ~
iret
0
71
Other Decks in Technology
See All in Technology
AWS アーキテクチャ作図入門/aws-architecture-diagram-101
ma2shita
29
11k
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.2k
エンジニア向け技術スタック情報
kauche
1
250
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
200
Абьюзим random_bytes(). Фёдор Кулаков, разработчик Lamoda Tech
lamodatech
0
340
BrainPadプログラミングコンテスト記念LT会2025_社内イベント&問題解説
brainpadpr
1
160
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
410
Model Mondays S2E02: Model Context Protocol
nitya
0
220
Clineを含めたAIエージェントを 大規模組織に導入し、投資対効果を考える / Introducing AI agents into your organization
i35_267
4
1.6k
変化する開発、進化する体系時代に適応するソフトウェアエンジニアの知識と考え方(JaSST'25 Kansai)
mizunori
1
210
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全 / 20250625-aws-summit-aws-policy
opelab
9
1.1k
Amazon S3標準/ S3 Tables/S3 Express One Zoneを使ったログ分析
shigeruoda
3
470
Featured
See All Featured
A better future with KSS
kneath
239
17k
Done Done
chrislema
184
16k
KATA
mclloyd
29
14k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
GitHub's CSS Performance
jonrohan
1031
460k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
We Have a Design System, Now What?
morganepeng
53
7.7k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
The Cult of Friendly URLs
andyhume
79
6.5k
Transcript
第118回 雲勉【オンライン】 AWS・Google Cloud ⽣成AI特集
本日やること 2 • 自己紹介 • AWS ◦ LINE API/Amazon Bedrock/Claude2を組み合わせたLINE
bot • Google Cloud ◦ LINE API/Vertex AI/PaLM2を組み合わせたLINE bot • まとめ
自己紹介 3 Amazon ベストセラー獲得 Kento.Yamada (github,Twitter,zenn,Qiita@ymd65536) 経歴 • 2022年10月~現在 アイレット株式会社
◦ クラウドインテグレーション事業部 MSP開発セクション(東京配属) • (2016年~2022年9月)某通信キャリアの子会社 ◦ ITスペシャリスト(エンジニア)
4 AWSの場合
5 デモ
利用技術 • LINE API ◦ Messaging API • AWS ◦
AWS Lambda ◦ Amazon Bedrock(Claude2を利用) 6
AWS Cloud 全体構成 7 .zipアップロード、レイヤー作成 1.Webhookによる接続 4.LINEアプリ上で結果を閲覧 2. モデルClaude2のAPIを実行 3.結果を取得
AWS Lambda Amazon Bedrock
LINE Messaging API 👈詳しく知りたい人はこちら 8 https://www.youtube.com/watch?v=KiuLRTSuTzg LINEのメッセージ機能をAPIとして提供するサービス
Amazon Bedrockとは 9 基盤モデルを使用して生成系 AI アプリケーションを 構築およびスケーリングする最も簡単な方法。 主な特徴 • 大手
AI 企業が提供する高性能な基盤モデルを 単一の API で選択できるフルマネージド型サービス • サーバレス 参考:https://aws.amazon.com/jp/bedrock/ Amazon Bedrock
実装方法 • AWS SDK for Python(boto3)を使って実装 Lambdaがデフォルトで提供しているboto3には bedrockのAPIを操作する実装が存在しない。(2023年10月23日現在) →bedrockのAPIに対応したboto3のLambdaレイヤーを作成する 10
補足:Lambdaのboto3のバージョンを確認する方法 11 実行! Amazon Bedrockは1.28.57でサポート 1.27.1では動作しない 参考: https://github.com/boto/boto3/blob/develop/.changes /1.28.57.json
補足:Lambdaのレイヤーを作成する 12 boto3 1.28.58をインポート
IAMポリシーを作成 13 権限は最小にする! CloudWatch Logsのポリシー
Lambdaで実行するPythonスクリプトの仕様 14 event_type is Message message _type is text Start
message _type is image message _type is sticker End Bedrock APIの実行 画像には対応していな い旨を表示 スタンプには対応して いない旨を表示 実行結果を取得 True True True False message_typeを返す True False False False
ここまでのまとめ • Amazon Bedrockを使うとサーバレスにAIをアプリケーションに実装できる • AWS SDK for PythonからAPIを実行する •
LambdaでAPIを実行する時はレイヤーを組む必要がある ※現時点ではLambdaに実装されているバージョンが1.27.1であり、bedrockの APIに対応していない 15
16 Google Cloudの場合
17 デモ
利用技術 • LINE API ◦ Messaging API • Google Cloud
◦ Cloud Run ◦ Artifact Registry ◦ Vertex AI(PaLM2を利用) 18
全体構成 19 Artifact Registry Cloud Run Vertex AI イメージをpush 2.コンテナイメージをpull
1.Webhookによる接続 5.LINEアプリ上で結果を閲覧 3. chat-bisonのAPIを実行 4.結果を取得
Cloud Runとは コンテナを実行できるマネージドサービス 特徴 • サーバレスコンピューティング • 受信リクエストに合わせて、コンテナが自動的にスケール 今回はジョブではなく、サービスとしてコンテナを実行 LINE
Messaging APIのWebhook URLとして利用 20 CloudRunの料金:https://cloud.google.com/run/pricing?hl=ja
Artifact Registryとは 21 次世代の Container Registry 特徴 • パッケージと Docker
コンテナイメージを1 か所で保管し、管理 できる • CloudBuildのアーティファクトを保存する場所として利用できる Caution 現在はContainer Registryではなく、Artifact Registryが推奨されてい ます! 今回はCloud Runに使うコンテナのイメージを保存するために利用 Artifact Registryの料金:https://cloud.google.com/artifact-registry/pricing?hl=ja
Vertex AIとは 22 エンタープライズ対応の生成 AI でイノベーションを加速する 特徴 • さまざまなAIモデルの提供およびトレーニング •
検証にちょうどいいGenerative AI Studio • もちろん、PaLM2も提供
PaLM2とは • Google が開発した最新のLLMであり、PaLMの後継 • 4種類のモデル:Gecko、Otter、Bison、Unicorn • 25 を超える Google
の製品と機能に搭載 23 引用元:PaLM 2 のご紹介 https://japan.googleblog.com/2023/05/palm-2.html
Vertex AI における生成 AI サポートの料金 24 Vertex AI における生成 AI
サポートの料金:https://cloud.google.com/vertex-ai/pricing?hl=ja 1,000文字あたり、$0.0005
実装方法 • Vertex AI SDK for Pythonを使って実装 →SDKからgoogle-cloud-aiplatformのvertexaiをインポート →language_modelsからChatModelをInvoke 25
〜実装のポイント〜 • context を設定 • InputOutputTextPairを設定
Pythonスクリプトの仕様(AWSで実装した時とほぼ同じ) 26 event_type is Message message _type is text Start
End VertexAI APIの実行 実行結果を取得 True True False False
補足:テキストだけでなく画像などの情報もAIでやっていきたいところですが。。 27 プレビュー中のモデルが多いので今回は断念 ↓現在(2023.10.23)利用できるモデル
Google Cloudを使ったLINE botのまとめ • 今回はCloud Runを使ってVertex AIを実行した • Vertex AIを使うと手軽に生成AIが扱える!
• まだまだ知見は少ないけども、可能性は無限大! 28
29 おわり