본문 바로가기

SK네트웍스 Family AI캠프 10기/Daily 회고

50일차. LLM - LLM 프로젝트(Chatbot)

더보기

 

50일 차 회고.

 

 요즘 스트레스를 받아서 이를 풀기 위해서 계속 먹다 보니까 탈이 난 것 같다. 그래서 일단 운동보다는 간식을 끊는 걸 먼저 해야 할 것 같다. 일주일 동안 진행한 뒤에 다음 주부터 운동을 시작해야 할 것 같다. 과식을 해서 그런지 아침에 소화제를 먹긴 했지만 배가 여전히 아프고 머리도 어지럽다.

 

 

 

 

1. LLM 프로젝트

 

 

1-1. 개발환경 세팅

 

requirements.txt

python-dotenv
streamlit
openai
jupyter
pandas

 

.gitignore

.venv
__pycache__
.env

 

.env

OPENAI_API_KEY=

 

가상환경

uv venv .venv -p 3.12
.\.venv\Scripts\activate
uv pip install -r .\requirements.txt

 

Git & Github

  • Initialize Repository
    • Github에 연동
  • Publish Branch
    • main
      • 개발 최종 완료 시 제일 마지막에 merge한다. 
    • develop
      • 기능 하나 구현 완료할 때마다 merge한다.
    • feature
      • 기능별로 feature branch를 생성한 후, 완료되면 삭제한다. 
      • 수시로 commit한다.

 

 

1-2. 개발

 

Flow Chart

 

File Structure

LLM_PROJECT
├─ .venv
├─ common
│   ├─ llm
│   │   ├─ groq.py
│   │   └─ openai.py
│   └─ constant.py
├─ .env
├─ .gitignore
├─ chatbot.py
├─ display.py
├─ history.py
├─ input.py
├─ openai_test.ipynb
├─ README.md
└─ requirements.txt

 

개발 과정

  • Chatbot 초기 개발
    • chatbot.py
  • 모듈화
    • history.py 
    • input.py
    • display.py
    • common/constant.py
  • OpenAI 모델 추가
    • common/llm/openai.py