一、页面基础配置python运行# 页面全局设置 st.set_page_config(page_title标题, layoutwide, initial_sidebar_stateauto) # 标题层级 st.title(大标题) st.header(一级标题) st.subheader(二级标题) # 普通文本、markdown st.write(普通文字) st.markdown(# Markdown语法) # 分割线 st.divider() # 提示文案 st.info(提示) st.success(成功) st.warning(警告) st.error(错误)二、侧边栏组件python运行# 侧边栏下拉选择 st.sidebar.selectbox(选项, [A,B]) # 侧边栏滑块 st.sidebar.slider(数值, 0, 100, 50) # 侧边栏开关 st.sidebar.toggle(开关) # 侧边栏输入框 st.sidebar.text_input(输入)三、交互输入控件python运行st.text_input(单行输入) st.text_area(多行文本框) st.number_input(数字输入) st.selectbox(下拉单选, [选项1,选项2]) st.multiselect(多选, [a,b,c]) st.slider(滑动条, min, max, 默认值) st.toggle(开关按钮) st.checkbox(复选框) st.radio(单选框, [男,女]) st.button(普通按钮)四、聊天对话专属函数python运行# 聊天气泡 with st.chat_message(user): st.write(用户消息) with st.chat_message(assistant): st.write(AI回复) # 底部聊天输入框 prompt st.chat_input(请输入对话) # 动态占位流式输出必备 placeholder st.empty()五、布局容器python运行# 分列布局 col1, col2 st.columns(2) with col1: st.write(左栏内容) # 折叠面板 with st.expander(点击展开详情): st.write(隐藏内容) # 弹窗提示 st.toast(浮动提示消息)六、文件与媒体python运行# 文件上传 upload st.file_uploader(上传文件) # 图片展示 st.image(图片路径) # 音频视频 st.audio() st.video()七、数据表格展示python运行st.dataframe(df) # 可交互表格 st.table(df) # 静态表格 st.json(data) # JSON格式化展示八、加载状态python运行# 转圈加载动画 with st.spinner(思考中...): pass # 进度条 progress st.progress(0)九、会话状态保存聊天记录 / 参数python运行# 初始化状态 if key not in st.session_state: st.session_state.key [] # 读写状态 st.session_state.key 123 data st.session_state.key十、缓存加速避免重复加载模型python运行# 缓存模型、资源 st.cache_resource def load_model(): return 模型实例十一、AI 对话高频组合示例python运行import streamlit as st st.title(本地Ollama对话) if msg not in st.session_state: st.session_state.msg [] # 历史消息 for m in st.session_state.msg: st.chat_message(m[role]).write(m[content]) # 输入对话 txt st.chat_input(提问) if txt: st.session_state.msg.append({role:user,content:txt}) st.chat_message(user).write(txt)