Conversation
* feat: reset conversation history after session expiry (#52) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * refactor: 대화 컨텍스트 로딩 방식 개선 (개수/시간 임계값 기반 필터링) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: AI 응답 트레이싱 추가 (#54) - GenerationResult 도입: model, latencyMs, token usage, 성공/실패 정보 포함 - AiGenerationLog 엔티티 및 비동기 이벤트 기반 DB 저장 구현 - promptTokens, completionTokens, totalTokens 컬럼 추가 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix: NoResourceFoundException ERROR 로그 제거 favicon.ico 등 정적 리소스 미존재 요청을 조용히 404로 처리 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* test: RelevancyEvaluator 기반 문장 품질 평가 테스트 추가 (#16) - sentence-eval-dataset.json: 기호 수 1~6개 구간 20개 평가 케이스 - SentenceQualityEvalTest: 각 케이스별 생성 문장을 RelevancyEvaluator로 관련성 검증 - spring-ai-test 의존성 추가 - ./gradlew aiTest 로 실행 (API 키 필요) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * test: 평가 리포트 자동 생성 추가 - @afterall에서 build/reports/eval/ 에 JSON 리포트 파일 생성 - 전체 통과율, 평균 점수, 기호 수별 통계, 케이스별 상세 포함 - 실패 케이스 콘솔 요약 출력 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * test: RelevancyEvaluator → AAC 커스텀 평가 프롬프트로 교체 - 의미적 변환 허용 (물+먹고싶어 → 마시고싶어 등) 기준 반영 - 평가 결과에 reason 필드 추가, 리포트에도 포함 - spring-ai-test 의존성 제거 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * test: 대화 히스토리 포함 평가 케이스 5개 추가 - 데이터셋에 history 필드 추가 (id 21~25) - 이전 대화 맥락 반영 여부 검증 - 리플렉션으로 ConversationMessage 생성 (User 의존성 우회) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix: 이전 대화 욕구 중복 반영 방지 프롬프트 개선 (서브모듈 포인터 업데이트) * test: 평가 프롬프트 조사/어미 허용 기준 명확화 - '랑', '에서', '도' 등 한국어 문법 요소는 추가로 허용 - 기호에 없는 명사/동사/개념 추가만 불허로 구체화 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: 대화 컨텍스트 상황 요약 컴포넌트 구현 (#59) - ConversationContextSummarizer: 이전 대화를 상황 설명문으로 요약 - 현재 기호와 관련 있으면 "현재 ~한 상황이다." 형태로 압축 - 무관하면 컨텍스트 배제 (Optional.empty) - WordSentenceGenerator: 원문 히스토리 메시지 대신 요약 상황을 시스템 프롬프트에 주입 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * feat: 컨텍스트 요약 트레이싱 추가 (#59) - GenerationResult에 contextSummary 필드 추가 - AiGenerationLog에 context_summary 컬럼 추가 - 요약된 상황 설명이 DB에 저장되어 추적 가능 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * test: 무관 컨텍스트 배제 검증 케이스 추가 (id=26) - 물/라면/사과 3턴 히스토리 후 공책 요청 케이스 - 이전 음식 컨텍스트가 문장에 스며들지 않는지 assertContextNotLeaked 검증 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat: 기호 수 기반 프롬프트 라우팅 전략 적용 (#62) - PromptRouter: 기호 1개 → sentence-single 프롬프트, 2개 이상 → 표준 프롬프트 - sentence-single: 행동 기호 없어도 의도 유추 허용 - WordSentenceGenerator: @value 직접 주입 대신 PromptRouter 사용 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * feat: sentence-single 프롬프트 개선 (서브모듈 포인터 업데이트) --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
작업 내용