|
| 1 | +# OnLog_Image_Generation |
| 2 | + |
| 3 | +### 프로젝트 개요 |
| 4 | + |
| 5 | +본 프로젝트의 목표는 사용자가 작성한 게시글의 썸네일을 추천하는 서비스를 개발하는 것입니다. |
| 6 | +이 서비스는 사용자가 작성한 게시글의 내용을 깊이 이해하고, 이를 바탕으로 가장 적절한 썸네일을 추천하여 사용자의 편의성을 향상시키는 것을 목표로 합니다. |
| 7 | + |
| 8 | +### 프로젝트 개발 환경 |
| 9 | + |
| 10 | +프로젝트는 아래 환경에서 개발되었습니다. |
| 11 | + |
| 12 | +> OS: macOS Sonoma |
| 13 | +> IDE: Pycharm |
| 14 | +> Python: 3.11.6 |
| 15 | +
|
| 16 | +### 프로젝트 구조 |
| 17 | + |
| 18 | +```text |
| 19 | +. |
| 20 | +├── .dockerignore 🚫 Docker 이미지 생성 시 무시하는 파일 목록 |
| 21 | +├── .env 🔐 프로젝트에서 사용하는 환경 변수 설정 파일 |
| 22 | +├── .git 📂 Git 버전 관리를 위한 디렉토리 |
| 23 | +├── .gitignore 🙈 Git 버전 관리 시 무시하는 파일 목록 |
| 24 | +├── .idea 🧠 IntelliJ IDEA 설정 파일이 저장된 디렉토리 |
| 25 | +├── Dockerfile 🐳 Docker 이미지 생성을 위한 스크립트 |
| 26 | +├── README.md 📚 프로젝트에 대한 설명과 사용 방법 등을 담은 문서 |
| 27 | +├── __pycache__ 🗂️ 파이썬이 컴파일한 버전의 파일을 저장하는 디렉토리 |
| 28 | +├── main.py 🚀 프로그램의 시작점 |
| 29 | +├── my-key.json 🔑 서비스 인증을 위한 개인 키 |
| 30 | +└── requirements.txt 📌 프로젝트에서 필요한 파이썬 패키지 목록 |
| 31 | +``` |
| 32 | + |
| 33 | +### 프로젝트 개발/실행 |
| 34 | + |
| 35 | +해당 프로젝트를 추가로 개발 혹은 실행시켜보고 싶으신 경우 아래의 절차에 따라 진행해주세요 |
| 36 | + |
| 37 | +1. 가상 환경 생성 |
| 38 | + |
| 39 | +```commandline |
| 40 | +python3 -m venv venv |
| 41 | +``` |
| 42 | + |
| 43 | +2. 가상 환경 활성화 |
| 44 | + |
| 45 | +```commandline |
| 46 | +source venv/bin/activate |
| 47 | +``` |
| 48 | + |
| 49 | +3. requirements 다운로드 |
| 50 | + |
| 51 | +```commandline |
| 52 | +pip install -r requirements.txt |
| 53 | +``` |
| 54 | + |
| 55 | +4. `.env` 파일 생성 |
| 56 | + |
| 57 | +```commandline |
| 58 | +touch .env |
| 59 | +``` |
| 60 | + |
| 61 | +5. `.env` 파일에 Karlo API Key 정보 입력 |
| 62 | + |
| 63 | +```text |
| 64 | +KARLO_API_KEY = "{KARLO_API_KEY}" |
| 65 | +``` |
| 66 | + |
| 67 | +6. google translate 사용을 위한 my-key.json 추가 (예시) |
| 68 | + |
| 69 | +```text |
| 70 | +{ |
| 71 | + "type": "{type}", |
| 72 | + "project_id": "{project_id}", |
| 73 | + "private_key_id": "{private_key_id}", |
| 74 | + "private_key": "{private_key}", |
| 75 | + "client_email": "{client_email}", |
| 76 | + "client_id": "{client_id}", |
| 77 | + "auth_uri": "{auth_uri}", |
| 78 | + "token_uri": "{token_uri}", |
| 79 | + "auth_provider_x509_cert_url": "{auth_provider_x509_cert_url}", |
| 80 | + "client_x509_cert_url": "{client_x509_cert_url}", |
| 81 | + "universe_domain": "{universe_domain}" |
| 82 | +} |
| 83 | +``` |
| 84 | + |
| 85 | +7. 프로그램 실행 |
| 86 | + |
| 87 | +```commandline |
| 88 | +uvicorn main:app --port 8000 --reload |
| 89 | +``` |
| 90 | + |
| 91 | +참고) 프로젝트가 실행 중인 환경에 한해 아래 URL에서 API 명세서를 확인할 수 있습니다 |
| 92 | + |
| 93 | +```commandline |
| 94 | +http://localhost:8000/docs |
| 95 | +http://localhost:8000/redoc |
| 96 | +``` |
0 commit comments