Как создать тайм-аут для пользователя с помощью st.chat_input() ⇐ Python
-
Гость
Как создать тайм-аут для пользователя с помощью st.chat_input()
Я создал чат-бота с помощью Streamlit, где пользователи могут задавать вопросы и получать ответы по модели LLM. Я хочу добавить дополнительную функцию, при которой пользователь должен ввести ввод в течение 60 секунд. Если этого не произойдет, приложение должно закрыться. Если да, то они должны получить ответ. То же правило применяется и ко второму входу.
Я использовал несколько методов, таких как цикл while for и т. д., но потерпел неудачу. ниже мой исходный код.
user_prompt = st.chat_input() если user_prompt не имеет значения None: st.session_state.messages.append({'role':'user','content':user_prompt}) с st.chat_message('пользователь'): st.write(user_prompt) с st.chat_message('помощник'): с st.spinner('Загрузка...'): ответ = процесс_чат (цепочка, пользовательская_подсказка, st.session_state.chat_history) st.session_state.chat_history.append({'role': 'user', 'content': user_prompt}) st.session_state.chat_history.append({'role': 'ассистент', 'content': ответ}) st.write(ответ) st.session_state.messages.append({'role': 'ассистент', 'content': ответ}) st.session_state.conversation.append({'time':current_time,'user': user_prompt,'assistant': response})```
Я создал чат-бота с помощью Streamlit, где пользователи могут задавать вопросы и получать ответы по модели LLM. Я хочу добавить дополнительную функцию, при которой пользователь должен ввести ввод в течение 60 секунд. Если этого не произойдет, приложение должно закрыться. Если да, то они должны получить ответ. То же правило применяется и ко второму входу.
Я использовал несколько методов, таких как цикл while for и т. д., но потерпел неудачу. ниже мой исходный код.
user_prompt = st.chat_input() если user_prompt не имеет значения None: st.session_state.messages.append({'role':'user','content':user_prompt}) с st.chat_message('пользователь'): st.write(user_prompt) с st.chat_message('помощник'): с st.spinner('Загрузка...'): ответ = процесс_чат (цепочка, пользовательская_подсказка, st.session_state.chat_history) st.session_state.chat_history.append({'role': 'user', 'content': user_prompt}) st.session_state.chat_history.append({'role': 'ассистент', 'content': ответ}) st.write(ответ) st.session_state.messages.append({'role': 'ассистент', 'content': ответ}) st.session_state.conversation.append({'time':current_time,'user': user_prompt,'assistant': response})```