|
|
| import streamlit as st |
|
|
|
|
| from langchain.chat_models import ChatOpenAI |
| from langchain.schema import ( |
| AIMessage, |
| HumanMessage, |
| SystemMessage |
| ) |
|
|
| |
| st.set_page_config(page_title="LangChain 이라떼", page_icon=":robot:") |
| st.header("안녕하세요. 저는 이라떼 짹짹이입니다. 무엇을 도와드릴까요?") |
|
|
|
|
|
|
| if "sessionMessages" not in st.session_state: |
| st.session_state.sessionMessages = [ |
| SystemMessage(content="당신은 만능 척척박사입니다. 무엇이든 알고 있는 디지털 비서입니다.") |
| ] |
|
|
|
|
|
|
| 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 |
|
|
|
|
| chat = ChatOpenAI(temperature=0) |
|
|
|
|
|
|
|
|
| user_input=get_text() |
| submit = st.button('생성') |
|
|
| if submit: |
| |
| response = load_answer(user_input) |
| st.subheader("답변 :") |
|
|
| st.write(response,key= 1) |
|
|
|
|