Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SageMakerとIoT GreengrassとAmplifyで作るノーコードエッジAIプラ...
Search
tsmiyamoto
December 06, 2021
Programming
1
1.2k
SageMakerとIoT GreengrassとAmplifyで作るノーコードエッジAIプラットフォーム
2021/12/06
JAWS-UG朝会 #28登壇資料
株式会社TechSword
CTO 宮本 大輝
tsmiyamoto
December 06, 2021
Tweet
Share
More Decks by tsmiyamoto
See All by tsmiyamoto
AIサービス立ち上げにAWS Amplifyを使ってわかったPros & Cons
tsmiyamoto
0
1.8k
SageMakerが対応していないアルゴリズムの学習をECRで行ってノーコードAIプラットフォームを作った|株式会社TechSword
tsmiyamoto
0
600
Other Decks in Programming
See All in Programming
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
8
5.3k
251126 TestState APIってなんだっけ?Step Functionsテストどう変わる?
east_takumi
0
310
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
26
22k
C-Shared Buildで突破するAI Agent バックテストの壁
po3rin
0
370
DSPy Meetup Tokyo #1 - はじめてのDSPy
masahiro_nishimi
1
160
AIコーディングエージェント(Manus)
kondai24
0
160
React Native New Architecture 移行実践報告
taminif
1
150
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
12
7.1k
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
120
ハイパーメディア駆動アプリケーションとIslandアーキテクチャ: htmxによるWebアプリケーション開発と動的UIの局所的適用
nowaki28
0
380
AWS CDKの推しポイントN選
akihisaikeda
1
240
CloudNative Days Winter 2025: 一週間で作る低レイヤコンテナランタイム
ternbusty
7
2k
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Building an army of robots
kneath
306
46k
A designer walks into a library…
pauljervisheath
210
24k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Code Reviewing Like a Champion
maltzj
527
40k
Visualization
eitanlees
150
16k
The Invisible Side of Design
smashingmag
302
51k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
[SF Ruby Conf 2025] Rails X
palkan
0
480
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Raft: Consensus for Rubyists
vanstee
141
7.2k
Transcript
SageMakerとIoT GreengrassとAmplifyで作る ノーコードエッジAIプラットフォーム 株式会社TechSword|CTO 宮本 大輝
@i7i5 もくじ 1. 会社・サービス紹介 2. アーキテクチャ 3. ハマったポイント 4. おわりに
Introduction 会社・サービス紹介
@i7i5 自己紹介 宮本 大輝 みやもと たいき ▪ 株式会社TechSword 取締役CTO ▪
岡山大学大学院自然科学研究科M1 休学中 ▪ 楕円曲線暗号に関する研究 ▪ ssh-keygen –t ed25519のやつ ▪ 好きなAWSサービス ▪ Amplify ▪ IoT Greengrass ▪ SageMaker
名称 株式会社TechSword 住所 〒700-8530 岡山県岡山市北区 津島中3丁目1番1号 会社概要 事業内容 ▪ ノーコードエッジAIプラットフォームの開発・運営・提供
▪ AIの開発・導入・運用支援 設立 2021年5月19日 代表者 長島慶樹 @i7i5
VISION すべての人に、AIを。
MISSION AI技術を民主化し 最適化された未来社会を実現する
@i7i5 メンバー 岡山大学大学院 機械システム工学専攻 代表取締役CEO 長島 慶樹 岡山大学大学院 電子情報システム 工学専攻
取締役CTO 宮本 大輝 岡山大学工学部 電気通信系学科 AIエンジニア 池坂 和真 技術顧問 馬場 謙介 岡山大学サイバーフィジカル 情報応用研究コア 教授(特任) 技術顧問 野上 保之 岡山大学工学部教授 DX担当副理事 岡山大学工学部 電気通信系学科 AIエンジニア 疋田 智矢 岡山大学工学部 電気通信系学科 Webフロントエンジニア 宮本 稜太 岡山大学工学部 電気通信系学科 AIエンジニア 川田 優太
@i7i5 国別AI導入率 85% 51% 39% 0% 10% 20% 30% 40%
50% 60% 70% 80% 90% 中国 米国 日本 日本は先進国の中で圧倒的な AI後進国
@i7i5 解決する課題 AI人材の供給不足 出典: 経済産業省『IT人材需給に関する調査』 AI人材需給ギャップの見通し 101.8 105.9 111.0 113.3
+3.4万人 +4.4万人 +8.8万人 +12.4万人 95.0 100.0 105.0 110.0 115.0 120.0 125.0 130.0 2018年 2020年 2025年 2030年 人数 [万人] 供給 需要 0 AI外注コストの相場 AI開発のコストの高さ 内容 費用相場 コンサルティング 40-200万円 AI化可能性チェック 40-100万円 プロトタイプ作成 100-数百万円 AIモデル開発 月額 80-250万円×人月 システム開発 月額 60-200万円×人月
@i7i5 ノーコードエッジAIプラットフォーム TechSword Platform ▪ 知識0・スキル0でもAIの開発が可能 ▪ 容易にビジネス実装が可能 ▪ 安価な導入コスト
None
Architecture アーキテクチャ
@i7i5 アーキテクチャ
@i7i5 フロント ▪React ▪TypeScript ▪Amplify ▪ API ▪ Auth ▪
Function ▪ Storage
@i7i5 機械学習 ▪SageMaker Training Job ▪ YOLOv4 ▪SageMaker組み込みの物体検出モデルを 使わない理由は? →精度
@i7i5 機械学習 ▪IoT Greengrass ▪ boto3のcreate_deploymentを実行 デプロイに関して SageMaker Edge Managerを組み合わせたやり方も
ある気がしています まだよくわかっていないので、よければ情報交換 しましょう
@i7i5 通信周り ▪SORACOM ▪ SORACOM Air|通信 ▪ SORACOM Funnel|デバイスからのデータをAWSに直接転送 ▪SORACOMを使うメリット
▪ 顧客が通信環境をセットアップする必要がない ▪ デバイス側のプログラムをシンプルに ▪ SIMという一意のモノによる認証
Stucked Point ハマったポイント
@i7i5 ハマったポイント 発生した問題 ▪ Amplify: Resolver invocation limit reached. 原因
▪ 一部の深いネストのデータを取るためにAPIのdepthを7にしていた ▪ モデルの中に循環参照がある関係で、1回のQueryで取ってくるデータが とんでもないことに
@i7i5 ハマったポイント 発生した問題 ▪ Amplify: Resolver invocation limit reached. 原因
▪ 一部の深いネストのデータを取るためにAPIのdepthを7にしていた ▪ モデルの中に循環参照がある関係で、1回のQueryで取ってくるデータが とんでもないことに type Model @model @auth(rules: [{ allow: owner }]) { id: ID! name: String! status: ModelStatus! type: ModelType! images: [Image] @connection(keyName: "byModel", fields: ["id"]) ・ ・ } type Image @model @auth(rules: [{ allow: owner }]) @key(name: "byModel", fields: ["modelID"]) { id: ID! modelID: ID! model: Model @connection(fields: ["modelID"]) width: Int! height: Int! ext: String! objects: [Object] @connection(keyName: "byImage", fields: ["id"]) }
@i7i5
@i7i5 ハマったポイント いじわるポイント ▪ amplify mockした時はこのエラーが出ない 対策 ▪ depthをデフォルトの2に変更 ▪
必要に応じてGraphQL Explorerを使って 独自Queryを定義 副次的効果 ▪ パフォーマンス改善
Conclusion おわりに
@i7i5 まとめ ▪ノーコードエッジAIプラットフォーム ▪ Amplify ▪ SageMaker ▪ IoT Greengrass
▪エンジニア4人で約4か月でβ版開発 ▪ AWSという巨人の肩に乗って開発 ▪ テクニカルサポート ▪Graphqlのdepthと循環参照には注意⚠
@i7i5 宣伝ちょっとだけ JOIN US! ▪ フロント・機械学習・IoT・営業・オープンポジション ▪ 来春から東京を拠点に ▪ Meetyでカジュアル面談募集中
@i7i5