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
1k
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
0
120
Direct Preference Optimization
zchenry
0
330
Diffusion Model with Perceptual Loss
zchenry
0
300
レンズの下のLLM / LLM under the Lens
zchenry
0
160
Go with the Prompt Flow
zchenry
0
140
Mojo Dojo
zchenry
0
180
ことのはの力で画像の異常検知 / Anomaly Detection by Language
zchenry
0
460
驚愕の事実!LangChainが抱える問題 / Problems of LangChain
zchenry
0
200
MLOps初心者がMLflowを触る / MLflow Brief Introduction
zchenry
0
95
Other Decks in Technology
See All in Technology
デスクトップだけじゃないUbuntu
mtyshibata
0
110
Goで作って学ぶWebSocket
ryuichi1208
2
1.3k
Building Products in the LLM Era
ymatsuwitter
10
5.5k
室長と気ままに学ぶマイクロソフトのビジネスアプリケーションとビジネスプロセス
ryoheig0405
0
370
自動テストの世界に、この5年間で起きたこと
autifyhq
10
8.6k
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.3k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
57k
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
1.4k
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
エンジニアのためのドキュメント力基礎講座〜構造化思考から始めよう〜(2025/02/15jbug広島#15発表資料)
yasuoyasuo
17
6.8k
ホワイトボードチャレンジ 説明&実行資料
ichimichi
0
130
Larkご案内資料
customercloud
PRO
0
650
Featured
See All Featured
Done Done
chrislema
182
16k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
550
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Facilitating Awesome Meetings
lara
52
6.2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
630
How STYLIGHT went responsive
nonsquared
98
5.4k
Documentation Writing (for coders)
carmenintech
67
4.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Automating Front-end Workflow
addyosmani
1368
200k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
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