Andrej Karpathy — AI Agent가 제대로 동작하려면 10년은 걸린다
Andrej Karpathy – It will take a decade to work through the issues with agents
TL;DR Highlight
Karpathy가 Dwarkesh Podcast에서 현재 AI agent의 인지적 한계, RL의 근본적 문제, 모델 붕괴, 자율주행이 오래 걸린 이유 등을 짚으며 AGI까지 최소 10년은 걸린다고 본 이유를 설명한 인터뷰. 업계의 과도한 낙관론에 대한 현실적 반론으로 중요하다.
Who Should Read
AI agent를 제품에 도입하려는 PM이나 개발자, LLM 기반 자동화의 한계를 파악하고 싶은 엔지니어링 리더. 현재 agent 기술의 실제 수준과 앞으로의 로드맵을 가늠하고 싶은 사람.
Core Mechanics
- Karpathy는 '올해가 agent의 해'라는 업계 분위기에 반발하며, agent가 제대로 작동하려면 10년은 걸린다고 봤다. 지금의 agent(Claude, Codex 등)는 매일 쓸 만큼 인상적이지만, 실제 직원처럼 일을 맡기기엔 지능, 멀티모달, 컴퓨터 사용 능력, 지속적 학습 등 부족한 게 너무 많다는 것.
- 핵심 프레임워크는 'march of nines(9의 행진)'. 데모가 90% 성공하면 그건 첫 번째 9일 뿐이고, 99%, 99.9%, 99.99%로 갈 때마다 동일한 양의 노력이 필요하다. Tesla에서 5년간 자율주행 작업하면서 2~3개의 9를 넘겼는데 아직 더 남아 있다고.
- RL(강화학습)이 끔찍하다고 직설적으로 말했다. 다만 다른 방법들이 더 나쁘기 때문에 RL을 쓰는 거라는 입장. 현재 AI 학습 방법론의 근본적 한계를 인정한 셈.
- 모델 붕괴(model collapse) 문제 때문에 LLM이 인간처럼 학습하는 건 불가능하다고 봤다. LLM은 자기가 생성한 데이터로 재학습하면 품질이 급격히 떨어지는데, 인간의 학습 과정과 근본적으로 다르다는 점을 지적.
- AGI가 오더라도 갑자기 세상이 바뀌는 게 아니라, 지난 250년간의 연 2% GDP 성장 추세에 자연스럽게 녹아들 거라는 점진적 관점을 제시했다. 특이점보다는 연속적 진보에 가깝다는 시각.
- Vibe coding에 대해서는 회의적. 본인이 nanochat 프로젝트를 할 때 LLM이 인터넷에서 학습한 '전형적인 코드 패턴'에 너무 의존해서, 비표준적인 코드를 쓰려 하면 계속 프로덕션급 코드로 부풀리고 deprecated API를 쓰는 등 문제가 많았다고. 오히려 자동완성(autocomplete)이 본인의 sweet spot이라고 했다.
- AI 코더가 '예외(exception)를 극도로 두려워하는' 이유는, 정확도 벤치마크에서 점수를 받으려면 어떻게든 답을 내야 하기 때문. 예외는 불확실성 신호인데 그게 점수에 반영이 안 되니 모델이 틀린 답이라도 내놓는 쪽으로 학습된다는 분석.
- 교육의 미래에 큰 관심을 보이며, AI가 인류를 대체하는 것보다 다음 세대가 더 잘 배울 수 있게 하는 게 우선이라는 입장을 취했다. 더 나은 인간을 만드는 게 현재로선 유일한 전진 방법이라는 것.
Evidence
- 'march of nines' 개념에 대해, 벤치마크에서 성능이 기하급수적으로 올라가는 것처럼 보여도 다음 단계의 난이도도 기하급수적이라 실제 체감 개선은 선형적이라는 분석이 공감을 얻었다. AI 진보가 빠르게 느껴지는 건 고정된 벤치마크 위에서만 그렇다는 것.
- agent에 대해 현실적 회의론도 강했다. 한 댓글은 '보안, 재현성, 할루시네이션, 편향 등 LLM의 약점을 agent가 더 악화시킨다'며, 실제 비즈니스에서는 매 단계마다 사람이 확인하는 워크플로우로 만들어질 거라고 예측했다. '소프트웨어 개발은 결과 검증이 쉽고 실수 비용이 거의 없는 특수 케이스'라는 지적이 날카로웠다.
- 90년대부터 신경망을 연구했다는 한 댓글러는 '5~8년 걸릴 거라고 예측한 것들이 3년 안에 왔다'며 Karpathy의 10년 예측도 틀릴 수 있다고 반론했다. 특히 자율주행이 진짜 AGI 없이는 안 될 거라고 생각했는데 Waymo가 SF를 점령한 사례를 들며, 비선형 시스템에 대한 인간의 예측은 항상 틀린다고.
- Karpathy의 vibe coding 회의론에 대해, 채팅/페어프로그래밍 방식이나 스펙 기반 코드 생성을 시도해봤냐는 반론이 있었다. 한 댓글러는 저해상도 이미지 관련 CV 작업에서 맥락을 여러 번 알려주니 ChatGPT가 자동으로 맞춰줬다며, 충분한 컨텍스트를 주면 LLM이 훈련 데이터 분포에서 벗어난 출력도 할 수 있다고 경험을 공유했다.
- LLM을 '인공지능'이라 부르는 것 자체가 과대·과소평가를 동시에 만든다는 의견도 있었다. '인류 지식 전체에 대한 예측적 추론'이라는 발명 자체는 바퀴급 혁명이지만, 그걸 바로 AGI로 연결짓는 건 바퀴를 보고 태양광 전기차를 논하는 것과 같다는 비유가 인상적이었다.
How to Apply
- AI agent를 제품에 도입할 때 'march of nines' 프레임을 적용해라. 데모에서 90% 작동하면 프로덕션까지 동일한 노력이 3~4번 더 필요하다고 계획을 잡아야 한다. POC 성공을 프로덕션 준비 완료로 착각하지 말 것.
- LLM 기반 agent를 배포할 때는 완전 자율보다 human-in-the-loop 워크플로우로 설계해라. 매 단계 검증 포인트를 두고, 특히 검증이 어려운 도메인(법률, 의료, 금융)에서는 agent 자율성을 최소화하는 게 현실적이다.
- 코딩에 AI를 쓸 때, 비표준적인 코드베이스라면 vibe coding보다 자동완성(Copilot 등) + 채팅에서 충분한 컨텍스트 제공 방식이 더 효과적이다. 프로젝트의 컨벤션, 제약사항, 의도를 명시적으로 알려주면 LLM이 훈련 데이터의 기본 패턴에서 벗어나 맞춤 코드를 생성할 수 있다.
- AI 코더가 예외 처리를 회피하는 경향이 있으므로, 코드 리뷰 시 에러 핸들링과 엣지 케이스 처리를 집중 점검해라. CI에 에러 핸들링 커버리지를 체크하는 린트 규칙을 추가하는 것도 방법이다.
Terminology
March of Nines99%에서 99.9%, 99.99%로 올리는 과정. 각 단계마다 비슷한 노력이 드는데, 시스템 신뢰도를 한 자릿수 높이려면 이전과 같은 만큼의 작업이 또 필요하다는 개념.
Model CollapseAI가 자기가 생성한 데이터로 다시 학습하면 품질이 급격히 떨어지는 현상. 복사기로 복사본을 계속 복사하면 화질이 망가지는 것과 비슷하다.
Continual Learning한 번 학습하고 끝나는 게 아니라, 새로운 정보를 계속 받아들여 업데이트하는 능력. 현재 LLM은 대화에서 알려준 걸 다음 세션에서 기억 못 한다.
Vibe CodingKarpathy가 만든 용어로, AI에게 자연어로 대충 설명하고 코드 전체를 생성하게 하는 방식. 사람이 코드를 직접 읽거나 검토하지 않는 것이 특징.
RL (Reinforcement Learning)보상과 벌칙을 통해 AI가 시행착오로 학습하는 방법. 게임 AI 학습에 많이 쓰이지만, 현실 문제에 적용하기엔 샘플 효율이 매우 낮다.