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
75
第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
第140回 雲勉 今度こそ AWS CDK で構築してみたくなるようなCDK活用集
iret
0
33
第139回 雲勉 Amazon Q Developerで安全快適な IaC with Terraform
iret
0
32
第138回 雲勉 Google Cloudではじめるプラットフォームエンジニアリング
iret
0
30
第137回 雲勉 Google Cloud Vertex AIとLangGraphを味方につけてRAGを改善したひ
iret
0
78
第136回 雲勉 AIに構成図を読み込ませてサーバー作成(Amazon Bedrock)
iret
0
86
第135回 雲勉 AWS Verified Access 入門 ~ VPNを利用せずに拠点/端末からAWSへアクセス ~
iret
1
120
第134回 雲勉 未経験クラウドエンジニア1年生(社会人1年生)の奮闘記
iret
0
59
第133回 雲勉 【オンライン】今度こそ既存のAWSリソースをいい感じにコードに落とし込みたい!
iret
0
55
第132回 雲勉【オンライン】春の生成AI祭り
iret
1
73
Other Decks in Technology
See All in Technology
Flutter研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
160
コンテナ・K8s研修 - 前半 コンテナ基礎・ハンズオン【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
170
ギークの理想が7つ集まるエムスリーで夢を叶えよう - エムスリー株式会社
m3_engineering
1
260
簡単に始めるSnowflakeの機械学習
nayuts
1
190
MySQLのロックの種類とその競合
yoku0825
6
1.6k
ソフトウェアエンジニアリングの知見を活かして データ基盤をいい感じにする on Snowflake [MIERUNE BBQ #10]
mtpooh
2
150
開発と事業を繋ぐ!SREのオブザーバビリティ戦略 ~ Developers Summit 2024 Summer ~
leveragestech
0
620
VPoEの視点から見た、ヘンリーがサーバーサイドKotlinを使う理由 / Why Server-side Kotlin 2024
cho0o0
1
420
DDDにおける認可の扱いとKotlinにおける実装パターン / authorization-for-ddd-and-kotlin-implement-pattern
urmot
4
390
開発生産性をむしろ向上させる セキュリティパートナーの作り方 / Dev Productivity Con 2024
flatt_security
0
360
E2Eテスト自動化プラットフォームにおけるAIの活用
shift_evolve
0
180
AIエージェントを現場に導入する目線とは
masahiro_nishimi
1
1.5k
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
36
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Code Reviewing Like a Champion
maltzj
517
39k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
24
1.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
353
29k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
A Tale of Four Properties
chriscoyier
155
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
Faster Mobile Websites
deanohume
303
30k
Fashionably flexible responsive web design (full day workshop)
malarkey
399
65k
A designer walks into a library…
pauljervisheath
201
24k
The Pragmatic Product Professional
lauravandoore
29
6.1k
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 おわり