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
Gradioでもう誰でも見れるデモ
Search
Henry Cui
November 27, 2022
Technology
0
1.2k
Gradioでもう誰でも見れるデモ
Henry Cui
November 27, 2022
Tweet
Share
More Decks by Henry Cui
See All by Henry Cui
プロダクション言語モデルの情報を盗む攻撃 / Stealing Part of a Production Language Model
zchenry
1
220
Direct Preference Optimization
zchenry
0
400
Diffusion Model with Perceptual Loss
zchenry
0
440
レンズの下のLLM / LLM under the Lens
zchenry
0
190
Go with the Prompt Flow
zchenry
0
170
Mojo Dojo
zchenry
0
230
ことのはの力で画像の異常検知 / Anomaly Detection by Language
zchenry
0
610
驚愕の事実!LangChainが抱える問題 / Problems of LangChain
zchenry
0
270
MLOps初心者がMLflowを触る / MLflow Brief Introduction
zchenry
0
150
Other Decks in Technology
See All in Technology
エンジニアにとってコードと並んで重要な「データ」のお話 - データが動くとコードが見える:関数型=データフロー入門
ismk
0
470
お試しで oxlint を導入してみる #vuefes_aftertalk
bengo4com
2
1.4k
ステートレスなLLMでステートフルなAI agentを作る - YAPC::Fukuoka 2025
gfx
5
670
What's the recommended Flutter architecture
aakira
3
1.1k
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
430
Spring Boot利用を前提としたJavaライブラリ開発方法の提案
kokihoshihara
PRO
2
140
QAセントラル組織が運営する自動テストプラットフォームの課題と現状
lycorptech_jp
PRO
0
370
レビュー負債を解消する ― CodeRabbitが支えるAI駆動開発
moongift
PRO
0
150
技術の総合格闘技!?AIインフラの現在と未来。
ebiken
PRO
0
250
ソフトウェア開発現代史: 55%が変化に備えていない現実 ─ AI支援型開発時代のReboot Japan #agilejapan
takabow
1
1.8k
CodexでもAgent Skillsを使いたい
gotalab555
9
4.5k
3年ぶりの re:Invent 今年の意気込みと前回の振り返り
kazzpapa3
0
200
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
7.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The Pragmatic Product Professional
lauravandoore
36
7k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
RailsConf 2023
tenderlove
30
1.3k
BBQ
matthewcrist
89
9.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
The Cost Of JavaScript in 2023
addyosmani
55
9.2k
Transcript
Gradioでもう誰でも見れるデモ 機械学習の社会実装勉強会第17回 Henry 2022/11/26
人にデモを見せたい ▪ 機械学習を使ったシステムを開発するにあたって、以下のよう な進捗共用が少なくない • データ解析手法を変えた場合の解析結果 • モデル構造を変えた場合の推論結果 • 新しいデータに対するEDA
• …… ▪ ニーズ • 粒度の高い細かめのステップでデモを見せたい(大げさでない) • インタラクティブなデモを見せたい ▪ ペインポイント • 相手にアクセスしてもらうためには、どこかにデプロイしないといけない • 再現可能な環境を用意し、相手に準備してもらう 2
Gradioでインタラクティブなデモ ▪ 二層のインタラクティブネス • ブラウザでインタラクティブに扱える • 自分が用意したデモを、他人が簡単にURLでアクセスできる ▪ ブラウザでインタラクティブ •
https://gradio.app/ • Pythonで作れるデータサイエンス・機械学習用のミニアプリ 3
他人が簡単にアクセスできるデモ ▪ パラメータ一つを設定するだけで、シェア可能! • gr.Interface(classify_image, "image", "label").launch(share=True) ▪ これで、http://xxx.gradio.app のようなURLが生成される
▪ このURLにアクセスすることで、ローカルPCで動かされている Gradioアプリにアクセスすることになる • たとえ公開IPなど設定されていなくても! ▪ これの実現方法をこれから説明する 4
SSHを用いたリモートフォワード ▪ 外部ネットワークから内部ネットワークにアクセスしたいという ニーズ ▪ 通常、SSHで使うポートフォワーディングはローカルフォワード と呼ばれて、SSHコネクションと同方向のアクセスしかできな い ▪ しかし、リモートフォワーディングを使えば、片方の通信が確立
された、逆方向のアクセスもできる 5 http://redhatlinux.kt.fc2.com/cont/ssh+pp3.gif
SSHを用いたリモートフォワード ▪ ローカルPC 192.168.11.3 ▪ (Gradioの)サーバー xxx.xx.xxx.xx ▪ ローカルPCで、以下のコマンドを実行 •
ssh -R 8501:xxx.xx.xxx.xx:22 192.168.11.3 ▪ これでサーバーからローカルPCに逆方向で通信するトンネル ができる ▪ サーバーへのアクセスが、ローカルPCでのアプリへにリダイレ クトされる 6
Gradioでの実現方法 ▪ 表はパラメータ一つで制御 ▪ gradio/tunneling.pyにcreate_tunnel関数が実装される • paramikoライブラリーを使用 7
まとめ ▪ Gradioでシェアできるデモ ▪ SSHのリモートフォワード ▪ セキュリティなどのリスクを考慮して、長い期間でデモを見せた いときは、AWS App Runnerでデプロイするのがおすすめ
8