정상적인 소프트웨어에서는 맞지만 인공지능에서는 틀린 믿음들
(boydkane.com)- 많은 사람들이 정상 소프트웨어와 인공지능의 차이를 잘못 이해함
- 일반 대중은 AI의 위험을 전통적 소프트웨어의 ‘버그’ 개념으로 오해하는 경향이 있으며, 이는 문제 해결 방식에 대한 잘못된 확신을 낳음
- AI의 오류는 코드가 아닌 학습 데이터에서 비롯되며, 그 방대한 규모 때문에 어떤 데이터가 문제를 유발했는지 인간은 파악할 수 없음
- 기존 소프트웨어처럼 버그를 찾아 “수정”하거나 “재현”할 수 없고, AI의 행동은 비결정적이며 입력의 작은 변화에도 결과가 달라짐
- 명세 기반의 개발이 불가능에 가깝고, AI의 능력이나 위험은 사전에 예측 불가, 때로는 의도치 않은 숨은 기능이 뒤늦게 발견됨
- 따라서 “문제가 생기면 수정하면 된다”는 기존 IT 사고방식은 AI 안전성 논의에서 치명적 착각으로 작용함
일반 소프트웨어에 대한 지식의 한계
- 많은 대중과 관리자들은 컴퓨터 소프트웨어의 위험에 대해 "문제 있는 코드(버그)는 수정할 수 있다"는 확신을 가짐
- 오랜 기간 소프트웨어 업계는 코드 버그가 현실에 해를 끼칠 수 있다는 사실을 성공적으로 각인시켰음
- 일반 소프트웨어에서는 버그가 존재하지만, 복잡하더라도 수정이 가능한 영역임
- 그러나 이러한 접근 방식과 사고방식은 AI에는 적용되지 않음, 그로 인해 혼란과 오해가 발생함
전문가와 비전문가 간의 인식 차이
- 정상 소프트웨어와 AI 소프트웨어는 동작 원리와 문제 발생 방식이 본질적으로 다름
- 전문가 집단은 이 간극을 너무 당연하게 여겨 설명하지 않고, 초보자들은 스스로 그 차이를 파악하지 못함
- 양측 모두 상대방과의 소통에 어려움을 느끼게 됨
AI에 잘못 적용되는 일반 소프트웨어의 믿음들
-
1. 소프트웨어 취약점은 코드의 실수에서 발생함
- 일반 소프트웨어의 버그는 주로 코드 작성 실수에서 비롯됨
- 하지만 AI의 경우, 취약점이나 예측 불가능성은 거의 대부분 훈련 데이터에서 비롯됨
- 예를 들어, FineWeb 데이터셋처럼 수십억 단어의 데이터를 모두 사람이 파악하는 것은 불가능함
- AI가 학습하는 데이터의 방대함으로 인해 무엇을 학습했는지 완전히 이해하기 어렵고, 위험 요소 파악이 거의 불가함
-
2. 코드를 분석해서 버그를 찾을 수 있음
- 전통적 소프트웨어는 코드를 분석해 논리적으로 버그 원인을 추적 가능함
- AI의 문제는 훈련 데이터의 복합적 영향으로 발생해, 문제 원인을 데이터에서 찾기 현실적으로 불가능함
- 연구자들은 보통 AI 재훈련이나 데이터 추가로 문제를 약화시키려 시도하지만, 논리적 추적으로 직접 원인을 밝히기는 어려움
- AI의 버그 원인은 심지어 개발자 자신도 정확히 모름
-
3. 버그를 고치면 다시는 나타나지 않음
- 소프트웨어는 발견된 버그를 수정하면, 기존 버그가 정확히 같은 형태로 재현되지 않음
- 하지만 AI는 "버그"를 고친 후에도 테스트되지 않은 입력에서 똑같은 문제 행동이 다시 나타날 수 있음
- AI의 비정상 동작을 완전히 제거했다고 확신할 수 없음
-
4. 동일 입력에 항상 동일한 결과가 나옴
- 일반 소프트웨어는 동일한 입력에 항상 동일한 출력을 반환함
- AI 역시 기술적으로 같지만, 극히 작은 입력 변화(문장 부호 등)에도 결과가 완전히 달라질 수 있음
- 실제로 다양한 대형 AI 기업들은 동일 프롬프트에도 약간씩 다른 출력을 하도록 설계해, 덜 기계적으로 보이게 함
-
5. 명확한 요구사항을 주면 해당 요구를 충족할 수 있음
- 일반 소프트웨어는 명확한 명세와 요구를 설정하면 이를 만족하는 방법이 있음
- 하지만 AI는 설계자가 원하는 전반적 행동을 명확히 통제하거나 보장할 수 없음
- 제한된 범위(예: 영어로 말하기, 코드 작성 등) 내에서는 어느 정도 명시적 통제가 가능하지만, 모든 행동(예: 범죄 조장 불허 등)은 보장할 방법이 없음
- AI 서비스 출시 후 개발자조차 알지 못한 숨겨진 능력이나 위험이 우연히 발견되기도 함
- AI 안전성의 완전한 보장 및 예측은 불가능함
앞으로 나아갈 방향
- 잘못 일반화된 소프트웨어 지식이 AI에 대한 신뢰와 위험 평가를 왜곡함
- AI의 동작 원리와 한계, 그리고 일반 소프트웨어와의 차이를 동료들과 널리 공유하는 것이 중요함
- 잘 알려져 있지 않은 AI 특유의 구조적 차이를 설명하고, 단순한 "버그 패치" 접근이 통하지 않음을 전달해야 함
전문가와 초보자 간의 이해 격차
- 만약 이 글을 통해 AI와 일반 소프트웨어의 근본적 차이를 처음 알게 됐다면, 지인과 함깨 내용을 공유하길 바람
- 이미 이 차이를 알고 있었다면, 일반인이나 비전문가와 한 번 이야기를 나눠보는 것이 좋음
- 실제로 이 둘이 본질적으로 다르다는 사실을 아는 사람이 많지 않음
Hacker News 의견
-
실제로 LLM을 제대로 활용하는 데 어떤 어려움이 있는지 알고 싶다면 Apple 사례를 보면 좋음. 1년 전에 Apple Intelligence라는 대대적인 발표를 했고, LLM 기반의 에이전트 워크플로우를 강조했지만 그 뒤로 이모지 제작이나 알림 요약, 문서 교정 등 몇 가지 사소한 도구만 추가됨. 알림 요약 기능조차 한동안 ‘통제 불능’이라서 철회해야 했던 상황도 있었음 관련기사. 올해 iPhone 이벤트에서도 AI 마케팅을 확 줄였음. Apple 임원진이 LLM을 Apple다운 완성도와 통제력 수준까지 구현하는 게 얼마나 어려운지 과소평가했을 것 같음
- 혹시 Apple이 AI로 Liquid Glass를 디자인한 게 아닐까 생각함. 처음 봤을 땐 대단해보였지만 실제론 쓸 수 없었던 경험임
- 알림과 이메일 요약 기능은 정말 쓸모가 없었음. 직접 중요한 부분을 훑어보는 게 오히려 더 간단한 작업임을 느꼈음
- 이제 Apple은 MCP를 활용해서 Apple Events 통합에 집중하는 전략을 추진함 관련 링크
- 이런 LLM의 어려움을 과소평가한 건 Apple뿐만이 아니라 업계 전체에 해당하는 이야기임. Amodei 같은 리더들이 릴리즈마다 인간 수준의 인지를 약속한 영향으로 임원진의 AI 기대치가 지나치게 부풀려져 있음. 하지만 현실적으로 코딩 보조나 챗봇 외에는 스마트폰이나 OS처럼 완성도가 높은 생태계에 AI가 진짜 변화를 준 사례를 아직 찾기 힘듦
- 아이러니하게도, 내가 Siri에게 진짜로 바라는 건 단순히 ChatGPT 수준의 자연스러운 대화 기능임. GPT와는 거의 90% 가까운 대화를 할 수 있는데, Siri는 1) 그냥 반응하지 않거나, 2) 오해하거나, 3) 이해하고도 대화를 거부하는 행동을 보임. 이런 경험은 정말 실망스러움
-
다음 문장이 유독 공감됐음:
while it’s possible to demonstrate the safety of an AI for a specific test suite or a known threat, it’s impossible for AI creators to definitively say their AI will never act maliciously or dangerously for any prompt it could be given
MCP 같은 방식을 적용하면, 이러한 위험 가능성이 기하급수적으로 커지는 현상임 MCP 링크
-
제일 큰 전제 조건이 빠진 것 같음. 일반 소프트웨어도 항상 그런 건 아니지만, AI에서는 특히 더 중요한데 “똑같은 입력이 똑같은 출력을 내야 한다”는 기준임. 자동화 프로세스에서 신뢰성을 위해 이게 꼭 필요함
-
흔히 AI 버그는 데이터 문제 때문이라고 하는데, 완전히 맞는 이야기는 아님. LLM 구조 자체나 학습 데이터가 이상 없어 보여도, LLM은 근본적으로 비결정론적이기 때문에, 알고리즘 설계상 같은 질문이라도 항상 똑같은 답을 주지 않음. 시나리오별로 매번 주사위 던지듯 결과가 달라짐
- 이게 항상 문제는 아님. 프로그래밍이나 수학 문제 모두 정답이 여러 개일 수 있음. 문제는 LLM은 정답을 보장하는 과정이 없고, ‘올바른 것처럼’ 보이는 답을 휴리스틱 기반으로 만들어냄. 그러다 보니 논리적 사고가 필요한 부분에서 LLM이 소프트웨어 버그나 오류를 많이 야기함
-
“결국 시간이 지나면 버그가 모두 고쳐져서 AI 신뢰성이 올라갈 것”이라는 주장이 솔직히 더 맞는 말 같음. 이 기술 자체가 완전히 새롭고, HN에서 흔히 나오는 “비결정론적=쓰레기”라는 생각도 지난 2년간 LLM 신뢰도가 10배는 올라간 걸 감안하면 지나친 것임
- 분명히 성능은 좋아졌는데, 나는 앞으로 성장 곡선이 로그형태일 것 같음. 앞으로 몇 년간 빠르게 좋아지고, 점점 둔화되어 언젠가는 현재 패턴 매칭 ML의 한계에 다다를 것으로 예상함. 그리고 그 한계점도 소프트웨어 회사에서 프로그래머를 완전히 대체할 만큼 높지 못할 것이라 생각함
- AI의 ‘의도 불일치’ 현상과 권력 추구 문제는 단순히 PR이나 유닛 테스트로 해결할 수 있는 버그가 아님
- 아이러니하게도, Hacker News의 기술적으로 뛰어난 사람들이 “결국 버그 다 고칠 거야”라는 낙관론을 계속 반복함. 이런 태도는 커뮤니티 곳곳에서 볼 수 있음
- 사람들도 예전보다 신뢰도가 높아졌나 생각해 보면, 별 차이 없다는 생각이 듦. 물론 LLM이 사람이 아니긴 한데, AGI는 사람처럼 행동할 수도 있음
-
“AI 시스템의 모든 잘못된 행동은 트레이닝 데이터에서 비롯됨”이라는 생각에 대해서는 좀 더 신중해야 함. 데이터와 학습 과정이 완벽하더라도, AI 모델이 계속 실수를 할 수 있는 구조임
-
“AI 버그”가 어떤 상황에 나타나는지 좀 더 명확히 설명해 주면 좋겠음. LLM에 실시간, 무감독 의사결정을 맡기지 말라고 주장하는 점에는 동의함. 예를 들어, AI가 도시 신호등을 통제하는 역할에는 아직 이르다고 생각함. 하지만 기술자 입장에서는 AI 버그 이슈가 주로 ‘코딩 에이전트’에서 논의되고, 이런 영역은 거의 다 감독이 들어가기 때문에 이런 우려가 직접적으로 적용되진 않음
-
“AI는 놀랍게 잘 될 때도 있지만 실망스러울 때도 있다는 것, 테스트 없인 절대 알 수 없다는 것”을 이해시키는 게 중요함. 다만 모든 경우를 다 테스트하는 건 불가능함. 그걸 알면 고객은 테스트의 범위나 통제권을 요구하게 될 것이고, 제공자는 검증 가능한 환경(예: 코드 작성)이나, 정밀도에 의미 없는 분야(텍스트, 밈 생성)에 집중하게 될 것임. AI 지지자라면 이 부분을 깊이 아는 게 정말 가치 있는 장점임. 반면, 사람들은 AI의 버그나 명세, 기존 프로그래밍 모델 붕괴 자체에는 관심이 없지만, AI가 선거에 영향을 미치거나 대량 해고 같은 문제를 일으키면 엄청난 적대감과 규제 요구가 생김. 이런 일이 터지면 업계는 그간 발달시켜온 면책, 규제 회피 수법(책임부인, 조항 제외, 중재 조항 등)으로 버티게 되고, 결국 소수의 우발적 대형 사고 후폭풍으로 업계 성장과 세대별 투자 자체가 위험해질 수 있다고 생각함
-
AI 관련해서 진짜 위험한 점은 ‘집중된 권력’임. 사람처럼 감정을 가진 AI가 우리를 Matrix의 배터리처럼 대할 거란 걱정보다 현실적임
- 실상은 이미 CEO나 임원진이 우리를 Matrix의 배터리처럼 대하는 분위기가 형성된 상태임
- 내 생각에 더 무서운 건 정보 오염임. AI가 만든 쓸모 없는 데이터로 인해 원본 정보가 너무 희석돼서, 더 이상 쓸 만한 소스를 찾기조차 어려워짐
- 악한 일이 벌어지려면 ‘권력 집중’이 필수 조건임. 즉, 무조건 “Linda는 은행원이다”가 “Linda는 은행원이자 페미니스트 활동가다”보다 확률적으로 더 높다는 이야기와 같음. P(a) > P(a&b), 이게 본질임
- AI가 “싫어함” 같은 감정이 없어도, 자기 목표를 달성하는 데 인간이 방해라 생각하면 그 자체로 위험할 수 있음. 초지능은 감정 없이도 충분히 위험해질 수 있음
- 이미 권력이 한쪽에 거대하게 쏠려 있는 현실이 가장 큰 문제이고, AI는 그저 마지막 장식 같은 존재임. 진짜 문제는 AI가 아님
-
내가 요즘 “아무도 AI가 어떻게 돌아가는지 정확히 모른다”고 계속 알려주려 하고 있음. 만드는 것과 원리를 아는 건 다르다, 이 점을 강조하고 싶음. 인간도 마찬가지임
- 잘 모르는 사람과도 늘 일하면서 협력하는 게 인간임
- 사실 신경망, 트랜스포머, 어텐션, 임베딩, 토크나이저 구조까지 정확히 아는 전문가들은 분명 있음. 다만 뉴런 간 연결 가중치만 명확히 설명하지 못함
- 아무도 AI가 어떻게 동작하는지 모른다니 이해가 안 감. 우리가 쓰는 하드웨어, 소프트웨어, 그 실행 상태는 완벽하게 통제하고 관찰할 수 있지 않음? 언제든 멈추고 상태 살펴보고, 한 단계씩 실행 흐름을 따라갈 수 있음. 소스 코드, 컴파일러 등 모든 걸 알고 있음. 그러면 구체적으로 뭘 모른다는 건지 궁금함
- 인간 뇌의 모든 층위와 전체 범위를 아무도 모름. 그런데도 모든 조직의 리더가 부하직원의 ‘뇌’를 신뢰하고 일하는 것임