소프트웨어의 '그냥 안 되는' 일상화
원제 The Normalization of Inexplicable Failures
152 포인트댓글 46
Key Point
AI 기반 기능이 배포되면서 '원인을 알 수 없는 장애'가 정상적인 것으로 받아들여지는 추세를 다루는데, 이는 개발 생산성과 품질 사이의 근본적인 긴장을 보여줍니다.
핵심 요약
- 저자는 문제의 원인을 추적할 수 없는 오류가 정상화되는 현상을 우려하고 있다.
- Jev 같은 AI 모델들은 빠르고 저렴하지만, 사용자는 반환값이 정말 작동하는지 검증할 평가 프레임워크(evals)를 구축해야 한다.
- 대부분의 개발자는 기술적 평가를 미루고 'AI 기반' 표시만 하고 배포한 뒤, 장애 발생 시 '음, AI는 실수한다'고 넘어간다.
- 신뢰도 점수(confidence score)를 제공하지만, 이를 제대로 활용하려면 점수의 보정(calibration) 방식과 비용 모델을 모두 이해해야 하는데 실무에서는 무시된다.
- 문서에서 제시하는 임계값(0.5, 0.9)도 도메인과 모델 성능에 따라 달라져야 하지만, 개발자들은 무작정 받아들이거나 신뢰도로 실패를 정당화한다.
- 전통적인 소프트웨어 버그는 명확한 책임 소재가 있지만, LLM 기반 기능은 불명확한 오류로 인해 책임 추적이 불가능해진다.
- 저자의 핵심 우려는 더 많은 것이 실패할 것이 아니라, 조사의 끝이 '그냥 안 된다'는 결론으로 정착될 것이라는 점이다.
- LLM 가속 개발은 자동화된 QA 워크플로우 등으로 문제를 해결할 여지가 있지만, 실제로는 사용자와 개발자 모두 검증 없이 배포한다.
- 결국 소프트웨어 공학이 시스템을 설계하면서도 아무도 장애의 근본 원인을 확인하려는 의지가 없는 상태로 변해가고 있다는 게 비극이라고 본다.