-
Notifications
You must be signed in to change notification settings - Fork 3
Feat: AI 면접 완료 후 종합 리포트를 PDF 형태로 생성하고 다운로드할 수 있는 기능 구현 #91
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Test Results73 tests 72 ✅ 1m 59s ⏱️ Results for commit 49c3aa2. ♻️ This comment has been updated with latest results. |
dkswoals
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
작업량이 엄청 많았을텐데 고생 많으셨습니다
리포트 양식도 너무 깔끔하고 좋습니다!
몇가지 궁금한 점과 의견들 코멘트로 남겨두었습니당
| private int ExtractFitnessScore() | ||
| { | ||
| // 종합 피드백에서 점수 추출 시도 | ||
| if (!string.IsNullOrEmpty(finalFeedback)) | ||
| { | ||
| var scoreMatches = System.Text.RegularExpressions.Regex.Matches(finalFeedback, @"(\d+)점|(\d+)/10|점수.*?(\d+)"); | ||
| if (scoreMatches.Count > 0) | ||
| { | ||
| foreach (System.Text.RegularExpressions.Match match in scoreMatches) | ||
| { | ||
| for (int i = 1; i < match.Groups.Count; i++) | ||
| { | ||
| if (int.TryParse(match.Groups[i].Value, out int score) && score <= 10) | ||
| { | ||
| return score; | ||
| } | ||
| } | ||
| } | ||
| } | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
현재 에이전트 프롬프트에서는 최종 피드백에 적합성 점수를 생성하는 구문이 없기에 추출 실패율이 높을것으로 보입니다!
프롬프트에 최종 피드백 시 적합성 점수를 반환하라는 구문을 추가하는건 어떨까요?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
아하 가끔 종합피드백에 점수가 나온적이 있어서 이미 프롬포트에 구문이 추가된 줄 알았네요..! 좋습니다 👍
| } | ||
|
|
||
| // 기본 점수 (질문/답변 수에 따라 결정) | ||
| return Math.Min(8, 5 + questionsAndAnswers.Count); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(단순궁금) 기본 점수를 8점으로 정하신 기준이 있나요?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
해당 부분이 쓰이는 경우는 ExtractFitnessScore 메서드에서 종합 피드백 출처의 점수를 추출하지 못했을 경우에 간단하게 자체 점수를 정하는 로직이라 보수적인 관점에서 최대 8점으로 설정하였습니다
|
리포트 생성 방식 AI 활용 방식으로 변경을 위해 PR close |
#️⃣ 연관된 이슈
📝 작업 내용
스크린샷 (선택)
생성된 면접 리포트 PDF 다운로드 : 면접리포트_20250722_002915.pdf
💬 리뷰 요구사항(선택)
원래 DevOps 파트를 담당하다가 고도화 과정에서 프론트엔드와 백엔드까지 통합해서 진행하게 되어, 웹 개발 부분에서 미숙한 부분이나 실수가 있을 수 있습니다..! 피드백 주시면 적극 반영하겠습니다!
QuestPDF 라이브러리 선택: PDF 생성을 위해 QuestPDF를 선택했는데, 이 라이브러리가 프로덕션 환경에서 적합한지 궁금합니다! 다른 라이브러리를 사용해야 할까요?
PDF 레이아웃 디자인: QuestPDF로 구현한 PDF 레이아웃이 실제 면접 리포트로 사용하기에 적절한지 검토해주신다면 감사드리겠습니다!
마크다운 파싱 로직: PdfReportService.ParseMarkdown 메서드에서 정규식을 사용한 마크다운 파싱이 현재 방식이 적절한지 궁금합니다..!
⏰ 현재 버그
배포 후 확인결과 이상 없습니다.
✏ Git Close