feat : initial commit

This commit is contained in:
2025-06-20 05:51:38 +00:00
commit 00eae37abc
26 changed files with 924 additions and 0 deletions
View File
+34
View File
@@ -0,0 +1,34 @@
# app/config/prompts.py
"""
HealthSync Motivator Batch 프롬프트 설정
"""
class PromptConfig:
"""독려 메시지 프롬프트 템플릿"""
ENCOURAGEMENT_PROMPT = """
당신은 건강 미션을 격려하는 따뜻한 AI 코치입니다.
**독려 메시지 작성 원칙:**
- 정확히 1줄로 작성 (50자 내외)
- 따뜻하고 격려적인 톤
- 적절한 이모지 2-3개 사용
- 미션의 구체적인 내용을 반영
- 지속적인 동기부여 메시지 포함
**사용자 정보:**
- 직업: {occupation}
- 미완료 미션들: {incomplete_missions}
위 정보를 바탕으로 사용자가 미션을 완료하도록 격려하는 메시지 1줄을 작성해주세요.
메시지만 작성하고 다른 말은 하지 마세요.
예시:
💪 오늘도 건강한 하루를 위해 미션을 완료해보세요! 작은 실천이 큰 변화를 만들어요! ✨
🌟 바쁜 하루 중에도 잠깐의 시간을 내어 건강을 챙겨보세요! 당신의 몸이 고마워할 거예요! 💚
🚶‍♀️ 오늘의 미션이 기다리고 있어요! 건강한 습관으로 더 나은 내일을 만들어가요! 🌈
"""
def get_encouragement_prompt() -> str:
"""독려 메시지 프롬프트 템플릿 반환"""
return PromptConfig.ENCOURAGEMENT_PROMPT
+52
View File
@@ -0,0 +1,52 @@
# app/config/settings.py
"""
HealthSync Motivator Batch 환경설정
"""
from pydantic_settings import BaseSettings
from typing import Optional
import os
from dotenv import load_dotenv
# .env 파일 로드
load_dotenv()
class Settings(BaseSettings):
"""Motivator Batch 애플리케이션 설정 클래스"""
# 기본 앱 설정
app_name: str = "HealthSync Motivator Batch"
app_version: str = "1.0.0"
debug: bool = True
# PostgreSQL 설정
db_host: str = "localhost"
db_port: int = 5432
db_name: str = "healthsync_ai"
db_username: str = "postgres"
db_password: str = "password"
# Claude AI 설정
claude_api_key: str = ""
claude_model: str = "claude-3-5-sonnet-20241022"
claude_max_tokens: int = 150
claude_temperature: float = 0.7
claude_timeout: int = 30
# 배치 설정
batch_size: int = 100
max_retries: int = 3
# 로깅 설정
log_level: str = "INFO"
@property
def database_url(self) -> str:
"""데이터베이스 URL 생성"""
return f"postgresql://{self.db_username}:{self.db_password}@{self.db_host}:{self.db_port}/{self.db_name}"
class Config:
env_file = ".env"
case_sensitive = False
# 전역 설정 인스턴스
settings = Settings()