@@ -84,3 +84,72 @@ ElevenLabs는 고품질의 감정 표현 가능한 Text-to-Speech (TTS) API를
8484
8585- ** Yolov8** : https://docs.ultralytics.com/ko/models/yolov8
8686
87+ ---
88+ ## 디렉토리 구조
89+ ```
90+ evertale_ai/
91+ ├─ .github/ # Github Actions
92+ │
93+ ├─ everTale/
94+ │ ├─ app/
95+ │ │ ├─ service # 기능별 비즈니스 로직 모음
96+ │ │ ├─ api.py # 엔드포인트 정의 및 서비스 호출 연결
97+ │ │ ├─ config.py # 환경변수 로딩 및 설정값 관리
98+ │ │ ├─ dto.py # 요청/응답 DTO 정의
99+ │ │ ├─ main.py # 서버 엔트리포인트
100+ │ │ └─ __init__.py
101+ │ ├─ static # 정적 리소스 저장
102+ │ ├─ .env # 로컬 실행용 환경변수
103+ | └─ requirements.txt # Python 의존성 목록
104+ │
105+ ├─ models # YOLO 모델 가중치/실험 파일
106+ ├─ Dockerfile
107+ ├─ .gitignore
108+ └─ README.md
109+ ```
110+ - ` .github/ ` : CI/CD(예: GitHub Actions 배포), 이슈/PR 템플릿 등 협업 자동화 설정
111+ - ` everTale/ ` : FastAPI 기반 AI 서버 코드가 들어있는 메인 패키지
112+ - ` everTale/app/ ` : API 엔드포인트(` api.py ` )와 설정(` config.py ` ), 요청/응답 스키마(` dto.py ` ), 서버 시작점(` main.py ` ), 그리고 기능 로직(` service/ ` )
113+ - ` everTale/static/ ` : 실행 중 필요한 정적 파일(샘플/임시 결과물 등)을 저장하는 용도
114+ - ` everTale/.env ` : OpenAI 키, HuggingFace 토큰, 모델 경로 등 실행 환경변수를 담는 파일
115+ - ` requirements.txt ` : 로컬 실행을 위한 파이썬 라이브러리 의존성 목록
116+ - ` models/ ` : YOLO 등 모델 가중치 파일(.pt)과 실험/검증 노트북(.ipynb)을 보관
117+ - ` Dockerfile ` : 동일한 환경에서 실행/배포가 가능하도록 도커 이미지를 빌드하는 설정
118+
119+ ---
120+ ## 로컬 실행 방법
121+ ### 1. 레포 내려받기(git clone)
122+ ```
123+ git clone https://github.com/DropThe8bit/EverTale_AI.git evertale_ai
124+ cd evertale_ai
125+ ```
126+ ### 2. 가상환경 설치
127+ ```
128+ conda create -n evertale-ai python=3.10 -y
129+ conda activate evertale-ai
130+ ```
131+ ### 3. requirements.txt 설치
132+ ```
133+ pip install --upgrade pip
134+ pip install -r everTale/requirements.txt
135+ ```
136+ ### 4. .env 파일 생성
137+ - 실행 환경변수를 채워넣습니다.
138+ ```
139+ OPENAI_API_KEY=
140+ HF_TOKEN=
141+ AWS_ACCESS_KEY_ID=
142+ AWS_SECRET_ACCESS_KEY=
143+ AWS_REGION=
144+ S3_BUCKET_NAME=
145+ S3_BASE_URL=
146+ ELEVEN_API_KEY=
147+ YOLO_MODEL_PATH=
148+ ```
149+ ### 5. 로컬 서버 실행
150+ - 터미널에 아래 코드를 작성해 직접 실행합니다.
151+ ```
152+ cd everTale
153+ uvicorn app.main:app --reload
154+ ```
155+
0 commit comments