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
110
第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
第155回 雲勉 サーバレスアーキテクチャを 用いたコスト重視 AI サービス
iret
0
41
第154回 雲勉 AWS Codeシリーズ盛り上げ隊 ~ Codeシリーズは砕けない ~
iret
0
38
第153回 雲勉 トラシューが秒で終わる新機能 Amazon Q Developer operational investigations
iret
0
53
第150回 雲勉 AWS AppSyncではじめるGraphQL体験
iret
0
46
第151回 雲勉 プロジェクトのドキュメントにおける課題をAmazon Bedrockで解決してみる
iret
0
62
第152回 雲勉 シームレスなマルチリージョンへの移行と検討 ~Amazon EKSとAWS Global Acceleratorを使用した環境〜
iret
0
58
第149回 雲勉 AWS ベストプラクティスの最新と実際 AWS Well-Architected
iret
0
90
第148回 雲勉 Web アプリケーションセキュリティ
iret
0
53
第147回 雲勉 Amazon CloudWatchをウォッチ!
iret
0
66
Other Decks in Technology
See All in Technology
Qiita Organizationを導入したら、アウトプッターが爆増して会社がちょっと有名になった件
minorun365
PRO
1
290
クラウド食堂とは?
hiyanger
0
120
ABWG2024採択者が語るエンジニアとしての自分自身の見つけ方〜発信して、つながって、世界を広げていく〜
maimyyym
1
200
LINE NEWSにおけるバックエンド開発
lycorptech_jp
PRO
0
340
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
140
What's new in Go 1.24?
ciarana
1
110
20250304_赤煉瓦倉庫_DeepSeek_Deep_Dive
hiouchiy
2
120
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
290
2025/3/1 公共交通オープンデータデイ2025
morohoshi
0
100
IAMのマニアックな話2025
nrinetcom
PRO
6
1.4k
どちらかだけじゃもったいないかも? ECSとEKSを適材適所で併用するメリット、運用課題とそれらの対応について
tk3fftk
2
250
技術スタックだけじゃない、業務ドメイン知識のオンボーディングも同じくらいの量が必要な話
niftycorp
PRO
0
120
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Producing Creativity
orderedlist
PRO
344
40k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Facilitating Awesome Meetings
lara
53
6.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
It's Worth the Effort
3n
184
28k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
KATA
mclloyd
29
14k
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 おわり