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
Bedrockで遊ぼう! 短期間で色々開発してみた
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
taiko19xx
August 10, 2024
Technology
170
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Bedrockで遊ぼう! 短期間で色々開発してみた
taiko19xx
August 10, 2024
More Decks by taiko19xx
See All by taiko19xx
Incident Managerでインシデント発生時のエスカレーションを自動化する
taiko19xx
0
280
LambdaカスタムランタイムでPHPでもサーバーレス!
taiko19xx
0
91
IoTっぽいアプリをk3s+Raspberry Piで実行する
taiko19xx
0
370
ハニーポットから見たWebサーバへの攻撃
taiko19xx
0
3k
PHPなプロダクトをAmazon ECSで開発運用してる話
taiko19xx
0
1.3k
RaspberryPi+AWSでIoT(っぽ い)GPSロガーを作ってみた
taiko19xx
0
1.7k
PHPからWin32APIをいじってみた
taiko19xx
0
1.8k
Other Decks in Technology
See All in Technology
DevOps Agentで始めるAWS運用 〜フロンティアエージェントが変える運用の現場〜
nyankotaro
1
320
AIプラットフォームを運用し続けるための可観測性
tanimuyk
4
1.2k
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
0
210
価格.comをAI駆動で全面刷新する ー 30年分の技術的負債を返し、次の30年の土台をつくる ー / AI Engineering Summit Tokyo 2026
tkyowa
50
56k
10倍の生産性を実現するAI駆動並列エージェントのすべて
kumaiu
4
980
Oracle Cloud Infrastructure IaaS 新機能アップデート 2026/3 - 2026/5
oracle4engineer
PRO
1
220
【Gen-AX】20260530開催_JJUG CCC 2026 Spring
genax
0
440
Agentic ERPをどう設計するか ー 受発注エージェントを動かす、現場の知見と設計思想ー
recerqainc
1
1.9k
Agentic Defenseとともにセキュリティエンジニアが輝き続けるには / How Security Engineers Can Keep Excelling with Agentic Defense
yuj1osm
0
130
AWSシリコン最前線 〜AI時代のチップ選択を読み解く〜
htokoyo
1
230
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.8k
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
520
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
340
Become a Pro
speakerdeck
PRO
31
6k
30 Presentation Tips
portentint
PRO
1
320
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
130
Context Engineering - Making Every Token Count
addyosmani
9
950
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Technical Leadership for Architectural Decision Making
baasie
3
400
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
690
Transcript
JAWS-UG 秋田 勉強会@2024/08/10 #jawsug #jawsugtohoku #jawsugakita 木村俊彦 @taiko19xx Bedrockで遊ぼう! 短期間で色々開発してみた
• 木村俊彦 ◦ X: @taiko19xx • 仙台でゲームの会社に勤めてます ◦ Kubernetes(EKS)とGitHub Actionsばっかり触っています
• 技術同人誌サークルの「杜の都の開発室」をやっています • 最近のトピック ◦ 遺伝子検査を受けてみました ◦ 知り合いの作り方がよくわからない 自己紹介
• ここ1ヵ月、Bedrockを使って色々作っていました • その中で得られた知見や方針などを色々お話できればと思います • 作ったものはこちら ◦ https://github.com/taiko19xx/202408_bedrock_apps 概要
• 前日談 • 基本構成と方針 • 作ったものの紹介 • 作ってみてわかったこと 今日の内容
前日談
• 7/5にJAWS-UG 仙台で生成AIのハンズオンがあった • 懇親会で秋田への参加を誘われる • 話すネタどうしようか... • そういえばハンズオンでBedrockの話があったな... 前日談
いい機会なので いろいろ作ってみよう!
基本構成・方針
• Bedrock • Lambda ◦ Node.js 20 / arm64 •
CloudFront ◦ HTML配信用 • S3 ◦ CloudFrontのバックエンド / 画像保存先 • DynamoDB 基本構成
(8/1時点)
• Webアプリを構築 ◦ HTMLはBedrockに生成してもらう • API側はLambda ◦ 関数URLを使用 ◦ 関数は手書き
• BedrockはClaude 3 Haiku / 3.5 Sonnetを使用 ◦ そのためオレゴンかバージニア北部 基本方針
東京リージョンで使えるようになった!!
• Webアプリを構築 ◦ HTMLはBedrockに生成してもらう • API側はLambda ◦ 関数URLを使用 ◦ Lambdaは手書き
• BedrockはClaude 3 Haiku / 3.5 Sonnetを使用 ◦ そのためオレゴンかバージニア北部 • Bedrockも含め全て東京リージョン 基本方針
作ってみたもの
チャットボットくん
• 会話するだけ • 特に調整していないので素の状態 • 履歴はブラウザに保存 • とりあえずということで作ってみた ◦ コンソール入らないで済むので便利
チャットボットくん
マルチ翻訳くん
• 言語自動認識+複数言語への翻訳 • やっていることはほぼAmazon Translator • 20言語ぐらい対応 ◦ 言語コードを送っているだけなのでどんどん増やせる •
こういうツールを使う場面があったのでそれの再現 マルチ翻訳くん
文章校正くん
• 入力した文章を指定したスタイルに校正してくれる ◦ フォーマルな文章をカジュアルに、その逆も • 校正部分にハイライトし、理由も表示してくれる • 前々から欲しいと思っていたので作成 文章校正くん
画像タグ付けくん
• S3にアップロードした画像にタグ付けをする ◦ アップロードはPresigned URL経由 ◦ タグデータはDynamoDBに保存 ◦ タグによる絞り込みも可能 •
これのみデータはAWS側に保存されているため共有 画像タグ付けくん
None
作ってみてわかったこと
• API構築+HTML生成で2〜3時間あれば作れる • HTMLだけでも、API側のモックとしての利用には最適 • 簡単な内部向けツールであればサクッと作れそう スピード感は半端ない
• 書いてあることはやるが、書いてないことはやってくれない • 「いい感じにして」「よしなに」は難しい • プロジェクトのことを何も知らない人に指示するにはどうするのか、と考え るとよさそう • データ構造は文字で書くよりそのまま書いて参照してもらったほうが早い プロンプトは仕様書
• 出力される結果を前もって予想しておく ◦ APIの説明でresultというキーを使ってたらアプリ側の変数と重複し てしまい、変な結果になった • 自分が指示される側であればどうか、を考える ◦ 仕様書と合わせて AIの気持ちになる
• 例えばコード生成を任せるのであれば、ライブラリや技術自体の知識はあ る程度必要 ◦ そもそもの使い方を知らないと調整できない ◦ 間違ってるので直してと言っても100%直る訳ではない • 凝ったことをしたい場合は用語と使われ方・使い方の知識が必要 ◦
データのブラウザへの保存やロード画面の表示など 完全にお任せしない
• 作成したアプリを試しに社内で公開した • 想定外な使われ方をし出して、費用が大変なことになった • それはそれで色々勉強になった • 最悪WAFでIPブロック いたずらに気を付ける
• トークン量に応じた課金のため、トークン量の確認は必須 • 事前にトークン量の算出は難しい ◦ Haikuは気にならないが、Sonnetだとちょっと気になるレベル ◦ インプットとアウトプットで段違いなのも注意 • メトリクスとしては見られるが、モデル毎になる
◦ InputTokenCount / OutputTokenCount • トークン量は呼び出し結果内に含まれる ◦ 個別の計測もカスタムメトリクスで可能 トークン量をよく見る
• 色々作ってみた結果とそこから得た知見の共有でした • スッと作って動かせるのはやはり楽しい • 時間も限られていましたが、色々作りたいものが作れて満足 • アイディアは出そうと思えば無限に出てくる • 生成AIを利用したアプリ作成の知見も得られたので良かったです
• 是非お盆の暇つぶしにいかがでしょうか まとめ
ありがとうございました