LLM_PYTHON_PROJECT/
├── app/
│ ├── api/ # 외부 API 연동/관리
│ │ ├── __init__.py
│ │ ├── kakaomap_rest_api.py # 카카오맵 REST API 연동
│ │ ├── kakaomap_transform_address.py # 주소-좌표 변환 유틸
│ │ ├── naver_search_api.py # 네이버 검색 API 연동
│ │ └── openAI_api.py # OpenAI(GPT 등) 연동
│ ├── crawlers/ # 크롤러/스크래핑 코드
│ │ ├── __init__.py
│ │ └── get_review_content.py # 리뷰 데이터 수집
│ ├── embeddings_db/ # 임베딩 DB 관리
│ │ ├── __init__.py
│ │ └── initialize_vector_db.py # 벡터DB 초기화
│ ├── fastapi_cicd/ # FastAPI/배포 관련
│ │ ├── __init__.py
│ │ └── flutter_fast_api.py # FastAPI 진입점(main app)
│ ├── processing/ # 데이터 처리/전처리
│ │ └── __init__.py
│ ├── config.py # 설정파일 (환경설정)
│ └── main.py # 앱 전체 실행 진입점
├── .dockerignore # 도커 빌드 제외 목록
├── .env # 환경 변수 파일
├── .gitignore # git 무시 파일 목록
├── cloudbuild_cd.yaml # GCP Cloud Build 배포 설정
├── cloudbuild_ci.yaml # GCP Cloud Build CI 설정
├── Dockerfile # Docker 컨테이너 빌드 파일
├── env_sample # 환경 변수 샘플
├── package_install.sh # 패키지 일괄 설치 스크립트
├── README.md # 프로젝트 설명서
└── requirements.txt # Python 패키지 명세
명명 규칙:
주요 파일/폴더 설명 표
경로 | 설명 |
---|---|
app/api/ |
외부 API 연동/관리 |
app/crawlers/ |
웹 크롤러, 리뷰 데이터 수집 |
app/embeddings_db/ |
임베딩 DB 및 벡터DB 초기화 |
app/fastapi_cicd/ |
FastAPI 서버/배포 관련 |
app/processing/ |
데이터 처리, 전처리 함수 |
config.py |
프로젝트 환경 설정 |
main.py |
FastAPI 메인 실행 파일 |
cloudbuild_cd.yaml , .ci.yaml |
GCP Cloud Build(CI/CD) 설정 |
Dockerfile |
도커 컨테이너 빌드 |
package_install.sh |
패키지 설치 스크립트 |
requirements.txt |
패키지 목록 |