Skip to content

채팅방 제목 생성 AI 서버 연동 #153

@ckdals4600

Description

@ckdals4600

이슈 배경

  • 채팅방 생성 시 첫 메시지를 기반으로 제목을 추천해주는 AI 서버를 실제 연동함.
  • 기존에 테스트용으로 사용하던 Mock Client 대신, 실제 Feign Client를 통해 외부 API를 호출하도록 변경

이슈 내용

1. API 연동 명세 (TitleGenerateClient)

  • Target URL: POST /webhook/title-generate (Base URL은 프로퍼티로 관리)
  • Request (TitleGenerateReq):
    • firstMessage: 사용자 첫 입력 메시지 (String).
        {
          "firstMessage": "파이썬 관련 링크 찾아줘"
        }
      
  • Response (TitleGenerateRes):
    • JSON Array 형태로 반환됨에 유의 (List<TitleGenerateRes>).
    • title: 생성된 요약 제목.
        [
          {
            "title": "파이썬 참고 링크 요청"
          }
        ]
      

2. 개발 범위

  • Feign Client 구현:
    • org.springframework.cloud.openfeign.FeignClient를 사용하여 AI 서버와의 통신 인터페이스 정의.
  • DTO 정의:
    • 명세서(이미지)에 맞춰 Request/Response DTO 클래스 생성.
  • 서비스 로직 수정:
    • 기존 Mock 구현체를 제거하고, 실제 Feign Client를 호출하여 제목을 받아오도록 ChatFacade 또는 ChatService 로직 수정.
  • 환경 변수 설정 (application.yml):
    • AI 서버의 Base URL(http://localhost:5678 등)을 설정 파일로 분리.

3. 예외 처리

  • Fallback: AI 서버 통신 실패(Timeout, 5xx) 시, 기본 제목(예: "새로운 채팅방")으로 대체하거나 예외를 로깅하고 트랜잭션을 롤백하지 않는 방향으로 처리(Soft Fail).

참고 자료

No response

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions