Replies: 1 comment
|
Hi! I think this is a valid distinction to raise. As far as I can tell, The The situation is different for the newer Container Runtime. A container-runtime Streamlit app can declare PyPI dependencies directly through The application must be configured with an external access integration that allows access to the selected package index. Without that integration, the container runtime can only use its preinstalled packages or wheel files included in the application source. So I would summarize the current options as follows:
Therefore, I agree that a Streamlit-specific build command analogous to [1] https://docs.snowflake.com/en/developer-guide/streamlit/app-development/runtime-environments |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
snow snowpark buildcommand parsesrequirements.txt, downloads dependencies (missing in Snowflake Conda Channel) and createsapp.zipwith source code and dependencies (missing in Snowflake Conda Channel).snow snowpark deploycreates UDFs/UDPs withimportspointing toapp.zip(uploaded to SF stage).It would be great if Streamlit functionality did the same. If we need a package - we have to create packages ourselves with
snow snowpark package createandsnow snowpark package upload. It becomes a problem when transient packages are also not in Conda. Manually traversing dependency tree may be not the best experience.Potential workaround (haven't tested it yet):
requirements.txtsnow snowpark build- will createdependencies.zipsnowflake.ymlto includedependecies.zipto artifactssnowflake.ymlto include stage + path todependecies.zipto importssnow streamlit deployEven with the workaround we would have to support Conda-deps with
environment.ymland non-Conda-deps withrequirements.txt.May be I'm exaggerating the problem. Streamlit should be used just to display information, but if it were 100% true why would Container Runtime become available for Streamlit apps?
All reactions