Criação de um aplicativo Streamlit¶
Pré-requisitos¶
Antes de criar um aplicativo Streamlit com Snowflake CLI, você deve atender aos seguintes pré-requisitos:
Certifique-se de que sua conta tenha os privilégios corretos conforme descrito em Privilégios necessários para criar e usar um aplicativo Streamlit.
Certifique-se de poder criar ou ter acesso a um estágio nomeado onde você pode fazer upload dos arquivos do aplicativo Streamlit.
Como inicializar um aplicativo Streamlit¶
O comando snow init
cria um diretório local com um conjunto de arquivos de amostra que ajudam você a começar a criar um aplicativo Streamlit. Ao executar este comando, o Snowflake CLI cria a seguinte estrutura de diretório:
example_streamlit/ - project name (default: example_streamlit)
snowflake.yml - configuration for snow streamlit commands
environment.yml - additional config for Streamlit, for example installing packages
streamlit_app.py - entrypoint file of the app
pages/ - directory name for Streamlit pages (default pages)
common/ - example “shared library”
Para inicializar um aplicativo Streamlit, digite o seguinte comando:
snow init new_streamlit_project --template example_streamlit -D query_warehouse=dev_warehouse -D stage=testing
Cuidado
Os arquivos dentro de um diretório de projeto são processados por Snowflake CLI e podem ser carregados no Snowflake ao executar outros comandos snow streamlit
. Você deve ter cuidado ao colocar qualquer informação confidencial dentro de arquivos em um diretório de projeto.
Para obter mais informações sobre a estrutura do arquivo, consulte Criação de arquivos Streamlit em seu sistema de arquivo local.
Criação da definição do projeto para um aplicativo Streamlit¶
Cada aplicativo Streamlit no Snowflake deve incluir um arquivo de definição de projeto snowflake.yml
. O Streamlit é limitado a um aplicativo por arquivo de definição de projeto.
A seguir mostramos um exemplo de arquivo de definição de projeto snowflake.yml
:
definition_version: 2
entities:
my_streamlit:
type: streamlit
identifier: streamlit_app
stage: my_streamlit_stage
query_warehouse: my_streamlit_warehouse
main_file: streamlit_app.py
pages_dir: pages/
external_access_integrations:
- test_egress
secrets:
dummy_secret: "db.schema.dummy_secret"
imports:
- "@my_stage/foo.py"
artifacts:
- common/hello.py
- environment.yml
A tabela a seguir descreve as propriedades de uma definição de projeto Streamlit.
Propriedade |
Definição |
---|---|
identifier opcional, cadeia de caracteres |
Identificador Snowflake opcional para a entidade. O valor pode ter as seguintes formas:
|
tipo opcional, cadeia de caracteres |
Deve ser |
comment opcional, cadeia de caracteres |
Comentário sobre o painel do Streamlit. |
title opcional, cadeia de caracteres |
Título legível para humanos para o painel Streamlit. |
stage opcional, cadeia de caracteres |
Estágio em que os artefatos do aplicativo serão armazenados. Padrão: nenhum. |
query_warehouse obrigatório, cadeia de caracteres |
Warehouse Snowflake para hospedar o aplicativo. |
main_file opcional, cadeia de caracteres |
Arquivo de ponto de entrada do aplicativo streamlit. Padrão: «streamlit_app.py». |
pages_dir opcional, cadeia de caracteres |
Páginas Streamlit. Padrão: “páginas”. |
artifacts obrigatório, sequência de cadeias de caracteres |
Lista de arquivos que devem ser inclusos nos artefatos de implementação. |