최근 AI 분야에서 일어나고 있는 변화를 보면서 정말 흥미로운 시대에 살고 있다는 생각이 든다. 특히 대규모 언어 모델(LLM)이 등장하면서 소프트웨어 개발 패러다임이 완전히 바뀌고 있다. 오늘은 이런 변화 속에서 우리가 어떻게 새로운 방식으로 일해야 하는지에 대해 이야기해보려고 한다.
LLM: 새로운 형태의 컴퓨터
먼저 LLM을 어떻게 이해해야 할지부터 생각해보자. 앤드류 응이 몇 년 전에 했던 말이 계속 머릿속에 맴돈다: "AI는 새로운 전기다." 이 말이 정말 적절한 것 같다. LLM들이 지금 유틸리티의 성격을 강하게 띠고 있기 때문이다.
OpenAI, Google, Anthropic 같은 LLM 연구소들은 엄청난 자본을 투자해서 모델을 훈련시킨다. 이건 마치 전력망을 구축하는 것과 비슷하다. 그리고 API를 통해 우리 모두에게 이 지능을 서비스로 제공한다. 우리는 토큰 단위로 요금을 내고, 낮은 지연시간, 높은 가동률, 일관된 품질을 요구한다. 완전히 유틸리티 서비스의 특징이다.
전기에서 전력원을 바꿀 때 전환 스위치를 사용하는 것처럼, LLM에서도 OpenRouter 같은 서비스를 통해 다른 모델들 사이를 쉽게 전환할 수 있다. 소프트웨어이기 때문에 물리적 공간을 두고 경쟁하지 않아서 여러 제공업체가 공존할 수 있다.
최근 며칠 동안 주요 LLM들이 다운되었을 때를 생각해보자. 사람들이 일을 못하고 멈춰 서는 모습을 보면서, 이게 정말 '지능의 정전'이라는 생각이 들었다. 전력망의 전압이 불안정할 때와 똑같은 현상이다. 지구 전체가 더 바보가 되는 거다.
LLM의 심리학: 인간 같은 영혼들
LLM을 이해하려면 이들의 '심리학'을 알아야 한다. 나는 LLM을 '사람의 영혼들'이라고 생각한다. 이들은 사람에 대한 확률적 시뮬레이션이고, 그 시뮬레이터가 바로 트랜스포머 아키텍처다.
영화 '레인맨'의 더스틴 호프만을 생각해보자. 자폐 서번트로서 거의 완벽한 기억력을 가진 캐릭터다. 전화번호부를 읽고 모든 이름과 번호를 기억할 수 있다. LLM도 비슷하다. 엄청난 양의 지식과 기억을 가지고 있고, 어떤 개별 인간보다도 훨씬 많은 것을 기억할 수 있다.
하지만 동시에 인지적 결함도 많다. 환각을 일으키고, 자기 인식이 부족하며, 들쭉날쭉한 지능을 보인다. 어떤 문제에서는 초인간적 능력을 보이다가, 인간이라면 절대 하지 않을 실수를 하기도 한다. 9.11이 9.9보다 크다고 주장하거나, 'strawberry'에 'r'이 두 개 있다고 하는 식으로 말이다.
특히 중요한 건 이들이 '전향성 기억상실증'을 앓고 있다는 점이다. 일반적인 동료라면 시간이 지나면서 조직을 이해하고 맥락을 쌓아가며 전문성을 개발한다. 하지만 LLM은 그렇지 않다. 컨텍스트 윈도우는 작업 기억 같은 것이고, 이를 직접 프로그래밍해야 한다.
영화 '메멘토'나 '50번째 첫 키스'를 보면, 주인공들의 가중치가 고정되어 있고 매일 아침 컨텍스트 윈도우가 초기화된다. 이런 상태로 일하거나 관계를 맺는 건 정말 문제가 많다. 우리가 LLM과 일할 때도 마찬가지다.
부분 자율성 앱: 새로운 기회들
그렇다면 이런 특성을 가진 LLM을 어떻게 활용해야 할까? 가장 흥미로운 기회 중 하나는 '부분 자율성 앱'이다.
코딩을 예로 들어보자. ChatGPT에 직접 가서 코드를 복사-붙여넣기하고 버그 리포트를 주고받을 수도 있다. 하지만 왜 운영체제에 직접 접근해야 할까? 전용 앱을 사용하는 게 훨씬 합리적이다.
Cursor가 좋은 예다. 많은 사람들이 사용하고 있는 이 도구는 초기 LLM 앱의 특성들을 잘 보여준다:
1.컨텍스트 관리: LLM이 대부분의 컨텍스트 관리를 담당한다
2.다중 LLM 호출 오케스트레이션: 임베딩 모델, 채팅 모델, 코드 diff 적용 모델 등을 조율한다
3.애플리케이션별 GUI: 텍스트로만 운영체제와 대화하고 싶지 않다. 텍스트는 읽고 해석하기 어렵다
AI와의 협업: 생성과 검증의 순환
LLM 앱에서 중요한 건 우리가 이제 AI와 협업한다는 점이다. 보통 AI가 생성을 담당하고, 인간이 검증을 담당한다. 이 순환을 최대한 빠르게 돌리는 게 핵심이다.
두 가지 방법이 있다:
1.검증 속도 높이기: GUI가 매우 중요하다. GUI는 우리 머릿속의 컴퓨터 비전 GPU를 활용한다. 텍스트 읽기는 힘들고 재미없지만, 시각적으로 보는 건 재미있고 뇌로 바로 전달된다.
2.AI를 통제하기: 많은 사람들이 AI 에이전트에 과도하게 흥분하고 있다. 1000줄짜리 코드 diff를 받는 건 도움이 안 된다. 즉시 나와도 결국 내가 버그가 없는지, 올바른 작업인지, 보안 문제는 없는지 확인해야 한다.
AI 보조 코딩을 할 때의 느낌을 표현하자면, 그냥 바이브 코딩할 때는 좋지만 실제 일을 하려고 하면 과반응하는 에이전트 때문에 힘들다.
내 작업 방식을 보면:
- 너무 큰 diff는 항상 피한다
- 작은 증분 단위로 작업한다
- 모든 게 괜찮은지 확인한다
- 이 순환을 매우 빠르게 돌린다
- 구체적이고 단일한 작업에 집중한다
에이전트를 위한 소프트웨어 구축
마지막으로 정말 흥미로운 부분은 에이전트를 위한 소프트웨어를 구축하는 것이다. 예전에는 GUI를 통한 인간과 API를 통한 컴퓨터만 있었다. 이제 완전히 새로운 카테고리가 생겼다: 에이전트들. 이들은 컴퓨터이지만 인간 같기도 하다. 인터넷상의 '사람 영혼들'이다.
몇 가지 예를 보자:
AI.txt 파일: robots.txt처럼 도메인에 AI.txt 파일을 두어서 LLM에게 이 도메인이 무엇에 관한 것인지 직접 알려줄 수 있다. HTML을 파싱하게 하는 것보다 훨씬 효과적이다.
LLM 친화적 문서: 현재 대부분의 문서는 사람을 위해 작성되어 있다. 목록, 굵은 글씨, 그림 등이 있어서 LLM이 직접 접근하기 어렵다. Vercel이나 Stripe 같은 서비스들이 LLM 전용 문서를 만들기 시작했다.
클릭을 curl로 바꾸기: 문서에서 "클릭"이라는 표현이 나올 때마다 LLM 에이전트가 실행할 수 있는 동등한 curl 명령어로 바꿔야 한다.
도구들: GitHub URL을 GitIngest로 바꾸면 모든 파일을 하나의 거대한 텍스트로 연결해서 LLM에 복사-붙여넣기할 수 있게 만들어준다. DeepWiki는 더 나아가서 GitHub 저장소를 분석해서 전체 문서 페이지를 만들어준다.
결론: 놀라운 시대의 시작
정말 놀라운 시대에 이 업계에 발을 들여놓게 되었다. 엄청난 양의 코드를 다시 써야 하고, 전문가들과 개발자들이 많은 코드를 작성하게 될 것이다.
LLM은 유틸리티 같기도 하고, 팹 같기도 하지만, 특히 운영체제와 가장 비슷하다. 하지만 아직 1960년대 운영체제 수준으로 초기 단계다. 많은 유추가 적용된다.
이 LLM들은 가치 있는 '사람 영혼들'이고, 우리는 이들과 함께 일하는 법을 배워야 한다. 그러기 위해서는 우리의 인프라를 이들에게 맞춰 조정해야 한다.
LLM 앱을 구축할 때는 이들과 효과적으로 일하는 방법을 이해하고, 순환을 매우 빠르게 돌리며, 부분적으로 자율적인 제품을 만들어야 한다. 그리고 많은 코드를 에이전트를 위해 직접 작성해야 한다.
아이언맨 슈트 비유로 돌아가면, 앞으로 10년 동안 우리는 슬라이더를 왼쪽에서 오른쪽으로 움직이는 모습을 보게 될 것이다. 그게 어떤 모습일지 정말 궁금하고, 모든 사람들과 함께 그것을 만들어가는 게 기대된다.
이런 변화의 물결 속에서 우리는 단순히 기술을 사용하는 것을 넘어서, 새로운 형태의 지능과 파트너십을 맺고 있다. 이는 컴퓨팅 역사상 전례 없는 일이며, 우리 모두가 이 새로운 패러다임의 개척자가 되어가고 있다. 앞으로 어떤 놀라운 일들이 펼쳐질지 정말 기대가 된다.