import streamlit as st from langchain_openai import ChatOpenAI from langchain.schema import AIMessage, HumanMessage, SystemMessage # Streamlit UI 설정 st.set_page_config(page_title="데이터스트림즈 챗 모델", page_icon=":robot:") st.header("안녕하세요. 저는 데이터스트림즈에서 제작한 고혈압 전문 상담 AI 대화 봇이에요. 저는 말씀하시는 것을 기억하니 계속해서 질문해주시면 되요.") # 세션 메시지 초기화 if "sessionMessages" not in st.session_state: st.session_state.sessionMessages = [ SystemMessage(content="You are a renowned doctor specializing in hypertension.") ] # 대답 로드 함수 def load_answer(question): st.session_state.sessionMessages.append(HumanMessage(content=question)) assistant_answer = chat(st.session_state.sessionMessages) st.session_state.sessionMessages.append(AIMessage(content=assistant_answer.content)) return assistant_answer.content # 사용자 입력 받기 def get_text(): input_text = st.text_input("상담자: ", key="input") return input_text # ChatOpenAI 객체 생성 chat = ChatOpenAI(temperature=0.7) user_input = get_text() submit = st.button('Generate') if submit: response = load_answer(user_input) st.subheader("Answer:") st.write(response, key=1)