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
210
Direct Preference Optimization
zchenry
0
380
Diffusion Model with Perceptual Loss
zchenry
0
410
レンズの下のLLM / LLM under the Lens
zchenry
0
190
Go with the Prompt Flow
zchenry
0
170
Mojo Dojo
zchenry
0
220
ことのはの力で画像の異常検知 / Anomaly Detection by Language
zchenry
0
580
驚愕の事実!LangChainが抱える問題 / Problems of LangChain
zchenry
0
260
MLOps初心者がMLflowを触る / MLflow Brief Introduction
zchenry
0
130
Other Decks in Technology
See All in Technology
Automating Web Accessibility Testing with AI Agents
maminami373
0
1k
Bye-Bye Query Spaghetti: Write Queries You'll Actually Understand Using Pipelined SQL Syntax
tobiaslampertlotum
0
140
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
9.9k
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
110
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
3
970
Agile PBL at New Grads Trainings
kawaguti
PRO
1
300
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
140
バッチ処理で悩むバックエンドエンジニアに捧げるAWS Glue入門
diggymo
3
120
Kubernetes における cgroup driver のしくみ: runwasi の bugfix より
z63d
2
220
2025年にHCP Vaultを学び直して見えた景色 / Lessons and New Perspectives from Relearning HCP Vault in 2025
aeonpeople
0
200
生成AIでセキュリティ運用を効率化する話
sakaitakeshi
0
160
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
130
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Building Applications with DynamoDB
mza
96
6.6k
Why Our Code Smells
bkeepers
PRO
339
57k
Site-Speed That Sticks
csswizardry
10
810
Practical Orchestrator
shlominoach
190
11k
Faster Mobile Websites
deanohume
309
31k
How GitHub (no longer) Works
holman
315
140k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Scaling GitHub
holman
463
140k
Building Adaptive Systems
keathley
43
2.7k
Code Review Best Practice
trishagee
70
19k
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