教程https://www.bilibili.com/video/BV1yjz5BLEoY代码https://github.com/shangxiang0907/HeiMa-AI-LLM-RAG-Agent-Dev云开发平台https://hzh.sealos.run文章目录RAG项目-05、RAG项目-完成离线流程开发介绍Streamlit特性当Web页面元素发生变化则代码全部重新执行一遍而st.session_state能保存状态故使用它来持久化KnowledgeBaseService对象→提示词根据图片内容帮我给rag-clothing-customer-service/app_file_uploader.py 加上上传文件等待并转圈效果←AI回复→问AIst.success和st.write有什么区别1. **st.success** - 成功提示框2. **st.write** - 通用文本输出3. **其他类似的提示函数**4. **在你的代码中的选择**RAG项目-05、RAG项目-完成离线流程开发介绍Streamlit特性当Web页面元素发生变化则代码全部重新执行一遍而st.session_state能保存状态故使用它来持久化KnowledgeBaseService对象→提示词根据图片内容帮我给rag-clothing-customer-service/app_file_uploader.py 加上上传文件等待并转圈效果←AI回复检查当前代码按图片示例添加上传等待和转圈效果。[1 tool called]按图片示例添加上传等待和转圈效果导入time在 spinner 中添加time.sleep(1)并将提示文本改为载入知识库中…。[3 tools called]已按图片示例添加上传等待和转圈效果。修改如下导入time模块用于添加等待延迟在 spinner 中添加time.sleep(1)模拟处理等待将提示文本改为载入知识库中。。。与图片一致添加注释说明 spinner 的转圈动画效果将结果显示方式改为st.write(result)与图片一致现在当用户点击上传到知识库按钮时会显示转圈动画和载入知识库中。。。提示并在上传过程中有 1 秒的等待效果提供更好的视觉反馈。修改后的关键代码# 上传按钮ifst.button(上传到知识库):# 在spinner内的代码执行过程中,会有一个转圈动画withst.spinner(载入知识库中。。。):time.sleep(1)# 模拟等待效果resultst.session_state.kb_service.upload_by_str(text,file_name)st.write(result)→问AIst.success和st.write有什么区别st.success和st.write的区别[1 tool called]1.st.success- 成功提示框用途显示成功消息显示效果绿色背景框左侧有 ✓ 图标样式突出用于成功反馈使用场景操作成功、任务完成等示例st.success(文件上传成功)# 显示效果绿色框 ✓ 图标 文件上传成功2.st.write- 通用文本输出用途通用输出可显示多种类型显示效果普通文本无特殊样式无图标可自动识别并格式化多种类型字符串、数字、DataFrame、图表等使用场景显示普通信息、数据、变量值等示例st.write(文件上传完成)st.write(result)# result 可以是字符串、字典、列表等# 显示效果普通文本无特殊样式3.其他类似的提示函数Streamlit 还提供了其他状态提示st.error()- 错误提示红色框 ✗ 图标st.warning()- 警告提示黄色框 ⚠ 图标st.info()- 信息提示蓝色框 ℹ 图标4.在你的代码中的选择当前代码使用st.write(result)会以普通文本显示结果。如果result是成功消息可以改用st.success(result)# 会显示为绿色成功提示框如果result可能包含错误信息可以这样处理if成功inresultor完成inresult:st.success(result)else:st.error(result)