You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用streamlit_feedback获取输出数据遇空值问题求助

解决streamlit_feedback反馈为空的问题

以下是具体排查和修复步骤:

  • 替换print()为Streamlit前端输出方法
    Streamlit的脚本重跑机制下,print()的内容只会显示在运行脚本的终端里,不会出现在网页上。要在前端看到反馈内容,改用st.write(feedback)或st.json(feedback)。

  • 升级streamlit-feedback到最新版本
    旧版本组件可能存在返回值异常,执行以下命令更新:

    pip install --upgrade streamlit-feedback
    
  • 用Session State持久化反馈数据
    每次交互Streamlit都会重新执行整个脚本,提交反馈后页面刷新会重置变量。把反馈存入st.session_state避免丢失:

    import streamlit as st
    from streamlit_feedback import streamlit_feedback
    
    # 初始化session state存储
    if "user_feedback" not in st.session_state:
        st.session_state.user_feedback = None
    
    st.session_state.user_feedback = streamlit_feedback(
        feedback_type="thumbs",
        optional_text_label="[Optional] Please provide an explanation",
    )
    
    if st.session_state.user_feedback:
        st.write("提交的反馈内容:")
        st.json(st.session_state.user_feedback)
    
  • 直观调试方法
    在脚本中添加st.write("当前反馈变量值:", feedback),直接在网页上查看变量状态,比终端print()更高效。如果仍为空,检查组件是否被其他页面元素覆盖,或是否有代码触发了不必要的页面重跑。

内容的提问来源于stack exchange,提问作者Varun G

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 01:15:56