Introduction
皆様はStreamlitをご存じでしょうか?
完結に説明すると、WebシステムをPythonのみで作成できるフレームワークです。
=======================
Streamlitについて
========================
Pythonで Web開発となるとDjangoやFlask、FastAPI等が有名ですが、
Streamlitではデータの可視化や機械学習モデルを用いたデモに用いられます。
一般的な Web 開発に必要なHTMLやCSS、JavaScriptを用いずとも作成できるため、Web開発に明るくない方や社内で結果を共有する際に優位性を発揮します。
本記事で内容には触れませんが、公式チュートリアル及びドキュメントが充実しているため興味のある方は覗いてみてください。
https://docs.streamlit.io/knowledge-base/tutorials
英語ですがコードは簡易で画像も多いため、やりたいことはほぼチュートリアルで解決します。
学習コストもかなり低いため、Pythonで次何しよう? という方は是非一度お試しください!
手軽かつ非常に簡単に作成でき、デプロイも簡単でした。
ただしUIの変更があって、古い記事やUdemy等では少し躓く可能性があるように感じました。
本記事では公式が提供しているStreamlit Sharingを用いたデプロイ方法を共有します。
以前はStreamlit Cloudという名称で、現在とはUIが異なっています。
本記事でデプロイしたページは、Udemyの下記講座で作成したものです。
ソースコードとデモページも公開しております。
本記事が少しでも読者様の学びに繋がれば幸いです!
「いいね」をしていただけると今後の励みになるので、是非お願いします!
環境
Ubuntu22.04
デプロイ準備
デプロイしたいStreamlitのプロジェクトをGitHubにコミットしておきます。
コミット手順は手前味噌ですが下記を参考にどうぞ。
デプロイ
Streamlitの公式ページにアクセスします。
画面右上のSign upをクリックします。
GitHubとGoogle連携で登録できます。
私はContinue with GitHubから連携しました。
登録完了したらNew appからサクッとデプロイしていきましょう。
| 項目 | 説明 |
|---|---|
| Repository | GitHubのリポジトリをリストから選択します。 |
| Branch | デプロイするブランチをリストから選択します。 |
| Main file path | デプロイするファイルを記入します。 |
| App URL (Optional) | ドメインを記入します。 |
Deploy! には少し時間がかかります。
完了すると、先程指定したドメインにWebページがデプロイされます。
インタラクティブなページがサクッと & 無料でデプロイできちゃいました!
プラン制限
Freeプランでは以下の制約があります。
- メモリ: 1GBまで
- Privateのアプリ: 一つまで
- Publicのアプリ: 無制限
最後に
最後まで閲覧頂きありがとうございました。
私の参画しているプロジェクトでは物体検知や分類結果を直接見せることが多いですが、お客様や社内外向けのデモをStreamlitで作成し、手元で見てもらえるため理解が深まりやすいと思います。
特に機械学習やデータ分析周りは学ぶことも多いため、工数削減にも大変役立ちます。
UIもリッチなので、工数以上に努力の跡が見せられると思います...!
本記事がお役に立てば幸いです!
参考 URL







