请参阅下面的图片:

我有以下用户流程/目标:
H 110将字符串输出写入文本框(替换“Select.”)H 211F 212
我有以下代码:
import streamlit as st
import os
import openai
from io import StringIO
from main import get_sql_response
@st.cache
def fetch_response(query_text):
## Get the API key
openai.api_key = os.getenv("OPENAI_API_KEY")
## Get the API response
response = get_sql_response(openai.api_key, query_text)
print(response.choices[0]['text'])
#st.caption(response.choices[0]['text'])
st.text_area(label='The Query',key='qres', value=response.choices[0]['text'])
return (response)
query_text = ""
st.markdown('## Sage Version **V0.1**')
st.markdown("#### Query File ")
uploaded_file = st.file_uploader(" ", type='txt', accept_multiple_files=False, label_visibility="visible")
if uploaded_file is not None:
# To read file as bytes:
query_text = StringIO(uploaded_file.getvalue().decode("utf-8"))
#st.write(query_text)
res = st.button("Fetch", on_click=fetch_response, args=(query_text))
qres = st.text_area(label='The Query',key='qres', placeholder="SELECT...")我会将回调结果写入一个新的文本框:

我还得到了以下错误:

如何将回调函数结果写入同一个文本框?
发布于 2022-09-30 07:36:00
您有两个键值相同的st.text_area,这会导致错误。更改一个st.text_area的键值之一。每个键都必须是唯一的。
# make one of the key values here unique
st.text_area(label='The Query',key='qres', value=response.choices[0]['text'])
qres = st.text_area(label='The Query',key='qresvar', placeholder="SELECT...") https://stackoverflow.com/questions/73902944
复制相似问题