import streamlit as st
# 최신 PromptTemplate import
from langchain_core.prompts import PromptTemplate
from langchain_ollama import ChatOllama # 최신 ChatOllama 위치
# 페이지 기본 설정
st.set_page_config(page_title="이메일 작성 서비스예요~", page_icon=":robot:")
st.header("이메일 작성기")
# 입력 영역 함수
def getEmail():
input_text = st.text_area(label="메일 입력", label_visibility='collapsed',
placeholder="당신의 메일은...", key="input_text")
return input_text
input_text = getEmail()
# 이메일 템플릿
query_template = """
메일을 작성해주세요.
아래는 이메일입니다:
이메일: {email}
"""
prompt = PromptTemplate(
input_variables=["email"],
template=query_template,
)
def loadLanguageModel():
llm = ChatOllama(temperature=0.0, model="llama3-ko")
return llm
# 예제 보기 버튼
st.button("*예제를 보여주세요*", type='secondary', help="봇이 작성한 메일을 확인해보세요.")
st.markdown("### 봇이 작성한 메일은:")
# 입력이 있을 경우 처리
if input_text:
llm = loadLanguageModel()
prompt_with_email = prompt.format(email=input_text)
formatted_email = llm.invoke(prompt_with_email)
st.write(formatted_email)