OpenAI와 LangChain으로 AI 시인 만들기
인공지능 시인을 만들고 웹 서비스로 배포하는 과정을 정리합니다.
1. 보안 설정 (.env)
API 키 유출 방지를 위해 .env 파일을 사용합니다. pip install python-dotenv 설치 후 루트 폴더에 생성하세요.
- 파일명: .env
- 내용: OPENAI_API_KEY=your_key_here
2. 핵심 코드 (LangChain & Streamlit)
LangChain의 Chat Model을 활용해 시 작성 로직을 구현하고, Streamlit으로 UI를 만듭니다.
- 설치: pip install langchain-openai streamlit
import streamlit as st
from dotenv import load_dotenv
from langchain_openai import ChatOpenAI
load_dotenv()
chat_model = ChatOpenAI(model="gpt-3.5-turbo")
st.title("AI 시인 서비스")
topic = st.text_input("시의 주제를 입력하세요")
if st.button("시 작성"):
result = chat_model.invoke(topic + "에 대한 시를 써줘.")
st.write(result.content)
3. 비용 및 보안 대안 (Llama2 활용)
OpenAI API의 비용이 부담되거나 데이터 보안이 중요하다면, 로컬 환경에서 Llama2를 사용하는 것을 추천합니다.
- 비용 측면:
- OpenAI: 유료 (사용량에 따른 API 과금)
- Llama2: 무료 (본인 컴퓨터 자원 사용)
- 보안 측면:
- OpenAI: 외부 서버로 데이터 전송 필요
- Llama2: 로컬 환경에서만 처리 (데이터 유출 위험 없음)
- 네트워크 연결:
- OpenAI: 인터넷 연결 필수
- Llama2: 오프라인 환경에서도 작동 가능
- 성능 및 사양:
- OpenAI: 매우 뛰어난 추론 성능
- Llama2: 모델 크기에 따라 차이가 있으며, 로컬 PC 사양에 영향을 받음
💡 팁: 로컬 LLM을 처음 시작하신다면 Ollama라는 도구를 설치해 보세요. LangChain의
ChatOllama모듈을 사용하면 코드 한 줄만 바꿔서 바로 Llama2로 교체할 수 있습니다.
댓글남기기