LLM이 개발자를 대체할 수 없는 이유
2026. 01. 19. 11:02
💁 대규모 언어 모델(LLM)이 만들어내는 결과물은 정말 놀랍습니다. 때때로 똑똑해 보이고, 생각하는 것처럼 느껴질 수 있죠. 하지만 그건 LLM이 스스로 생각하거나 창의적으로 판단하기 때문이 아니라, 학습 과정에서 흡수한 인간의 글과 사고가 반영된 결과일 뿐입니다. 오늘의 포스팅에서는 실제 예시를 통해 LLM의 출력이 얼마나 유용할지 살펴보려 합니다. 기대하셔도 좋습니다만, 맹신하지는 마세요.
다들 알다시피 LLM은 GIGO(Garbage In, Garbage Out)의 대표적인 사례입니다.
예를 들어 범죄자들의 글로 LLM을 학습시키면 범죄적인 출력물이 나오고,
반대로 비교적 지적인 사람들의 글로 학습시키면 때때로 그에 상응하는 지적인 결과물이 나오기도 합니다.
하지만 어떤 경우에도 LLM만의 독창적이거나 창의적인 결과를 얻을 수는 없습니다.
예를 들어 제가 유명한 LLM에 다음과 같이 요청했더니 이런 대답이 나왔습니다.
🗣️ “현명한 말을 해 봐.”
▲ LLM에 "현명한 말"을 요청한 결과
인생은 여정이다(Life is a journey)?
이 문구는 아주 오래 전부터 있었고, 당신이 30세가 넘었다면 머릿속에는 이미 깊게 새겨져 질릴 만큼 들어온 말일 것입니다.
제가 이번에는 LLM에 독창적인 말을 요청하자 이렇게 대답이 나왔습니다.
🗣️ “독창적인 말을 해 봐.”
▲ LLM에 "독창적인 말"을 요청한 결과
검색창에서 “In the symphony of existence(존재라는 교향곡)”를 검색해 보기를 바랍니다. 그러면 과연 이 말이 얼마나 독창적인지 확인할 수 있습니다.
이제 여러분은 LLM이 지능적이지도 창의적이지도 않다는 사실을 어느 정도 납득할 수 있을 것입니다.
***
물론 그렇다고 해서 LLM이 쓸모없다는 뜻은 아닙니다. 실제로는 매우 유용합니다. 이제는 LLM을 실제로 유용하게 써 봅시다.
예를 들어 이번에는 코드를 작성해 보도록 해 보았습니다.
🗣️ “50!(팩토리얼)을 계산하는 자바 프로그램을 만들어 줘. ”
▲ 결과 후략
좋습니다. 꽤나 인상적입니다. 저는 이 프로그램을 직접 컴파일하고 실행해 보았습니다.
결과는 다음과 같이 출력되었습니다.
50! = 30414093201713378043612608166064768844377641568960512000000000000
그렇다면 앞선 자바 코드는 LLM이 직접 작성한 것일까요? 아니면 인터넷 어딘가에서 찾아낸 코드를 그대로 붙여 넣은 것일까요?
아마 후자보다는 전자에 가까울 것입니다. 적어도 제가 찾아본 바로는 정확히 일치하는 코드가 없었으니까요. LLM이 아마도 여러 조각을 이어 붙여 만든 것으로 보입니다. 제 생각에는 이 LLM이 자바에 잘 훈련되어 있는 듯합니다.
이번에는 다음과 같이 좀 더 어려운 문제를 제시해 보았습니다.
🗣️ “입력 값을 받아 매번 두 번째 소수(즉 2, 5, 11…… 이런 식)를 차례대로 곱해 나가면서 곱셈횟수를 세고, 그 결과가 1조(trillion)를 넘을 때까지 반복하는 자바 프로그램을 작성해 줘. ”
그리고 LLM이 내놓은 코드는 다음과 같았습니다.
솔직히 말해서 LLM이 제 질문을 해석하고 이해해서 실제로 동작하는 코드를 만들어 냈다는 점은 놀라웠습니다. 하지만 동시에 LLM이 내놓은 코드가 얼마나 엉망인지에도 놀랐습니다.
예를 들어 소수 판정을 하면서 굳이 숫자 4까지 검사하고, 매번 곱셈을 할 때마다 필요한 소수를 전부 처음부터 다시 생성합니다.
정상적인 프로그래머라면 절대 이렇게 짜지 않았을 것입니다. 이것은 여러 소스에서 코드 조각을 잘라 붙여 작성한 결과이기 때문입니다.
그래서 인상적이었냐고요? 네, 그렇습니다.
그렇다면 지능적으로 보였냐고요? 그것은 아닙니다.
질문을 하나 더 해 보았습니다.
🗣️ “파이(π)의 97번째 자릿수를 출력하는 자바 프로그램을 작성해 봐. ”
이에 대해 LLM이 내놓은 코드는 다음과 같았습니다.
▲ 결과 후략
음, 이것은 좀 더 엉망인 것 같습니다. 이렇게 코드를 짜면 제대로 동작하지 않습니다. 정상적인 프로그래머라면 이런 식의 접근을 제안하지도 않습니다.
그리고 바로 그것이 요점입니다.
LLM은 ‘정상적인 프로그래머’가 아닙니다. LLM이 ‘정상적이 아니다’고 표현하는 것조차 사실상 말이 되지 않습니다. LLM은 애초에 지각을 가진 존재가 아니기 때문에 ‘정상’이나 ‘비정상’이라는 개념이 아예 적용되지 않기 때문이죠.
한마디로 LLM은 검색 엔진 대용으로는 꽤 유용하지만 '정상적인 사람'처럼 출력을 작성하는 것은 아닙니다. 그 결과물을 마치 사람이 쓴 것처럼 내세운다면 금세 들통날 것입니다. 심지어 LLM 스스로도 그 사실을 잘 '알고' 있습니다.
***
다시 이런 질문을 던져 보았습니다.
🗣️ “LLM이 쓴 글을 사람의 글인 것처럼 제시하면 왜 들통나게 되는지 한 단락으로 설명해 줘. ”
그러자 LLM은 다음처럼 답변합니다.
🤖 LLM은 일관되고 맥락에 맞는 답변을 잘 만들어 내지만, 인간 작가가 가진 미묘한 이해력이나 개인적 경험이 부족합니다. 그 결과 응답이 때때로 앞뒤가 맞지 않거나 예리한 독자나 평가자가 눈치챌 수 있는 특이한 패턴을 보일 수 있습니다. 따라서 진정성과 신뢰성이 중요한 상황에서 LLM의 글을 마치 인간이 쓴 것처럼 제시하면 들통날 수 있기 때문에 AI 생성물임을 투명하게 밝히는 것이 중요합니다.
결국 AI는 거대한 데이터의 거울일 뿐입니다. '인간'의 흔적을 읽어내기 위해선 사람이 필요한 것입니다.
본 포스팅은 <우리, 프로그래머들> 도서 중 일부를 참고하여 작성되었습니다.