
구름톤 유니브 시즌톤을 위해 개발된 AI 애플리케이션입니다. 이 서비스는 Google의 최신 LLM인 Gemini를 활용하여 두 가지 핵심 기능을 제공합니다.
- 멀티모달 업종 추천: 사용자가 가게 이름, 설명, 대표 이미지, 메뉴판 이미지를 업로드하면, AI가 이를 종합적으로 분석하여 최적의 업종을 추천합니다.
- 대화형 챗봇: MongoDB와 연동하여 대화 기록을 관리하는 챗봇 기능을 통해 사용자와 자연스러운 소통이 가능합니다. 사장님이 대화하는 챗봇이며 사용법 등을 제공합니다.
- 업종 추천: 텍스트와 이미지(멀티모달) 입력을 기반으로 한 AI 업종 분류
- 챗봇: 세션 ID 기반으로 대화 맥락을 기억하는 대화형 챗봇
- CI/CD 자동화:
main
브랜치 변경 시 GitHub Actions를 통한 자동 빌드 및 서버 배포
구분 | 기술 |
---|---|
Backend | |
AI / LLM | |
Database | |
DevOps |
/ ├── app/ # AI 관련 코드 모듈 (모델, 서비스 로직) ├── main.py # 실행 진입점 (API 서버 구동) ├── requirements.txt # Python 의존성 패키지 ├── test_main.http # API 테스트용 HTTP 요청 샘플 ├── Dockerfile # 컨테이너 빌드 설정 ├── .dockerignore # Docker 빌드시 제외할 파일 └── .github/workflows/ # CI/CD 설정 (GitHub Actions)
프로젝트를 실행하기 위해 루트 디렉토리에 .env
파일을 생성하고 아래 내용을 채워주세요.
# .env
# Google Gemini API 키
GEMINI_API_KEY="여기에_API_키를_입력하세요"
# MongoDB 연결 URI
# 예: mongodb://<user>:<password>@<host>:<port>/
MONGO_URI="여기에_MongoDB_연결_URI를_입력하세요"
# (선택) LangChain에서 사용할 MongoDB 데이터베이스 이름
MONGO_DB_NAME="9oorm"
# (선택) LangChain에서 사용할 MongoDB 컬렉션 이름
MONGO_COLLECTION="chat_histories"
- 독립적인 AI 서비스 모듈 → 백엔드와 분리된 구조
- 컨테이너화(Docker)로 배포 환경에 구애받지 않음
- API 엔드포인트 테스트용
.http
파일 제공