# 프롬프트 생성기 개발 V10: 최종 검토, 모델명 설정 분리 및 README 작성 > 2025년 12월 3일 ## 개발 목표 V9 테스트 중 `RetryError[NotFound]` 에러가 발생했다. 이는 존재하지 않는 모델명을 사용하려고 시도했을 때 발생하는 문제로, 하드코딩된 모델 이름을 유연하게 변경할 수 있도록 구조를 개선할 필요성이 확인되었다. 마지막 단계로, 스크립트의 안정성과 확장성을 높이기 위해 모델 이름을 `.env` 파일로 분리하고, 프로젝트의 전체적인 사용법을 담은 `README.md` 파일을 작성하여 프로젝트를 마무리한다. ## 주요 개선 사항 ### 1. 모델명 설정을 `.env` 파일로 분리 하드코딩된 모델 이름을 `.env` 파일의 `GEMINI_MODEL` 변수로 분리한다. 이를 통해 코드 수정 없이 환경설정 파일만으로 모델을 변경할 수 있게 된다. 만약 `.env` 파일에 `GEMINI_MODEL`이 명시되지 않은 경우, 안정적인 기본값(`gemini-1.5-pro`)을 사용하도록 구현한다. - **`.env.example` 업데이트:** `GEMINI_MODEL` 변수 추가 - **`main.py` 업데이트:** `os.getenv()`를 사용하여 모델 이름을 불러오도록 수정 ### 2. 최종 `README.md` 파일 작성 프로젝트의 목적, 주요 기능, 설치 및 설정 방법, 사용법 등을 총정리한 `README.md` 파일을 작성하여 다른 사용자나 미래의 내가 이 프로젝트를 쉽게 이해하고 사용할 수 있도록 한다. ## 최종 `main.py` 코드 ```python # ... (생략) def setup_generative_ai(api_key, model_name): """Configures the generative AI client and returns the model.""" try: genai.configure(api_key=api_key) return genai.GenerativeModel(model_name) except Exception as e: print(f"Error configuring the AI client: {e}") sys.exit(1) # ... (생략) def main(): """Main function to run the prompt generator.""" load_dotenv() api_key = os.getenv("GOOGLE_API_KEY") if not api_key: print("Error: GOOGLE_API_KEY not found in .env file. Please set it in your .env file.") sys.exit(1) # .env 파일에서 모델 이름을 읽어오고, 없으면 기본값 사용 model_name = os.getenv("GEMINI_MODEL", "gemini-1.5-pro") print(f"Using Gemini model: {model_name}") model = setup_generative_ai(api_key, model_name) # ... (이하 생략) ``` ## 프로젝트 완료 이것으로 '프롬프트 생성기' 개발의 모든 단계를 마친다. 이 프로젝트를 통해 우리는 다음과 같은 과정을 거쳤다. 1. **목표 설정 및 환경 준비 (V1)** 2. **사용자 입력 기반 의도 추론 기능 설계 (V2)** 3. **메타 프롬프트 설계 및 Python 환경 설정 (V3)** 4. **API 연동 및 기본 기능 구현 (V4)** 5. **2단계 프롬프트 생성 및 사용자 입력 처리 (V5)** 6. **유니코드 에러 해결 및 리팩토링 (V6)** 7. **모델명 오류 수정 및 '코드 생성' 의도 구현 (V7)** 8. **나머지 모든 의도에 대한 2단계 프롬프트 구현 (V8)** 9. **CLI 사용성 개선 (재시도 로직, 출력 개선 등) (V9)** 10. **설정 분리 및 최종 문서화 (V10)** 이 과정을 통해 간단한 아이디어에서 시작하여, 여러 의도를 추론하고 그에 맞는 상세 프롬프트를 생성하는 유연하고 안정적인 CLI 도구를 완성했다.