질문-답변 2619건의 데이터를 분석해보았습니다. 이를 분야로 분류하면 다음과 같습니다.
위 분야에서 제가 면접 질문의 적절함을 판단할 수 있는 분야는 단 하나, IT입니다.
첫 기획 당시에는 ChatGPT가 "그럴듯한" 면접 질문을 주기 때문에 많은 분야를 커버할 줄 알았었습니다. 물론, 어느 정도는 커버가 됩니다만, 개발자인 제가 적절한지 판단하기 쉽지 않았습니다. 그리고 적절하지 않은 면접 질문은 사용자의 이탈을 불러오게 됩니다.
예를 들어, 다음과 같이 직접적으로 불만을 표한 데이터가 있었습니다.
이 사실은 위와 같은 사용자들의 피드백과 데이터로 알아낼 수 있었습니다.
서비스 런칭 전에는 미처 생각하지 못한 사실이었습니다. 이는 개발자인 저 자신은 로직을 알고 있지만, 사용자들은 확률적으로 출제된다는 로직을 모르기 때문에 생긴 문제였습니다.
런칭을 하고나서, 저 자신도 서비스를 여러 번 사용해봤습니다.
키워드, 자소서 등 입력 데이터를 적절히 주면 면접 질문도 쓸만하게 나왔습니다. 하지만, 답변 피드백은 도움이 되지 않았습니다.
답변의 장/단점을 ChatGPT가 분석해주는데, 대부분 답변의 구체성에 대해서만 평가할 뿐이었습니다.
제가 사용자라면, 모범답안이라던가 나올 수 있는 추가 꼬리 질문 같은 정보를 얻고 싶어했을 것 같았습니다.
저 자신도 서비스를 여러번 사용해봤을 때, 전 면접 준비용 자료가 있어서 서비스가 도움이 되었습니다. 하지만 없는 사람의 입장에서는 어떨까요?
그리고 면접 준비용 자료는 웹 상에 많이 흩어져있기 때문에 정리하는 것만으로도 벅찹니다. 따라서 자료만 잘 모아서 조회만 할 수 있게 해도 서비스의 트래픽을 늘릴 수 있을거라 생각합니다.
플라스크는 최소한의 기능만 갖춘 웹 프레임워크입니다. 처음에는 개발이 쉬웠지습니다. 하지만 보안, DB 커넥션, 로깅, 테스트 구축 등 서비스가 복잡해질수록 점점 개발이 어려웠습니다. 한땀한땀 직접 구축하거나, 문서화가 부족한 라이브러리등을 이용할 수 밖에 없었습니다.
이는 기존 스프링 사용자였던 제겐 매우 불편한 상황이었습니다. 스프링은 훨씬 많은 기능을 제공하기 때문에, 스프링이었다면 더 편하게 개발할 수 있었을텐데라는 생각이 많이 들었습니다.
물론, 프레임워크에 너무 의존하는 것도 좋은 것은 아닙니다.
하지만 스프링은 플라스크보다 지원하는 기능이 많아, 서비스에 직접적인 영향을 줄 수 있는 비즈니스 로직에 더 집중할 수 있게 됩니다.
그리고 소마 프로젝트는 개발 기간이 3개월 남짓 밖에 안되기 때문에 개발속도가 중요했었습니다. 그래서 파이썬을 선택했었습니다.
하지만 이제는 시간에 쫓기지 않고 서비스를 유지보수 및 개선해야 합니다. 그래서 친숙하면서, 기능을 더 풍부하게 제공하고, 타입 시스템이 강제되어 더 유지보수에 유리한 스프링으로 전환하려 합니다.
위와 같이, "ㅇㅇ"나 "sdf" 같이 의미 없는 데이터를 사용자가 입력하면, ChatGPT가 제공하는 면접 질문 역시 의미가 없습니다.
가장 큰 문제 중 하나입니다. 면접 연습 서비스는 면접 질문의 신뢰성이 가장 중요합니다. ChatGPT 는 말을 잘 지어내는 창의성은 뛰어날지라도, 상식 지식을 판단할 수 없는 능력이 없습니다.
신뢰성이 필요한데도 신뢰성이 떨어지는 서비스는 사용자의 이탈을 불러옵니다.
ChatGPT는 평가 역시 못합니다. 말을 지어낼 뿐이죠.
다음은 그 사례들입니다.
ChatGPT를 사용하는 서비스에 많은 사용자가 몰린다면 어떻게 될까요?
ChatGPT 3.5 기준으로 TPM은 18만, RPM은 25만이었습니다.
아무리 오토스케일링이 되어있더라도, 이러한 ChatGPT call이 서비스의 병목 지점이 되는 것입니다.
생각할 수 있는 방안은 3가지입니다.
1. LLM을 번갈아 쓰는 것 (라마 -> openai-> 클로드->라마 ...)
2. ChatGPT는 그대로 쓰되 모델만 번갈아 쓴다. (GPT 3.5 -> GPT 4.0 -> Text davinci->...)
3. B2B용 LLM API를 사용합니다.
방안 1은 Langchain 등 LLM 프레임워크를 쓰면 가능합니다. 단, 모든 모델의 TPM, RPM이 부족해질 경우엔 동일한 문제가 발생합니다.
방안 2는 불가능합니다. 다음은 참고 링크입니다.
https://community.openai.com/t/api-rate-limitations-api-speed/248374/20
방안 3의 경우, Azure api를 사용하면 됩니다. 제 기억상으론 300K TPM이었던 같습니다. 하지만 이 방법은 사업자 등록증이 있는 기업만 사용가능한 방법입니다.