Simple case
Nivel: Simple — totalmente guiado, datos de muestra. Tiempo: 20–30 min.
Contexto#
Toda integración de streamlit-coco parte de la misma forma: tú posees la página Streamlit, CoCo posee la sesión. examples/chat_app.py es la referencia funcional incluida para esa forma — las mismas cuatro llamadas que muestra el quickstart del README de forma aislada: check_environment(), render_start_gate(), get_or_create_session(), y panel() + chat_input_bar().
Objetivo#
Ejecutar la app de referencia incluida, identificar cada una de las cuatro llamadas en el código fuente y ejercitar tanto un turno de solo lectura como uno protegido por aprobación — de modo que puedas señalar cualquier línea de chat_app.py y decir qué hace.
Datos#
Suministrados. No es necesario crear ningún objeto de Snowflake: SNOWFLAKE_SAMPLE_DATA (incluido en cualquier cuenta de Snowflake con datos de muestra habilitados), en concreto el esquema TPCH_SF1, es de solo lectura y está disponible por defecto. También se suministra un conjunto curado de prompts en examples/testdata/prompts.json, navegable desde el interruptor Test prompts de la barra lateral en make chat.
Pasos#
- Confirma que tu entorno está listo — la
lista de verificación de configuración debería estar completamente marcada antes de empezar.
- Ejecuta
make chat. Esto lanzaexamples/chat_app.py. - Abre
examples/chat_app.pyen un editor junto a la pestaña delnavegador. Encuentra y lee, en orden:
env = st_coco.check_environment(connection=connection)— sondea SDK,CLI y configuración de Snowflake sin iniciar un agente.
- `st_coco.render_start_gate(opts, session_key=SESSION_KEY,
gate_key=GATE_KEY, env=env)` — la pantalla de aterrizaje; devuelve
Falsehasta que haces clic en Start CoCo Chat. session = st_coco.get_or_create_session(opts, key=SESSION_KEY)—obtiene o crea el worker en segundo plano, almacenado en
st.session_state.st_coco.panel(session=session, ...)seguido dest_coco.chat_input_bar(session, ...)— la interfaz de transcripción/salida y el cuadro de entrada.
- En el navegador, haz clic en Start CoCo Chat si aún no lo has
hecho.
- Escribe: "What tables are available in SNOWFLAKE_SAMPLE_DATA.TPCH_SF1?"
Observa cómo la transcripción se transmite de forma progresiva en lugar de aparecer toda de golpe, y fíjate en la tarjeta de herramienta que aparece.
- Escribe: "Create a summary table called TOP_CUSTOMERS in my schema."
Aparece un banner de aprobación con Approve once, Always allow, Deny. Haz clic en Deny con un motivo — confirma que el agente lo reconoce y no crea la tabla.
Resultado esperado#
- La transcripción del paso 5 se renderiza de forma progresiva, con al
menos una tarjeta de herramienta visible (normalmente SQL o Glob).
- La transcripción del paso 6 se pausa en un banner de aprobación antes de
crear ninguna tabla; denegarla no deja ningún objeto nuevo en tu esquema.
- Puedes nombrar, de memoria, cuál de las cuatro llamadas en
chat_app.pyprodujo la puerta de inicio, la sesión y el panel.
Dónde mirar si te atascas#
- Si la app nunca sale de la puerta de inicio o la transcripción nunca
empieza a transmitirse:
help.html#session-stuck-connectingyhelp.html#coco-connection-error. - Si no aparece ningún banner de aprobación para la solicitud
CREATE TABLE, revisa de nuevorequire_approval_foren las píldoras Requires approval de la barra lateral dechat_app.py, o el paso de comprobación del entorno de la lista de verificación de configuración.