はじめに
Streamlitを使用してこのような場面に直面したことはないでしょうか?
私「よーし、ファイル読み込むぞ~」
st「無理っす。200MBが限界っすわ。」
私「(´・ω・`)」
サイズの制限を変更できるのか?
結論から言います。
できます。
私自身もいろいろと調べていて、全く見つけられず、会社の人から変更できないのか聞かれましたが役に立てず。。。
少しでも良いところを見せようと、調査を進めたところ…
上記のページに以下のような内容が。
Q:Streamlitのアップロードサイズはどのくらいですか?
A:デフォルトでは、Streamlitは最大200MBまでのアップロードサイズを許可します。ただし、この制限はStreamlitの設定ファイルで変更することができます。
まじ(´・ω・`)?
ということで、ドキュメントへレッツゴー。
設定の変更はconfig.tomlファイルから
Streamlitではアプリケーションファイルと同じディレクトリ内に.streamlit
というディレクトリを作成し、その中に設定ファイルであるconfig.toml
ファイルを作成することで、いろいろな設定を行うことができます。
詳細は以下をご覧下さい。
読み進めていくと次のような記載が。
# Max size, in megabytes, for files uploaded with the file_uploader.
# Default: 200
maxUploadSize = 200
デフォルトで200MBになっていますね。
MB表記でこちらの値を変更することでサイズの制限を変えることができます。
実際に変更してみた↓
[server]
maxUploadSize = 1000
1GBに変更できていますね!
まとめ
普通のファイルを読み込むだけならそこまで必要はないとは思いますが、ビッグデータや画像、動画ファイルを読み込むとなると、200MBでは足りなくなる可能性がありますからね。
また、複数のファイルを一気に読み込むこともできるので、そういったときにも有効かもしれませんね。
ちなみに、複数のファイルをアップロードする場合は、以下のようにst.file_uploader
関数のaccept_multiple_files
パラメータをTrue
に設定すればOKです。
st.file_uploader('', type=[''], accept_multiple_files=True)
ドキュメントを漁っていると、知らない機能がたくさんでてきますね!
Streamlitアプリ上でJupyterを使用したり、JupyterでStreamlitアプリを起動したり面白そうな情報もたくさんあります。
暇なときにまとめていこうと思います。
それでは!!!