Skip to content

Latest commit

 

History

History
190 lines (156 loc) · 6.17 KB

README.md

File metadata and controls

190 lines (156 loc) · 6.17 KB

SKN03-FINAL-4TEAM

🛠 기술 스택 개요

Backend Framework


Database & ORM


AI & LLM


데이터 처리


Frontend Framework


Frontend 통신


인증 & 보안


인프라 & 배포


코드 품질 & 개발 도구


모니터링 & 문서화

📁 프로젝트 구조

SKN03-FINAL-4TEAM/
├── backend/                   # FastAPI 백엔드 서버
├── frontend/                  # React 프론트엔드
├── LLMcore/                  # AI 챗봇 엔진
└── ollama-docker/            # Ollama 모델 서버

🚀 주요 기능

Backend 시스템

  • FastAPI 기반 RESTful API
  • JWT 기반 인증 시스템
  • MySQL 데이터베이스 연동
  • 소셜 로그인 (Google, Kakao)
  • AWS 클라우드 통합

AI 챗봇 시스템

  • OpenAI GPT 모델 통합
  • LangChain 기반 대화 관리
  • Ollama 로컬 모델 지원
  • 컨텍스트 기반 대화 처리
  • 프롬프트 엔지니어링

Frontend 인터페이스

  • React 기반 SPA
  • Redux 상태 관리
  • 실시간 채팅 인터페이스
  • 반응형 디자인
  • 소셜 로그인 통합

💻 설치 및 실행

Backend 설정

cd backend
pip install -r requirements.txt
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

Frontend 설정

cd frontend
npm install
npm run dev

LLMcore 설정

cd LLMcore
pip install -r requirements.txt
python openai_chatbot/main.py

Ollama 설정

cd ollama-docker
docker build -t ollama-custom .
docker run -d -p 11434:11434 ollama-custom

🔧 환경 변수 설정

각 컴포넌트별 .env 파일이 필요합니다:

Backend (.env)

DATABASE_URL=mysql+asyncmy://user:password@localhost:3306/dbname
JWT_SECRET_KEY=your-secret-key
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secret
KAKAO_CLIENT_ID=your-kakao-client-id

Frontend (.env)

VITE_API_URL=http://localhost:8000
VITE_WS_URL=ws://localhost:8000

LLMcore (.env)

OPENAI_API_KEY=your-openai-api-key
MODEL_NAME=gpt-3.5-turbo
OLLAMA_HOST=http://localhost:11434

📚 API 문서

  • Backend API: http://localhost:8000/docs
  • Swagger UI: http://localhost:8000/redoc

🧪 테스트

Backend 테스트

cd backend
pytest

Frontend 테스트

cd frontend
npm test

LLMcore 테스트

cd LLMcore
pytest tests/

🔍 모니터링

  • Backend 헬스체크: /healthcheck
  • 로그 확인: backend/app.log
  • AWS CloudWatch 통합

👥 팀원 및 역할

  • Backend & 인프라: 김성은
  • Frontend: 구나연
  • AI & LLM: 문건우, 정재재현
  • DevOps: 김성은, 문건우