上传文件至「/」
This commit is contained in:
31
04.py
Normal file
31
04.py
Normal file
@@ -0,0 +1,31 @@
|
||||
import streamlit as st
|
||||
from deepseek import get_response
|
||||
# 会话管理状态:在程序执行过程中,无论代码重新运行多少次,会话状态里面的变量都会保存
|
||||
|
||||
st.title("黑马智聊机器人")
|
||||
|
||||
# st.session_state 对象,本质就是json对象字典,
|
||||
if "messages" not in st.session_state:
|
||||
st.session_state["messages"] = [{"role": "assistant", "content": "你好,我是黑马智聊机器人,有什么可以帮助你的么?"}]
|
||||
|
||||
for message in st.session_state.messages:
|
||||
with st.chat_message(message["role"]):
|
||||
st.write(message["content"])
|
||||
# 聊天输入
|
||||
user_input = st.chat_input() #你好
|
||||
|
||||
if user_input:
|
||||
#1 把用户的输入添加到会话状态里面messages中
|
||||
st.session_state.messages.append({"role": "user", "content": user_input})
|
||||
#2 在网页上渲染用户输入
|
||||
with st.chat_message("user"):
|
||||
st.write(user_input)
|
||||
#3 调用deepseek.py中的get_response方法,获取大模型的回复
|
||||
with st.spinner("正在思考中..."):
|
||||
response = get_response(st.session_state.messages)
|
||||
#4 把大模型的回复添加到会话状态里面messages中
|
||||
st.session_state.messages.append({"role": "assistant", "content": response})
|
||||
#5 在网页上渲染大模型的回复
|
||||
with st.chat_message("assistant"):
|
||||
st.write(response)
|
||||
|
||||
Reference in New Issue
Block a user