Files
brain_dogfood/docs/Bug/ai_summary_language_sync_20260418.md

1.8 KiB

버그 조치 보고서: AI 요약 언어 불일치 (2026-04-18)

1. 버그 내용

  • 현상: 사용자가 UI 언어를 한국어로 설정했음에도 불구하고, AI 분석(요약 및 태그 추출) 결과가 영문으로 출력됨.
  • 원인:
    • 백엔드(/api/memos/<id>/analyze)에서 언어 설정을 서버 전역 설정(app.config['lang'])에만 의존함.
    • 사용자가 UI에서 언어를 변경해도 이 변경사항이 서버 구성에 실시간으로 반영되지 않아 기본값인 'en'으로 동작함.

2. 조치 사항

프론트엔드 수정 (static/js/api.js)

  • API.triggerAI(id) 함수에서 I18nManager.currentLang을 확인하여 요청 쿼리 파라미터에 lang을 추가함.
  • 예: POST /api/memos/123/analyze?lang=ko

백엔드 라우트 수정 (app/routes/ai.py)

  • analyze_memo_route에서 request.args.get('lang')을 통해 클라이언트의 현재 언어 설정을 수신하도록 변경.
  • 수신된 lang 정보를 기반으로 AI 분석 엔진에 언어 지침을 전달함.
  • 에러 메시지 또한 _t(key, lang=lang)을 사용하여 적절한 언어로 반환되도록 개선.

AI 엔진 프롬프트 최적화 (app/ai.py)

  • 한국어(ko) 요청 시 **"반드시 모든 응답은 한국어로 작성해야 합니다"**라는 명시적 지침을 프롬프트에 추가하여 모델의 출력 언어를 강제함.

3. 결과 및 확인

  • UI 언어 설정에 따라 AI의 요약 결과가 정확히 해당 언어로 생성됨을 확인.
  • 만약 언어 정보가 전달되지 않을 경우 한국어('ko')를 기본값으로 사용하도록 폴백 로직 적용.

4. 향후 주의사항

  • 새로운 AI 기능(전체 요약, 추천 시스템 등) 추가 시에도 클라이언트의 lang 파라미터를 반드시 연동할 것.