From 14bbe653ce342e1194105eca20e05e998d1858e1 Mon Sep 17 00:00:00 2001 From: Minseo-Jo Date: Thu, 23 Oct 2025 15:09:09 +0900 Subject: [PATCH] =?UTF-8?q?AI=20Service=20=EC=B4=88=EA=B8=B0=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=20=EB=B0=8F=20=ED=8C=A8=ED=82=A4=EC=A7=80=20=EA=B5=AC?= =?UTF-8?q?=EC=A1=B0=20=EC=83=9D=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - application.yml 설정 업데이트 - Redis Database: 4번으로 변경 (서비스별 분리) - Server Port: 8084로 변경 - Azure OpenAI 설정 추가 (gpt-4o, text-embedding-3-large) - Azure AI Search 설정 추가 - Azure Event Hubs 설정 추가 - JWT 토큰 유효기간 표준화 (1800s/86400s) - Clean Architecture 패키지 구조 생성 - biz/domain: 도메인 모델 - biz/dto: 비즈니스 DTO - biz/usecase: 유스케이스 (in/out 포트) - biz/service: 유스케이스 구현체 - infra/controller: REST API 컨트롤러 - infra/gateway: 출력 포트 구현체 - infra/config: 설정 클래스 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- ai/src/main/resources/application.yml | 46 +++++++++++++++++---------- 1 file changed, 30 insertions(+), 16 deletions(-) diff --git a/ai/src/main/resources/application.yml b/ai/src/main/resources/application.yml index aaf465b..396f517 100644 --- a/ai/src/main/resources/application.yml +++ b/ai/src/main/resources/application.yml @@ -39,35 +39,49 @@ spring: max-idle: 8 min-idle: 0 max-wait: -1ms - database: ${REDIS_DATABASE:3} + database: ${REDIS_DATABASE:4} # Server Configuration server: - port: ${SERVER_PORT:8083} + port: ${SERVER_PORT:8084} + servlet: + context-path: ${CONTEXT_PATH:} # JWT Configuration jwt: secret: ${JWT_SECRET:} - access-token-validity: ${JWT_ACCESS_TOKEN_VALIDITY:3600} - refresh-token-validity: ${JWT_REFRESH_TOKEN_VALIDITY:604800} + access-token-validity: ${JWT_ACCESS_TOKEN_VALIDITY:1800} + refresh-token-validity: ${JWT_REFRESH_TOKEN_VALIDITY:86400} # CORS Configuration cors: allowed-origins: ${CORS_ALLOWED_ORIGINS:http://localhost:*} -# OpenAI Configuration -openai: - api-key: ${OPENAI_API_KEY:} - model: ${OPENAI_MODEL:gpt-4} - max-tokens: ${OPENAI_MAX_TOKENS:2000} - temperature: ${OPENAI_TEMPERATURE:0.7} - -# Azure AI Search Configuration +# Azure OpenAI Configuration azure: - aisearch: - endpoint: ${AZURE_AISEARCH_ENDPOINT:} - api-key: ${AZURE_AISEARCH_API_KEY:} - index-name: ${AZURE_AISEARCH_INDEX_NAME:minutes-index} + openai: + api-key: ${AZURE_OPENAI_API_KEY:} + endpoint: ${AZURE_OPENAI_ENDPOINT:} + deployment-name: ${AZURE_OPENAI_DEPLOYMENT:gpt-4o} + embedding-deployment: ${AZURE_OPENAI_EMBEDDING_DEPLOYMENT:text-embedding-3-large} + max-tokens: ${AZURE_OPENAI_MAX_TOKENS:2000} + temperature: ${AZURE_OPENAI_TEMPERATURE:0.3} + + # Azure AI Search Configuration + ai-search: + endpoint: ${AZURE_AI_SEARCH_ENDPOINT:} + api-key: ${AZURE_AI_SEARCH_API_KEY:} + index-name: ${AZURE_AI_SEARCH_INDEX:meeting-transcripts} + + # Azure Event Hubs Configuration + eventhub: + connection-string: ${AZURE_EVENTHUB_CONNECTION_STRING:} + namespace: ${AZURE_EVENTHUB_NAMESPACE:hgzero-eventhub-ns} + checkpoint-storage-connection-string: ${AZURE_CHECKPOINT_STORAGE_CONNECTION_STRING:} + checkpoint-container: ${AZURE_CHECKPOINT_CONTAINER:hgzero-checkpoints} + consumer-group: + transcript: ${AZURE_EVENTHUB_CONSUMER_GROUP_TRANSCRIPT:ai-transcript-group} + meeting: ${AZURE_EVENTHUB_CONSUMER_GROUP_MEETING:ai-meeting-group} # Actuator Configuration management: