글EN中한

강과 운하

에이전트는 험준한 세계를 탐색하고, 워크플로는 그 탐색이 남긴 것입니다. 체스, 스타크래프트, 바닷속 공장, 그리고 제가 엔진을 만드는 이유에 관하여.

읽는 시간41 분
게시일
독서The Infinity Machine by Sebastian Mallaby (2026); Seeing Like a State by James C. Scott (1998); Jurassic Park by Michael Crichton (1990)
주제에이전트, 게임 AI, 프랙털, 추상화, 결정론, 지속 실행, 신뢰, 공장, 탈희소성, 가독성, 금융, 보험, 체스, 바둑, 스타크래프트
요약

에이전트는 열려 있고 안개 낀 문제를 탐색하는 데 가장 뛰어나고, 결정론적 워크플로는 이미 아는 문제를 반복하는 데 가장 뛰어납니다. 은행과 보험사처럼 한결같음을 파는 기업은 후자에 기대고 있습니다. 컴퓨팅의 모든 계층은 무언가를 하나씩 더 예측 가능하게 만들어 사람들이 그것에 대해 더는 생각하지 않아도 되게 했습니다. 모든 것을 위한 에이전트 오케스트레이터는 그 생각을 다시 돌려보내는 첫 번째 계층입니다. 효과가 있는 설계는 메타 공장입니다. 에이전트가 탐색하고, 효과가 있는 것을 워크플로로 적어 두고, 결정론적 엔진이 그것을 실행하며, 세상이 바뀌면 에이전트가 그것을 고치거나 폐기합니다. 워크플로 안에도 운하의 갑문처럼 범위가 정해진 에이전트 단계를 둘 수 있습니다. 그러면 판단은 필요한 곳에 남고, 나머지는 감사할 수 있고 반복할 수 있으며 저렴해집니다. 모든 것이 절차가 되어야 하는 것은 아닙니다. 가장자리의 에이전트는 남습니다. 안개는 결코 완전히 걷히지 않기 때문입니다.

시작하기 전에 한 가지 말씀드립니다. 이 글은 이 사이트의 다른 글들과 성격이 다릅니다. 기술적인 글이라기보다 철학적인 에세이이고, 읽는 데 45분쯤 걸리는 긴 글입니다. 한 장의 사진에서 시작해 워크플로 엔진의 이름으로 끝나며, 그 사이에 프랙털, 게임, 우주론, 조직에 관한 한 세기의 사유, 4chan에서 나온 이야기, 그리고 다음 주 월요일부터 쓸 수 있는 현장 안내서를 지나갑니다. 또한 제가 여기에 쓴 어떤 글보다도 제가 생각하는 방식을 그린 지도에 가깝습니다. 실용적인 부분만 원하신다면 현장 안내서로 건너뛰셔도 됩니다.

제가 이 글을 쓰고 있는 카페의 벽에 사진 한 장이 걸려 있습니다. 사진작가 Armin Grässl(아르민 그레슬)의 Whispering Current입니다. 작가가 직접 붙인 설명은 “거대한 바위들 사이로 물이 제 길을 새긴다”는 문장으로 시작하는데, 사진이 보여 주는 것이 바로 그것입니다. 바위 바닥 위를 흐르는 산속의 강은 부서지는 곳에서는 하얗고 고이는 곳에서는 검으며, 그 뒤로 소나무들이 안개 속으로 녹아듭니다. 그 강의 어느 2미터도 같은 방식으로 움직이지 않습니다. 물은 우리가 알아볼 수 있는 어떤 의미에서도 자신이 어디로 가는지 알지 못합니다. 모든 틈을 시도하고, 모든 움푹한 곳을 채우며, 아무도 계획하지 않은 지형 사이로 바위 하나씩 길을 찾아냅니다.

저는 이 사진을 자꾸 바라봅니다. 책상 앞에서는 답할 수 없던 질문에 이 사진이 답해 주기 때문입니다. 몇 주 전 저는 Rust로 지속형(durable) 워크플로 엔진을 만들기 시작했습니다. Temporal과 Restate 계열에 속하는 것으로, 가칭은 tsumugi였습니다. 합리적인 프로젝트입니다. 라이브러리로 시작해 클러스터로 자라는 자기 완결적인 엔진은 쓸모가 있고, 저는 그 이유를 긴 설계 문서에 적어 두었습니다. 그런데 그 문서는 끝내 답하지 못한 한 질문의 주위를 계속 맴돌았습니다. 에이전트가 일을 할 수 있는 2026년에, 누가 왜 워크플로 엔진을 필요로 하겠습니까?

Claude Code 같은 하네스 위에 만들어진 에이전트는 바로 그 강이 하는 일에 놀라울 만큼 능숙합니다. 낯선 코드베이스나 고장 난 배포, 모호한 요청을 목표와 함께 건네면, 에이전트는 더듬어 보고, 실패하고, 조정하고, 결국 길을 찾아냅니다. 그것이 일의 새로운 모습이라면, 고정된 단계와 결정론에 대한 고집을 지닌 워크플로 엔진은 저물어 가는 세계를 위한 도구처럼 보입니다.

저는 그렇게 생각하지 않지만, 답은 프로젝트보다 훨씬 큰 것으로 드러났습니다. 그리고 그 답은 프로젝트의 새 이름으로 끝나는데, 그 이름을 저는 이 에세이 안에서 찾았습니다.

모든 것은 프랙털입니다

강을 더 가까이 들여다보면 또 다른 것이 보입니다. 큰 바위 하나를 둘러싼 물의 무늬가 그보다 작은 바위들 주위에서, 그리고 그 사이의 자갈 주위에서 되풀이됩니다. 뒤편의 나무들은 강이 갈라지듯 가지를 치고, 그 가지들은 다시 가지를 칩니다. Benoit Mandelbrot(브누아 망델브로)는 1982년 『자연의 프랙털 기하학』(The Fractal Geometry of Nature)을 이런 시선을 유명하게 만든 문장으로 열었습니다. “구름은 구가 아니고, 산은 원뿔이 아니며, 해안선은 원이 아니고, 나무껍질은 매끄럽지 않으며, 번개도 직선으로 나아가지 않는다.” 자연은 거칠고, 그 거칠음은 서로 다른 규모에서 서로 닮아 보입니다. 그 자기 유사성이 바로 프랙털입니다.

이것은 제가 가장 오래 품어 온 생각입니다. 이 사이트의 어떤 프로젝트보다 오래되었고, 뒤에 이어지는 모든 것의 밑바닥에 흐르고 있습니다. 그 짧은 판본은 모든 것은 프랙털입니다라는 노트로 따로 적어 두었습니다. 저는 우리가 시간에도 공간에도 한계가 없는 세계, 모든 방향으로 끝없이 뻗어 있는 세계에 살고 있을 가능성이 매우 높다고 생각합니다. 그런 세계에서 프랙털은 가장 자연스러운 형태입니다. 같은 패턴이 모든 규모에서 되풀이되고, 가장 큰 사례도 가장 작은 사례도 없습니다. 우주론자들은 이 생각의 강한 판본에 프랙털 우주론이라는 이름을 붙였습니다. 물질이 모든 규모에서 프랙털로 분포한다는 가설입니다. 이는 소수의 입장입니다. 대부분의 우주론자는 은하 탐사 자료가 수억 광년 너머에서는 우주가 균질해진다는 것을 보여 준다고 읽습니다. 그래서 저는 무한하고 프랙털적인 세계를 물리학 세미나에서 방어할 수 있는 주장이 아니라, 생각할 때 기대어 쓰는 직관으로 품고 있습니다. 아이디어와 조직과 기계가 어떻게 움직이는지에 관한 직관으로서는 한 번도 저를 실망시킨 적이 없습니다.

이 생각은 제 세대의 많은 사람에게 그랬듯 『쥬라기 공원』을 통해 제게 왔습니다. 제가 가장 좋아하는 책 가운데 하나인 Michael Crichton(마이클 크라이튼)의 1990년 소설은 카오스 이론을 뼈대로 삼고 있는데, 대부분의 독자는 카오스 이론을 접했다면 1987년에 나온 James Gleick(제임스 글릭)의 『카오스』(Chaos: Making a New Science)을 통해서였을 것입니다. 크라이튼의 수학자 Ian Malcolm(이언 맬컴)은 부분적으로 글릭에게서 영감을 받은 인물입니다. 소설은 ‘부’가 아니라 ‘반복(iteration)’으로 나뉘어 있고, 각 반복은 같은 프랙털인 하이웨이 드래곤 곡선의 그림으로 시작하는데, 그 그림은 앞의 것보다 조금씩 더 접혀 있습니다. 1993년 영화에서 맬컴은 모두가 기억하는 대사를 얻습니다. “생명은, 어, 길을 찾아내지.” 다시 그 강입니다.

이 모든 것에서 제가 얻은 것은 아이디어에 관한 하나의 아이디어입니다. 모든 프랙털 가운데 가장 유명한 망델브로 집합은 아주 작은 규칙 하나를 거듭 적용하는 데서 나옵니다. 수 하나를 취해 제곱하고, 상수를 더하고, 이를 반복합니다. 단순한 것을 반복하면 한없이 풍부한 것이 생겨납니다. 저는 좋은 아이디어도 같은 방식으로 작동한다고 생각합니다. 과학에서도, 공학에서도, 비즈니스에서도, 제가 아는 모든 기예에서도 그렇습니다. 가장 좋은 아이디어는 도약인 경우가 드뭅니다. 그것은 앞선 것 위에 얹힌 작은 반복이며, 새로운 행동이 창발할 만큼의 새로움만을 더한 단순한 개선입니다. 그리고 그것은 다른 모든 사람이 그 위에 쌓아 올리는 계층이 됩니다. Stuart Kauffman(스튜어트 카우프만)은 그런 다음 걸음들의 공간을 인접 가능성(adjacent possible)이라고 불렀습니다. 어느 순간이든 지금 존재하는 것에서 한 걸음만 떨어진 걸음은 특정한 몇 개뿐이라는 뜻이며, Steven Johnson(스티븐 존슨)은 좋은 아이디어가 어디서 오는지를 다룬 자신의 책을 이 표현으로 열었습니다. Michael Tomasello(마이클 토마셀로)는 이 메커니즘의 나머지 절반을 래칫(ratchet)으로 묘사했습니다. 각 세대는 앞 세대가 만든 것을 지키며 조금을 더하고, 그렇게 얻은 것은 뒤로 미끄러지지 않습니다.

그 래칫이 바로 진보가 지금과 같은 느낌을 주는 이유입니다. 어떤 계층이 일단 존재하면 우리는 더 이상 그것을 보지 않습니다. 수돗물이나 함수 호출이나 검색 엔진에 감탄하는 사람은 없고, 그것들이 없던 세계로 돌아갈 수 있는 사람도 없습니다. 이제 AI도 같은 래칫 위에 있습니다. 누가 AI를 어떻게 생각하든, 누군가는 다음 걸음을 내딛고 그다음 걸음도 내딛을 것이며, 그 계층은 평범한 것이 될 것입니다.

제 생각은 대개 이런 식으로 움직입니다. 혼합적이고 수렴적이어서, 아주 다른 곳에서 아이디어를 끌어오다 보면 그것들이 서로 다른 규모에 놓인 같은 아이디어였다는 것이 드러납니다. 이 에세이가 그 예입니다. 프랙털은 계속 돌아올 것입니다. 게임에서, 기업에서, 오케스트레이터에서, 바닷속 공장에서, 그리고 엔진의 이름에서 돌아올 것입니다.

두 종류의 게임

저는 Sebastian Mallaby(서배스천 맬러비)의 『무한 기계』(The Infinity Machine)를 읽고 있습니다. Demis Hassabis(데미스 허사비스)와 DeepMind에 관한 책으로, 이곳에 서평을 썼습니다. 13장에서 바둑과 체스의 승리 이후 DeepMind는 스타크래프트 II로 눈을 돌리고, 맬러비는 그것이 왜 다른 종류의 문제였는지 이렇게 설명합니다.

스타크래프트는 보드게임이라기보다 인간이 삶을 경험하는 방식에 가깝다. 선택과 하위 선택이 끊임없이 이어지는 흐름이며, 어떤 것은 장기적인 계획을, 어떤 것은 더 즉각적인 대응을 필요로 하고, 그 모든 것이 불완전한 정보라는 안개 때문에 더욱 당혹스러워진다.

체스는 존재하는 가장 순수한 닫힌 게임입니다. 판 전체가 보이고, 규칙은 결코 바뀌지 않으며, 수는 번갈아 두어지고, 끝은 정의되어 있습니다. 체크메이트이거나 무승부입니다. 일어날 수 있는 모든 일은 원리상 미리 알려져 있습니다. 스타크래프트는 그 반대입니다. 여러분은 자기 유닛이 보는 것만 볼 수 있고, 나머지는 말 그대로 전장의 안개(fog of war)라고 불립니다. 무엇도 여러분의 차례를 기다려 주지 않으며, 무엇이 승리인지는 상대가 지금 이 순간 무엇을 하고 있는지에 달려 있습니다. DeepMind는 결국 AlphaStar를 만들었고, 맬러비의 설명에 따르면 AlphaStar는 2019년 10월까지 순위에 오른 인간 플레이어를 상대로 99.8퍼센트의 게임에서 이겼습니다. 하지만 그러려면 다른 종류의 기계가 필요했습니다. 알려진 트리를 탐색하는 기계가 아니라, 불확실성 속에서 행동하는 법을 배운 기계였습니다.

저는 스타크래프트를 많이 했습니다. 두 게임의 차이는 제게 학문적인 이야기가 아닙니다. 체스에서는 옳을 수 있습니다. 스타크래프트에서는 상대보다 조금 덜 틀릴 수 있을 뿐이고, 그것도 조금 더 빨리 그래야 합니다. 스타크래프트는 체스와 달리 프랙털이기도 합니다. 맬러비의 “선택과 하위 선택”이라는 표현은 정확합니다. 안개 속에서 너무 적은 시간으로 결정해야 하는 같은 문제가, 게임 전체의 경제에서부터 단 1초 동안 단일 유닛이 움직이는 일에 이르기까지 모든 시간 규모에서 되풀이됩니다.

세 번째 게임

같은 시기, 대양 건너편에서는 다른 연구소가 다른 내기를 하고 있었습니다. 2017년 Google의 한 팀이 “Attention Is All You Need”라는 제목의 논문에서 트랜스포머를 소개했습니다. 맬러비는 Ilya Sutskever(일리야 수츠케버)가 그 논문을 읽고 의자에서 벌떡 일어났다고 묘사합니다. OpenAI는 트랜스포머를 언어에 겨누었습니다. 텍스트를 이어 쓰도록 훈련된 생성형 사전 학습 트랜스포머, 곧 GPT입니다. DeepMind가 스타크래프트에 깊이 빠져 있던 2019년 2월에 GPT-2가 나왔고, 2022년 말에는 그 대화형 후손인 ChatGPT가 전 세계적인 돌풍을 일으켰습니다.

DeepMind에도 트랜스포머가 있었습니다. AlphaStar가 바로 그 위에 만들어졌습니다. DeepMind에 없었던 것은 언어야말로 해 볼 만한 게임이라는 확신이었습니다. 맬러비는 그 이유를 직설적으로 말합니다. “언어 모델링에 관해서는 허사비스의 감각이 빗나갔고, 그 이유에는 세계에 뿌리내리지 않은 기호에 대한 그의 회의, 게임에 대한 그의 사랑, 그리고 인간의 경험이 인터넷의 모든 텍스트보다 더 다채롭고 어쩌면 더 웅대하다는 그의 전제가 있었다.” 허사비스 자신은 이에 대해 너그럽습니다. “이봐요, 매번 노스트라다무스일 수는 없잖아요.”

저는 그것을 기술적인 실수라기보다 철학적인 실수로 읽습니다. 언어는 체스도 스타크래프트도 아닌 세 번째 종류의 지형입니다. 인간이 나머지 둘을 묘사하고, 압축하고, 조율하기 위해 기호로 지어 올린 세계입니다. 계약, 법, 절차, 코드, 문서, 리눅스 머신의 셸이 그렇습니다. 허사비스는 지능이 게임과 물리 세계에서 쟁취될 것이라는 데 걸었지만, 최초의 범용 에이전트는 텍스트를 통해 도착했습니다.

모두가 이것으로 무언가가 판가름 났다고 받아들이는 것은 아닙니다. Yann LeCun(얀 르쿤)은 수년 동안 언어 모델만으로는 인간 수준의 지능에 도달할 수 없다고 주장해 왔습니다. 인간과 동물은 현실에 관해 읽어서가 아니라 현실 속에서 행동하면서 현실을 배우기 때문입니다. 그는 2025년 11월 Meta를 떠나 AMI를 세웠고, AMI는 월드 모델을 만들기 위해 2026년에 10억 달러를 조금 넘는 자금을 모았습니다. AMI의 사명 선언문은 진정한 지능은 “언어에서 시작하지 않는다. 세계에서 시작한다”고 말합니다. 그의 관점에서 오늘날의 에이전트는 프로그래밍 언어와 인터프리터와 터미널 세션이라는 좁은 세계에 살고 있으며, 진짜 안개는 다른 곳에 있습니다.

그의 입장 뒤에는 오래된 관찰이 있습니다. 1988년 로봇공학자 Hans Moravec(한스 모라벡)은 『마음의 아이들』(Mind Children)에서, 컴퓨터가 지능 검사나 체커 게임에서 어른처럼 수행하게 만드는 것은 비교적 쉽지만, 한 살배기의 지각과 이동 능력을 주는 것은 매우 어렵다고 지적했습니다. 우리가 어렵다고 여기는 것, 곧 기호와 논리는 기계에게 쉬운 것으로 드러났습니다. 우리가 힘들이지 않고 하는 것, 이를테면 미끄러지지 않고 강바닥을 건너는 일은 어려운 부분으로 드러났습니다. 이 관찰은 모라벡의 역설로 알려져 있습니다.

저는 허사비스를 비판하는 사람들도, 르쿤도 각자 무언가에 대해서는 옳다고 생각하며, 그 구분은 이 에세이의 한가운데를 관통합니다. 제가 이 글에서 다루는 에이전트는 기호 세계 안의 안개를 탐색합니다. 낯선 코드베이스, 모호한 문서, 문서화되지 않은 API가 그렇습니다. 그 세계에도 규칙이 있지만, 규칙이 너무 많고 너무 느슨하게 집행되어서 안에서 보면 스타크래프트처럼 움직입니다. 사진 속의 강, 그리고 언젠가 그 강을 건너야 할 로봇들에게는 르쿤이 만들고 있는 것이 필요합니다. 하지만 한결같음을 파는 기업들, 곧 은행과 보험사와 행정 기관은 이미 거의 전적으로 기호 세계 안에 살고 있습니다. 그들의 제품은 계약이고 그들의 공장은 절차입니다. 그곳이 바로 언어 에이전트가 가장 강한 지형이며, 바로 그 때문에 에이전트가 무엇을 남겨야 하는가라는 질문이 그곳에서 그토록 중요합니다.

위험과 불확실성

체스와 스타크래프트의 차이에는 경제학에서 훨씬 오래된 이름이 있습니다. 1921년 Frank Knight(프랭크 나이트)는 『위험, 불확실성, 그리고 이윤』(Risk, Uncertainty, and Profit)을 출간하며 지금도 쓸모 있는 선을 하나 그었습니다. 위험(risk)은 측정할 수 있는 불확실성입니다. 하나의 사례에서 무슨 일이 일어날지는 모르지만, 비슷한 많은 사례에 걸친 분포는 압니다. 나이트의 엄밀한 의미에서의 불확실성(나이트적 불확실성)은 측정할 수 없는 종류입니다. 셀 수 있는 유의미한 유사 사례의 집합이 없기 때문입니다. 위험은 원리상 보험으로 대비할 수 있습니다. 불확실성은 그럴 수 없습니다. 그리고 나이트는 경쟁 경제에서 이윤은 위험이 아니라 불확실성에서 나온다고 주장했습니다. 측정 가능한 위험은 가격이 매겨지고 경쟁 속에서 사라지기 때문입니다.

두 게임을 염두에 두고 이것을 읽어 보십시오. 보험회사는 말 그대로 위험을 절차로 바꾸는 기계입니다. 수도관 파열, 자동차 사고, 자전거 도난처럼 고객 한 사람 한 사람에게는 예측할 수 없는 사건을 받아서 전체로는 예측 가능하게 만들고, 그다음 각각을 매번 똑같은 절차로 처리합니다. 기업가, 연구자, 로봇 엔지니어는 나이트의 선 반대편에 삽니다. 그들의 이윤은, 생긴다면, 아무도 확률을 잴 수 없는 곳에서 잘 행동하는 데서 나옵니다.

이로써 두 종류의 게임은 경제적인 의미를 얻습니다. 닫힌 게임은 위험을 측정할 수 있는 게임이므로 올바른 대응은 절차입니다. 열린 게임은 불확실성을 측정할 수 없는 게임이므로 올바른 대응은 판단, 탐색, 적응입니다. 둘 다 가치가 있습니다. 다만 같은 종류의 가치는 아닙니다.

두 종류의 기업

그 두 게임이 눈에 들어오면, 기업들은 놀라울 만큼 깔끔하게 갈라집니다.

은행, 보험사, 세무서, 토지 등기소, 연기금, 그리고 암호화폐 브로커 같은 새로운 참가자들은 추상적인 무언가를 팝니다. 보험 증권은 손으로 만질 수 없습니다. 고객이 사는 것은 특정한 조건이 충족되면 특정한 일이 특정한 방식으로, 매번, 모든 사람에게, 수십 년 동안 일어나리라는 약속입니다. 그런 기업의 가치는 한결같음에 있습니다. 그날의 기분에 따라 다르게 처리되는 보험금 청구는 기능이 아니라 제품의 실패입니다.

독일의 사회학자 Niklas Luhmann(니클라스 루만)은 이것에 정확한 이름을 붙였습니다. 『신뢰』(Vertrauen, 1968, 영어로는 Trust and Power의 일부로 출간)에서 그는 신뢰를 복잡성을 줄이는 방법으로 설명합니다. 모든 것을 검증할 수는 없으므로 무엇에 기댈지를 정하는 것입니다. 그는 아는 사람에 대한 인격적 신뢰와, 그 안의 누구도 알지 못한 채 기대는 화폐와 은행 같은 제도에 대한 체계 신뢰를 구분합니다. 창구 직원을 믿어서 은행을 믿는 사람은 없습니다. 창구 직원이 누구든 체계가 똑같이 행동하리라고 믿기 때문에 은행을 믿습니다. Max Weber(막스 베버)는 반세기 앞서 관료제에 대해 같은 지적을 했습니다. 관료제의 힘, 그리고 그 정당성의 원천은 계산 가능성, 곧 규칙을 사람을 가리지 않고 균일하게 적용하는 데 있습니다. 관료제란 그것이 무엇을 할지 예측할 수 있다는 약속입니다.

암호화폐 브로커는 이것의 가장 새롭고 가장 극단적인 판본입니다. 그 고객들은 스마트 계약이라는 형태로 코드 자체를 믿으라는 요구를 받고, 가장 순수한 경우에는 절차가 너무나 결정론적이어서 누구나 재실행해 볼 수 있는 공개 원장 위에서 돌아갑니다. 이 업계를 어떻게 생각하든, 그것은 원리를 인상적으로 보여 줍니다. 인격적 신뢰가 전혀 없을 때는 결정론이 모든 것을 짊어져야 합니다.

다른 기업들은 물리 세계와 흥정합니다. 로봇공학, 에너지, 우주, 농업, 의학, 그리고 모든 연구소가 그렇습니다. 그들 발밑의 지형은 변합니다. 어제 잘 작동한 로봇 팔이 오늘은 살짝 휜 부품을 만납니다. 시추 장비는 아무도 예측하지 못한 암반을 만납니다. 그들의 가치는 그 자리에서 적응하는 데 있고, 휘어지지 못하는 절차는 부채가 됩니다.

대부분의 실제 회사는 둘 다를 담고 있으며, 그 경계는 회사와 회사 사이가 아니라 부서들 사이를 지나갑니다. 보험사의 보상 부서는 체스를 둡니다. 상품 개발 부서는 스타크래프트를 합니다. 그리고 이 패턴은 각각의 안에서 되풀이됩니다. 은행은 절차들로 이루어진 절차이고, 각 부서는 회사 전체가 하는 약속의 작은 판본이며, 그 끝에는 매번 같은 방식으로 채워야 하는 서식 한 장이 있습니다. 두 종류의 문제는 종류 자체가 다르고, 서로 다른 종류의 기계를 요구합니다.

두 종류의 기계

이 구분 또한 보기보다 오래되었습니다. 1960년 『경영 의사결정의 새로운 과학』(The New Science of Management Decision)에서 Herbert Simon(허버트 사이먼)은 조직이 확립된 절차로 처리하는 일상적이고 반복적인 정형적 의사결정(programmed decisions)과, 문제 해결이 필요한 새롭고 구조화되지 않은 비정형적 의사결정(non-programmed decisions)을 구분했습니다. 그는 이 둘을 두 개의 상자가 아니라 하나의 연속체의 양 끝으로 다루었고, 정형적인 쪽 끝은 컴퓨터가 넘겨받으리라고 예상했습니다. 비정형적인 쪽 끝에 대해서는 당시의 컴퓨터가 내놓을 것이 거의 없었습니다.

64년 뒤인 2024년 12월, Anthropic은 “Building effective agents”(효과적인 에이전트 만들기)라는 짧은 안내서를 발표했는데, 이 글은 언어 모델에 대해 거의 같은 선을 긋습니다. “워크플로는 LLM과 도구가 미리 정의된 코드 경로를 통해 오케스트레이션되는 시스템이다. 반면 에이전트는 LLM이 자신의 프로세스와 도구 사용을 동적으로 지휘하는 시스템이다.” 그 조언은 차분합니다. “워크플로는 잘 정의된 작업에 예측 가능성과 일관성을 제공하는 반면, 에이전트는 대규모로 유연성과 모델 주도의 의사결정이 필요할 때 더 나은 선택지다.” 그리고 비용을 분명하게 밝힙니다. “에이전트의 자율적인 특성은 더 높은 비용과, 오류가 누적될 가능성을 의미한다.”

그러니 한쪽에는 결정론적 기계가 있습니다. 워크플로 엔진, 프로세스 엔진, 스케줄러, 그리고 넓은 의미에서는 절차를 글로 적어 둔 적이 있는 모든 관료제입니다. 같은 입력이 주어지면 그것들은 같은 일을 하고, 무언가 잘못되면 일어난 일을 한 단계씩 재실행해 볼 수 있습니다. 다른 쪽에는 에이전트가 있습니다. 2026년에 에이전트란 도구를 쥐고 루프 안에서 도는 언어 모델을 뜻하지만, 이 말은 언제나 사람을 가리키기도 했습니다. 목표를 주면 그들은 길을 찾아내고, 그 길은 매번 다릅니다. 이 구분은 오래되었습니다. 새로운 소식은 처음으로 기계가 사이먼이 말한 비정형적인 쪽 끝에서 능숙해졌다는 것입니다.

두 종류의 문제를 두 종류의 기계와 맞대어 보면 네 칸이 나오고, 그중 두 칸은 실수입니다.

결정론적 기계 (절차, 워크플로)에이전트형 기계 (실행 시점에 탐색)
닫힌 문제 (측정 가능한 위험, 알려진 규칙, 정의된 끝)보험사의 보상 처리 절차: 한결같음을 통한 신뢰값비싼 즉흥 연주: 대부분은 맞지만, 왜 그렇게 했는지 아무도 말할 수 없음
열린 문제 (불확실성, 안개, 변하는 지형)예상하지 못한 첫 바위에서 부서지는 깨지기 쉬운 자동화탐험가: 시행착오로 길을 찾아냄

왼쪽 아래 칸은 엔터프라이즈 자동화의 역사입니다. 지저분한 현실 위에 덧씌운 경직된 프로세스, 그리고 그 뒤를 따르는 끝없는 예외 처리입니다. 오른쪽 위 칸은 지금 이 순간의 위험입니다. 에이전트는 이제 충분히 좋아져서, 닫힌 게임까지 포함해 모든 것을 맡기고 싶은 유혹이 생깁니다. 그리고 체스를 두는 에이전트는 대개 무난한 체스를 둘 것입니다. 하지만 “대개”와 “무난한”은 고객이 보험사에서 사는 것이 아닙니다.

산술은 가차 없습니다. 어떤 에이전트가 20단계 프로세스의 각 단계를 95퍼센트의 확률로 올바르게 수행한다고 해 봅시다. 이는 매우 좋은 수치일 것입니다. 스무 단계가 모두 옳을 확률은 0.95의 20제곱, 약 36퍼센트입니다. 단계당 99퍼센트라면 약 82퍼센트입니다. 결정론적 워크플로에는 결정론적인 단계에 관한 한 이런 문제가 없습니다. 그렇기 때문에 유용한 질문은 결코 프로세스 전체를 두고 “에이전트냐 워크플로냐”를 묻는 것이 아니라, 어떤 단계에 판단이 필요하고 어떤 단계에는 필요하지 않은가를 묻는 것입니다.

그리고 설명의 문제가 있습니다. 에이전트의 대화 기록(transcript)은 에이전트가 무엇을 생각하고 있다고 말했는지를 보여 주며, 이는 유용합니다. 하지만 그 추론은 아무도 읽을 수 없는 가중치에서 나옵니다. 에이전트가 무엇을 말했는지는 살펴볼 수 있습니다. 왜 그랬는지는 살펴볼 수 없고, 내일도 같은 말을 할지 확신할 수도 없습니다. 고객도, 감사인도, 규제 당국도 같은 질문에 같은 답을 기대하는 닫힌 게임에서는 그것만으로는 충분하지 않습니다.

모든 것은 언제나 오케스트레이터였습니다

저는 직업 생활의 대부분을 이런저런 종류의 오케스트레이션 계층에서 보냈습니다. 돌아보면 그 각각은 무언가를 하나 더 결정론적으로 만들어, 그 위의 사람들이 더는 그것을 걱정하지 않아도 되게 하는 방법이었습니다. Alfred North Whitehead(앨프리드 노스 화이트헤드)는 1911년 『수학 입문』(An Introduction to Mathematics)에서 그 일반 원리를 한 문장으로 표현했습니다. “문명은 우리가 생각하지 않고도 수행할 수 있는 중요한 작업의 수를 늘려 감으로써 진보한다.” 모든 오케스트레이터는 화이트헤드의 문장을 위한 기계입니다.

계층작업 단위결정론적으로 만든 것불확실성이 옮겨 간 곳
모놀리스함수 호출하나의 프로세스 안의 제어 흐름인터페이스, 타입, ABI로 묶인 코드 안으로
마이크로서비스서비스소유권과 배포의 경계서비스 사이의 네트워크로
Kubernetes, Nomad컨테이너, 잡배치, 재시작, 원하는 상태조정 루프(reconciliation loop)와 설정으로
WebAssembly 함수 플랫폼함수아주 작은 단위의 격리와 이식성함수들을 조합하는 방식으로
워크플로 엔진단계프로세스의 순서, 지속성, 이력두 번 이상 실행될 수 있는 단계 본문으로
microVM 위의 에이전트 런타임작업샌드박스, 그 밖에는 거의 없음모델 안으로

저는 한때 Nomad를 무척 좋아했습니다. 추상화를 아주 분명하게 만들었기 때문입니다. 잡을 기술하면 스케줄러가 그대로 만들어 줍니다. Kubernetes는 같은 일을 더 많은 격식과 함께 했습니다. WebAssembly 플랫폼들은 이 생각을 더 밀고 나갔습니다. 저는 wasmCloud를 가까이서 지켜보았는데, wasmCloud는 애플리케이션이란 이식 가능한 형식으로 컴파일되어 자리가 있는 곳 어디에든 배치되는 작은 함수들일 뿐이라고 제안했습니다. 이 계층들은 하나같이 복잡성을 제거한 것이 아니라 옮겼습니다. 마이크로서비스는 시스템을 더 단순하게 만들지 않았습니다. 어려운 부분을 하나의 프로그램 안의 인터페이스에서 여러 프로그램 사이의 네트워크로 옮겼을 뿐이고, 그래서 우리는 그 뒤에 서비스 메시와 트레이싱, 그리고 로깅 이상의 관측 가능성을 필요로 하게 되었습니다.

이 표를 프랙털로 읽어 보십시오. 모든 행은 한 단계 위의 규모에서 같은 움직임을 합니다. 아래 수준에서 불확실했던 것을 받아 예측 가능하게 만들고, 그 위의 사람들이 그것에 대해 생각하기를 멈추게 합니다. 그리고 모든 행은 자리를 잡고 나면 보이지 않게 되었습니다. 이제 함수 호출에 대해 생각하는 사람은 없고, 자기 컨테이너가 어느 머신에서 도는지 생각하는 사람도 드물며, 몇 년 뒤에는 자기 소프트웨어 밑에 있는 지속형 워크플로에 대해 생각하는 사람도 거의 없을 것입니다. 그것이 토마셀로의 래칫이자 동시에 화이트헤드의 문장입니다.

마지막 행은 종류가 다릅니다. 최근 저는 대형 컨설팅 회사 한 곳이 내부에서 에이전트를 어떻게 운영하는지 설명하는 발표를 끝까지 들었습니다. 안전한 microVM을 위한 Kubernetes 비슷한 오케스트레이터가 있고, 각 microVM은 코딩 에이전트 하네스를 실행하며, 맡길 직무나 작업, 또는 채워야 할 자리를 설명하는 Markdown 컨텍스트를 공급받습니다. 좋은 발표였고, 제가 직접 만들어 온 것들과도 가까웠습니다. Kage는 에이전트 작업을 위한 로컬 우선 오케스트레이터였습니다. Shiioo는 두 번째 형태에서 에이전트들로 이루어진 작은 가상 회사를 운영하며, 그들이 혼자서 무엇을 해도 되는지는 규칙 파일이 정합니다. 그리고 조직도를 가진 열여섯 에이전트 뒤에 있던 실험은 그것이 얼마나 빨리 복잡해지는지를 제게 가르쳐 주었습니다. 또 에이전트는 루트 권한을 원합니다를 쓰며 알게 되었듯이, 그런 런타임을 그저 가두어 두는 데에만도 얼마나 많은 일이 드는지 압니다.

앞선 모든 계층은 불확실한 무언가를 받아 예측 가능하게 만들어서, 위의 계층이 생각 없이 그것에 기댈 수 있게 했습니다. 모든 것을 위한 에이전트 오케스트레이터는 그 반대를 합니다. 기업들이 수십 년에 걸쳐 절차로 바꿔 놓은 일을 받아서, 즉흥으로 움직이는 무언가에게 되돌려줍니다. 열린 문제에 대해서는 그것이 정확히 옳습니다. 닫힌 문제에 대해서는 그 기업들이 실제로 파는 단 하나를 내주는 셈이고, 화이트헤드의 문장을 거꾸로 돌리는 셈입니다. 생각이 필요한 작업의 수를 늘리는 것입니다.

그렇다면 모든 것을 위한 에이전트 오케스트레이터를 만들어야 할까요? 저는 회의적입니다. 본질적으로 결정론적인 거대한 문제 공간은 언제나 존재할 것입니다. 확립된 프로세스가 만들어 내는 신뢰는 그 자체로 가치가 있기 때문입니다.

탐색과 활용

에이전트가 모든 것에 대한 답은 아니더라도 새로운 무언가에 대한 답이기는 하며, 조직 이론에는 그것을 가리키는 이름이 있습니다. 1991년 James March(제임스 마치)는 이 분야에서 가장 많이 인용되는 논문 가운데 하나인 “Exploration and Exploitation in Organizational Learning”(조직 학습에서의 탐색과 활용)을 발표했습니다. 탐색은 새로운 가능성의 추구입니다. 실험, 변이, 위험이 여기에 속합니다. 활용은 이미 아는 것의 정련입니다. 효율, 실행, 신뢰성이 여기에 속합니다. 모든 조직에는 둘 다 필요하고, 둘은 같은 희소한 자원을 두고 다툽니다. 마치의 경고는, 탐색보다 활용을 더 빨리 정련하는 적응 과정은 단기적으로는 효과적으로 보이지만 장기적으로는 스스로를 파괴하는 경향이 있다는 것이었습니다. 조직은 활용 쪽으로 표류합니다. 활용의 보상이 더 가깝고, 더 확실하며, 더 측정하기 쉽기 때문입니다.

같은 트레이드오프가 DeepMind 자신의 분야인 강화 학습의 핵심에 놓여 있습니다. 이미 아는 것만 활용하는 에이전트는 더 나은 전략을 결코 찾지 못하고, 탐색만 하는 에이전트는 결코 보상을 거두지 못합니다. AlphaGo와 AlphaStar는 여러 면에서 이 딜레마에 대한 매우 정교한 답이기도 합니다. 이 트레이드오프 역시 프랙털입니다. 새 명령을 시도할지 정하는 하나의 에이전트 안에서, 다시 쓸지 고칠지 정하는 팀 안에서, 새 제품을 만들지 정하는 회사 안에서, 그리고 게임에 걸지 언어에 걸지 정하는 업계 안에서 나타납니다.

에이전트는 탐색의 가격을 바꿉니다. 역사의 대부분 동안 탐색은 비쌌습니다. 숙련된 사람과 시간, 그리고 실패에 대한 관용이 필요했고, 그래서 마치가 말한 조직들은 탐색에서 멀어져 갔습니다. 언어 에이전트는 기호 세계에서의 탐색을 저렴하게 만듭니다. 에이전트는 하룻밤 사이에 낯선 연동 작업에 열 가지 접근을 시도해 보거나, 규제 변경에 관한 모든 문서를 읽거나, 어떤 절차도 다루지 않는 특이한 사례들이 밀린 목록을 처리할 수 있습니다. 한편 활용은 언제나 결정론적 기계가 잘하는 일이었습니다.

이는 어느 쪽도 혼자서는 이루지 못하는 분업을 시사합니다. 에이전트는 탐색하고, 워크플로는 활용합니다. 설계의 질문은 그 둘 사이의 인터페이스입니다. 에이전트가 탐색으로 배운 것이 어떻게 워크플로가 활용할 수 있는 무언가가 되는지, 그리고 더는 작동하지 않는 워크플로가 어떻게 탐색으로 되돌려지는지입니다.

루틴은 회사의 기억입니다

Richard Nelson(리처드 넬슨)과 Sidney Winter(시드니 윈터)는 1982년, 진화 경제학의 기초가 된 저작인 『경제 변동의 진화 이론』(An Evolutionary Theory of Economic Change)에서 그 질문의 일부에 답했습니다. 그들은 기업의 행동은 그 루틴, 곧 기업이 일을 하는 규칙적이고 예측 가능한 패턴을 통해 가장 잘 이해된다고 주장했습니다. 루틴은 생물학에서 유전자가 하는 역할을 조직 안에서 합니다. 루틴은 조직의 기억이고, 조직이 한 해에서 다음 해로 자신의 행동을 재생산하는 방식이며, 경제적 변화는 새로운 루틴의 탐색과 그 가운데에서의 선택을 통해 일어납니다.

넬슨과 윈터도 알았듯이, 루틴의 약점은 루틴이 사는 곳에 있습니다. 한 조직의 루틴 대부분은 그것을 수행하는 사람들의 머릿속에 있습니다. 일부는 절차서와 매뉴얼에 적혀 있지만, 대부분은 그렇지 않습니다. 저는 IT Intelligence에서 이것을 부족 지식(tribal knowledge)이라는 이름으로 다룬 적이 있습니다. 아무도 적어 두지 않은 명시적 지식, 그리고 어쩌면 아무도 적을 수 없는 암묵적 지식입니다.

워크플로 엔진은 루틴이 사는 곳을 바꿉니다. 워크플로로 인코딩된 루틴은 더 이상 사람들이 해야 할 일에 대한 설명이 아닙니다. 그것은 그 일을 실제로 하는 주체이고, 모든 실행은 정확히 무슨 일이 일어났는지를 담은 저널을 남깁니다. 조직의 기억은 실행 가능해지는 동시에 들여다볼 수 있게 됩니다. 이는 회사가 인터뷰와 워크숍에서 자신의 루틴을 발견하는 대신, 그것을 읽고, 비교하고, 과거 사례에 대해 시험하고, 의도적으로 바꿀 수 있다는 뜻입니다.

최근까지 빠져 있던 것은 그 앞 단계였습니다. 루틴을 워크플로로 바꾸려면 사람 분석가와 개발자, 그리고 긴 프로젝트가 필요했습니다. Ikujiro Nonaka(노나카 이쿠지로)와 Hirotaka Takeuchi(다케우치 히로타카)는 암묵적 지식에서 명시적 지식으로 넘어가는 단계를 표출화(externalisation)라고 불렀습니다. 그들의 SECI 모델의 일부이며, 이 단계는 언제나 조직 학습에서 느리고 비싼 부분이었습니다. 이제 에이전트가 그 단계를 밟을 수 있습니다. 지켜보고, 탐색하고, 시도하고, 적어 둘 수 있습니다.

바닷속 공장

여기서 잠시 옆길로 새겠습니다. 제가 인터넷을 어떻게 읽는지에 대해 무언가를 말해 주는 옆길입니다.

저는 4chan을 읽고, UFO학도 읽습니다. 다른 사람들이 SF를 읽는 것과 대략 같은 마음으로 읽습니다. 보고서로서가 아니라, 기묘하고 때로는 훌륭한 사고 실험의 원천으로서 읽습니다. UFOAnon이라는 이름으로 알려진 익명의 작성자가 언젠가 비인간 비행체가 지구 주변에서 어떻게 운용되는지 설명한다고 주장하는 긴 스레드를 쓴 적이 있습니다. 그 대부분을 저는 픽션으로 분류합니다. 그런데 그중 한 장면이 제 머릿속에 남았습니다. 공학적 상상력의 산물로서 너무나 훌륭하기 때문입니다.

이야기 속에는 바닷속 공장이 있습니다. 그 공장은 함대를 보관하지 않습니다. 필요할 때마다 비행체를 만드는데, 하나하나가 단 하나의 임무를 위해 설계됩니다. 채굴용, 운송용, 생물을 실어 나르는 용도, 관광 비슷한 무언가를 위한 용도가 따로 있습니다. 비행체는 자기 임무에 맞게 만들어지고, 그 임무를 수행하고, 돌아와서 해체됩니다. 필요하지 않은 것은 아무것도 남겨 두지 않습니다. 영구적인 것은 공장 자체뿐입니다.

출처를 어떻게 생각하든, 그 설계는 설득력이 있습니다. 그 이유는 외계인과는 아무 관계도 없습니다. 그것은 물건을 만드는 일이 사실상 공짜가 된 문명이 지을 법한 것입니다. 제작에 비용이 들지 않는다면, 여러 일을 서툴게 해내는 범용 기계를 유지하기를 멈추고, 한 가지 일을 잘 해낸 뒤 사라지는 특수 목적 기계를 만들기 시작합니다. SF에는 그런 상태를 가리키는 이름이 있습니다. 탈희소성(post-scarcity)입니다. 그 가장 잘 알려진 초상은 Iain M. Banks(이언 M. 뱅크스)의 컬처(Culture) 시리즈인데, 맬러비에 따르면 허사비스가 그 시리즈를 읽으며 자랐습니다.

이 생각에는 점잖은 혈통도 있습니다. 1940년대에 John von Neumann(존 폰 노이만)은 종이 위에서 범용 생성자(universal constructor)를 설계했습니다. 세포 자동자 안의 기계로, 어떤 기계든 그 기계에 대한 기술(description)로부터 만들어 낼 수 있었고, 자기 자신의 사본도 만들 수 있었습니다. 그의 설계는 세 부분으로 이루어져 있었습니다. 청사진인 기술, 기술이 말하는 것은 무엇이든 만드는 생성자, 그리고 기술을 복제하는 복사기입니다. Arthur Burks(아서 버크스)는 폰 노이만이 세상을 떠난 뒤인 1966년에 이 작업을 완성해 『자기 증식 오토마타 이론』(Theory of Self-Reproducing Automata)으로 출간했습니다. 이 분리가 중요합니다. 기술이 그것을 실행하는 기계 장치와 분리되어 있기 때문에, 생성자가 그대로인 채로 기술은 바뀌고, 쌓이고, 진화할 수 있습니다.

소프트웨어는 수십 년 동안 그런 세계에서 살아왔습니다. 프로그램이나 컨테이너 이미지나 컴파일된 바이너리를 복사하는 데는 거의 비용이 들지 않고, 그래서 우리는 이미 개별 산출물이 아니라 공장과 템플릿과 패턴으로 생각합니다. 객체 지향 설계의 팩토리 패턴과 전략 패턴은 같은 생각의 작고 일상적인 판본입니다.

제가 생각하기에 그것이 이 이야기가 저를 설득하는 가장 깊은 이유입니다. 그것은 프랙털입니다. 소스 코드의 팩토리 패턴, 곧 다른 객체를 만드는 것이 일인 객체는 자동차를 만드는 공장과 같은 생각이고, 그것은 다시 필요에 따라 비행체나 다른 공장을 만드는 공장과 같은 생각입니다. 폰 노이만의 생성자는 추상화 한 단계 위에서 또다시 같은 생각입니다. 서너 개의 규모에서 성립하는 패턴은 우연인 경우가 드뭅니다. 대개는 세계가 어떻게 짜여 있는지에 관해 무언가를 찾아냈다는 뜻입니다. 2026년에 바뀐 것은 공장이 이제 생각할 수 있다는 점입니다. 공장은 기술을 스스로 쓸 수 있습니다.

메타 공장

조각들을 맞춰 보겠습니다. 에이전트는 탐험가입니다. 안개 속에서, 아무도 풀어 본 적 없는 문제들 사이로 길을 찾을 때 가장 빛납니다. 워크플로는 루틴입니다. 알려진 땅 위에서 매번 같은 일을 하며 누구나 읽을 수 있는 이력을 남길 때 가장 빛납니다. 둘 중 하나를 고르는 것이 실수입니다. 더 나은 설계는 둘을 연결해서, 탐험가가 찾아낸 것이 루틴이 되게 합니다.

   ┌──────────────────────────────┐
   │ the rugged world:            │
   │ open, foggy, changing        │
   └───────────────┬──────────────┘
                   ▼
   ┌──────────────────────────────┐
   │ an agent explores            │  trial and error, at runtime
   └───────────────┬──────────────┘
                   │  a path is found, and it will be needed again
                   ▼
   ┌──────────────────────────────┐
   │ the agent writes a workflow  │  typed, validated, simulated
   │                              │  against past cases, reviewed
   └───────────────┬──────────────┘
                   ▼
   ┌──────────────────────────────┐
   │ a deterministic engine       │  journaled, replayable, auditable;
   │ runs it                      │  may contain bounded agent steps
   └───────────────┬──────────────┘
                   ▼
   ┌──────────────────────────────┐
   │ observe                      │  exceptions, drift, new fog
   └───────┬──────────────┬───────┘
           ▼              ▼
        repaired         retired
       by an agent      when the mission is over

폰 노이만의 용어로 말하면, 워크플로 정의는 기술이고, 엔진은 생성자이며, 버전 관리는 복사기입니다. 그 이야기의 용어로 말하면, 에이전트는 바닷속 공장이고 워크플로는 그 공장의 비행체입니다.

새로운 종류의 보험금 청구, 새로운 규제 보고서, 새로운 연동을 마주하면, 에이전트는 유능한 사람이라면 누구나 그러듯 그것을 어떻게 할지 알아냅니다. 일회성 작업이라면 그것으로 끝입니다. 다시 생길 일이라면, 에이전트는 좋은 직원이 무언가를 세 번째로 해결한 뒤에 하는 일을 합니다. 절차를 적어 둡니다. 여기서 적어 둔다는 것은 결정론적 엔진을 위한 워크플로 정의를 만든다는 뜻입니다. 검증할 수 있고, 과거 사례에 대해 시뮬레이션할 수 있고, 사람이 검토할 수 있으며, 버전을 매길 수 있는 정의입니다. 그때부터 그 절차는 엔진 위에서 매번 같은 방식으로 돌아가고, 모든 실행은 정확히 무슨 일이 일어났는지 보여 주는 저널을 남깁니다. 세상이 바뀌어 워크플로가 예외를 내기 시작하면, 에이전트가 조사하고 수리를 제안합니다. 임무가 끝나면 워크플로는 해체되기 위해 돌아오는 비행체처럼 폐기됩니다.

이것을 도식 이상의 것으로 만드는 세부가 두 가지 있습니다.

첫째, 워크플로는 자신의 형태를 포기하지 않고도 판단을 담을 수 있습니다. 어떤 단계에는 정말로 에이전트가 필요합니다. 구조화되지 않은 문서를 읽거나, 편지 초안을 쓰거나, 특이한 사례가 어떤 규칙에 들어맞는지 판단하는 일이 그렇습니다. 그런 단계는 워크플로 안의 에이전트 호출이 될 수 있고, 그 입력과 출력은 저널에 기록되며 범위는 제한됩니다. 저는 그것을 운하의 갑문으로 생각합니다. 다른 곳에서는 곧게 흐르는 수로 안에서, 물이 오르내리도록 허락된 통제된 지점입니다. 앞에서 본 산술이 이것이 왜 중요한지 설명해 줍니다. 범위가 정해진 에이전트 단계 둘과 결정론적 단계 열여덟으로 이루어진 20단계 프로세스는 에이전트 단계 스물이 연달아 이어지는 것보다 훨씬 덜 실패하고, 실패하더라도 어느 갑문에서 물이 샜는지 알 수 있습니다.

둘째, 이것은 조직에 관한 가장 오래된 생각을 새로운 종류의 일꾼에게 적용한 것입니다. 사람은 거의 무엇이든 할 수 있습니다. 그것이 사람을 가치 있게 만들고, 또 믿고 맡기기 어렵게 만듭니다. 회사들은 언제나 같은 방식으로 대응해 왔습니다. 프로세스, 위계, 지침, 체크리스트, 교육입니다. 일이 반복 가능한 곳에서는 유능한 사람들의 즉흥을 절차로 바꾸었고, 그렇지 않은 곳에는 판단의 여지를 남겼습니다. 오늘날 회사들은 정책과 가드레일과 거버넌스 프레임워크로 에이전트를 가두려 하고 있는데, 이는 어휘만 다를 뿐 같은 움직임입니다. 메타 공장은 그것을 한 걸음 더 밀고 나갑니다. 에이전트가 하면 안 되는 일에 대한 규칙만으로 에이전트를 가두는 대신, 에이전트가 잘하는 일인 탐색을 하게 두고, 그 결과를 다른 일, 곧 반복을 잘하는 기계에게 넘기게 합니다.

모든 규모에서 같은 루프

메타 공장은 모든 규모에서 되풀이되는 하나의 루프입니다. 절차는 에이전트가 탐색하는 갑문을 담고, 그 에이전트는 스스로 작은 절차를 실행할 수 있으며, 절차들은 더 큰 절차로 조합됩니다. 그리고 충분히 멀리서 보면, 하나의 부서는 회사가 한때 탐색을 거쳐 들어서게 된 절차입니다.

규모무엇이 탐색하는가무엇이 결정화되는가
단일 단계특이한 문서 하나를 읽는 에이전트저널에 기록된 하나의 답
절차절차가 다루지 못하는 사례를 처리하는 에이전트새로운 규칙이나 분기
부서새로운 종류의 일을 처리하는 에이전트와 사람새로운 절차
회사새로운 시장을 시험하는 사람과 에이전트새로운 제품과 부서
산업서로 경쟁하는 회사들표준, 규제, 공유 인프라

모든 행에서 같은 동사가 통합니다. 탐색하고, 결정화하고, 실행하고, 관찰하고, 수리하고, 폐기합니다. 그것이 이것을 구호가 아니라 설계로 만듭니다. 한 규모에서 이 루프를 지원하는 엔진은, 워크플로가 에이전트를 담을 수 있고 에이전트가 워크플로를 시작할 수 있는 한, 모든 규모에서 이 루프를 지원합니다.

빚어낸 절차의 모습

어떤 보험사의 보상 에이전트들이 고객의 사진이 없거나 쓸 수 없는 누수 피해 청구를 계속 마주친다고 해 봅시다. 그런 사례 수십 건을 직접 처리하고 나서, 한 에이전트가 절차를 제안합니다. 그것은 이런 모습일 수 있습니다.

# procedures/claims/water_damage_photo_evidence.star (illustrative)
PROCEDURE = {
    "name": "claims/water-damage-photo-evidence",
    "version": 3,
    "origin": {"explored_by": "agent/claims-explorer", "cases_studied": 37},
}
# Approval and replay evidence travel with the file, in a signed record:
#   replayed against 412 closed claims, 0 divergences from human outcomes;
#   approved by the claims process owner on 2026-10-12.

def run(claim):
    docs = agent("classify_documents", claim["documents"],   # a lock: bounded judgement, journaled
                 prompt = "prompts/classify-documents.md",
                 output_schema = "DocumentClassification",
                 budget_tokens = 20000)

    coverage = step("coverage.water_damage@v7", claim)

    if docs["missing_photos"]:
        step("notify.customer", {"template": "claims/missing-photos", "to": claim["customer"]})
        photos = wait(signal("photos_received"), timeout = days(14))
        if photos == None:
            escalate("no-photos", claim)

    if claim["amount"] > 5000 or docs["confidence"] < 0.8:
        escalate("manual-review", claim)
    return call("claims/settle@v2", claim, coverage)

이것은 Starlark로 쓰여 있습니다. 매번 같은 답을 내야 하는 빌드 시스템을 위해 만들어진 Python의 작은 방언입니다. 그 인터프리터에는 시계도, 난수도, 네트워크도, 파일도 없습니다. 스크립트가 세계에 닿을 수 있는 유일한 길은 엔진의 함수를 통하는 것이고, 그 호출 하나하나가 저널에 기록됩니다. 그래서 엔진은 그것을 정확히 재실행할 수 있고, 사람은 여전히 1분 안에 그것을 읽을 수 있습니다.

메타 공장의 중요한 속성은 모두 그 몇 줄 안에 보입니다. 절차는 자신이 어디서 왔는지 기록합니다. 어느 에이전트가 탐색했는지, 몇 건의 사례를 살폈는지, 누가 승인했는지입니다. 누군가 그것을 신뢰하기 전에 그것은 수백 건의 종결된 청구에 대해 재실행되었습니다. 모델이 판단하도록 허락된 곳은 정확히 한 군데이고, 그곳에는 예산과 답의 스키마가 있습니다. 나머지는 모두 단계, 메시지, 대기이며, 결정론적 엔진이 매번 같은 방식으로 실행합니다. 그리고 버전 번호가 있으므로 교체하고, 비교하고, 폐기할 수 있습니다.

현장 안내서

철학은 결정을 바꿀 때에만 쓸모가 있습니다. 에이전트와 워크플로 엔진을 갖추고 둘 다 잘 쓰고 싶은 회사라면, 저는 이렇게 적용하겠습니다.

언제 일을 에이전트에게 맡기고, 언제 결정화할 것인가

신호에이전트에게 맡긴다워크플로로 결정화한다
빈도한 번, 또는 드물게매주 또는 그보다 자주
사례 간 편차큼: 사례마다 다름작음: 사례들의 형태가 같음
잘못된 결과의 대가낮음, 되돌릴 수 있음높음, 고객과 직접 닿음, 규제 대상
사후 설명의 필요있으면 좋음필수: 감사인, 규제 당국, 법원, 고객
실행당 비용일회성으로는 감수할 만함수천 번 실행하면 쌓임
지형의 안정성달마다 바뀜여러 분기 동안 안정적

어느 한 행이 결정하지는 않습니다. 드물지만 걸린 것이 매우 큰 사례에는 그래도 절차가 어울릴 수 있고, 잦지만 편차가 극심한 사례에는 탄탄한 체크리스트를 갖춘 에이전트가 더 나을 수 있습니다. 하지만 대부분의 행이 오른쪽을 가리킨다면, 에이전트가 매번 그 일을 하는 것은 워크플로가 없애 줄 수 있는 비용이자 위험입니다.

빚어낸 절차의 생애 주기

  1. 탐색. 에이전트가 새로운 종류의 일을 직접 처리하고, 사람이 결과를 검토합니다. 모든 사례는 재실행할 수 있을 만큼의 맥락과 함께 기록됩니다.
  2. 제안. 패턴이 되풀이되면, 에이전트가 자신이 처리한 사례들로부터 워크플로 정의의 초안을 쓰고, 여전히 판단이 필요한 단계를 표시합니다.
  3. 증명. 초안을 과거 사례에 대해 재실행합니다. 초안이 사람이나 에이전트가 이전에 한 것과 갈라지는 곳에서는, 그 차이를 설명하거나 초안을 고칩니다.
  4. 승인. 그 프로세스를 책임지는, 이름이 특정된 사람이 승인합니다. 승인은 위의 예에서처럼 절차 자체 안에 기록됩니다.
  5. 실행. 엔진이 그것을 결정론적으로 실행합니다. 그 안의 에이전트 단계는 예산과 출력 스키마로 제한됩니다.
  6. 관찰. 예외, 에스컬레이션, 타임아웃, 실행당 비용을 절차별, 버전별로 추적합니다.
  7. 수리 또는 폐기. 예외가 늘어나면 절차는 조사를 위해 에이전트에게 돌아갑니다. 일이 사라지면 절차는 폐기되고, 그 이력은 보존됩니다.

무엇을 측정할 것인가

  • 결정화율: 한 분기 동안 반복되는 일 가운데 얼마나 많은 부분이 에이전트에서 절차로 옮겨 갔는가.
  • 절차별 예외율: 에스컬레이션되는 실행의 비율. 예외가 늘어나는 것은 지형이 바뀌었다는 가장 이른 신호입니다.
  • 재실행 시의 차이: 절차가 바뀌었을 때, 과거 사례 가운데 몇 건을 이제 다르게 처리하게 되는가.
  • 실행당 비용: 토큰과 컴퓨팅 비용을 에이전트만 쓰는 대안과 비교한 것.
  • 수리까지 걸리는 시간: 실패하는 절차가 에이전트와 사람이 고칠 때까지 얼마나 오래 고장 난 채로 있는가.
  • 폐기율: 더 이상 아무도 실행하지 않는 절차. 아무것도 폐기하지 않는 회사는 좀비를 쌓아 가고 있는 것입니다.

규제 당국이 이것을 반길 이유

규제 산업에서 이 설계는 감독 당국이 향하고 있는 방향이기도 합니다. EU AI 법은 고위험 AI 시스템이 그 수명 동안 이벤트를 자동으로 기록할 수 있도록 기술적으로 뒷받침해야 하며, 배포자가 그 로그를 보관해야 한다고 요구합니다. 워크플로 엔진은 그 기록을 구조상 만들어 냅니다. 모든 단계, 모든 입력, 모든 에이전트 호출과 그 답이 순서대로 남고, 재실행할 수 있습니다. 자유롭게 일하는 에이전트는 대화 기록을 남기는데, 이는 없는 것보다는 낫지만 감사하고, 비교하고, 재현하기가 훨씬 어렵습니다. 에이전트를 절차로 감싸는 것은 규제 대상 업무가 이미 요구하는 종류의 추적 가능성에 이르는 가장 저렴한 길입니다.

실패하는 방식

  • 섣부른 결정화. 지형을 이해하기도 전에 무언가를 절차로 바꾸는 것으로, 깨지기 쉬운 워크플로와 끝없는 예외를 낳습니다. 표의 왼쪽 아래 칸입니다.
  • 좀비 절차. 아무도 소유하거나 이해하지 못하는데도, 아무도 감히 폐기하지 못해서 여전히 돌아가는 워크플로.
  • 갑문 안에서의 에이전트 표류. 모델 업데이트가 범위가 정해진 에이전트 단계의 동작을 바꿉니다. 과거 사례에 대한 재실행이 방어책이며, 이 재실행은 절차가 바뀔 때만이 아니라 모델이 바뀔 때마다 돌아가야 합니다.
  • 도장만 찍는 승인. 에이전트가 쓴 절차를 읽지도 않고 승인하는 사람들. 승인이 의미를 가지려면 절차가 충분히 짧고 읽기 쉬워야 합니다.
  • 지표에 작용하는 굿하트의 법칙. 에이전트에게 남겨 두었어야 할 것들까지 결정화해서 결정화율을 최적화하는 것.

운하와 그 경고

인간은 언제나 풍경에 이런 일을 해 왔습니다. 그레슬의 사진 속 강을 보고 나서 아무 도시나 보십시오. 우리는 정육면체, 구, 직선, 직각처럼 지형에서는 결코 나타나지 않는 형태를 짓습니다. 그것들이 하나의 관념에 봉사하기 때문입니다. 운하는 무엇을 하라는 지시를 받은 강입니다. 운하는 시간표에 따라 바지선을 실어 나르는데, 산속의 강은 결코 그러지 않을 것입니다.

망델브로의 용어로 말하면 운하는 유클리드적이고 강은 프랙털입니다. Euclid(유클리드)는 우리에게 직선과 평면과 매끄러운 곡선을 주는데, 이것들은 짓고, 재고, 믿기 쉽습니다. 자연은 우리에게 모든 규모의 거칠음을 주고, 정보의 대부분은 그 거칠음 속에 있습니다. 회사에는 두 기하학이 모두 필요하며, 매끄러운 쪽이 거친 쪽을 대체할 수 있다고 믿을 때 일이 틀어집니다.

여기에는 경고가 하나 있고, 저는 그것을 James C. Scott(제임스 C. 스콧)의 『국가처럼 보기』(Seeing Like a State)에서 가져옵니다. IT Intelligence에서도 기댔던 책입니다. 스콧은 계획된 숲에서 계획된 도시에 이르기까지, 복잡한 시스템에 읽기 쉬운 질서를 부과하는 계획들이 원래의 시스템을 작동하게 했던 실천적 지식을 파괴하는 경향이 있음을 보여 줍니다. 그는 그 지식을 메티스(mētis)라고 부릅니다. 특정한 한 항구를 아는 도선사, 특정한 한 밭을 아는 농부의 솜씨입니다. 모든 강을 운하로 만들면 강이 하는 일을 잃습니다. 범람원, 물고기, 그리고 어떤 엔지니어도 그리지 않았을 물길들입니다.

베버는 관료제 안쪽에서 같은 위험을 보았습니다. 관료제를 믿을 만하게 만드는 계산 가능성은, 절차적 올바름이 실질적 정의를 이길 때 관료제를 비인간적으로 만들 수도 있습니다. 그 종착점을 가리키는 그의 이미지, 흔히 쇠우리(iron cage)로 번역되는 표현은 그의 다른 문구 대부분보다 오래 살아남았습니다. 마치는 그것을 학습의 측면에서 보았습니다. 활용만 하는 조직은 작년의 문제에 매우 능숙해진 뒤에 실패합니다.

메타 공장은 세 가지 경고를 모두 존중해야 합니다. 모든 것이 워크플로가 되어야 하는 것은 아닙니다. 가장자리에서 탐색하는 에이전트는 모든 것이 자동화되기 전의 한 단계가 아니라 그림의 영구적인 일부입니다. 안개는 결코 완전히 걷히지 않기 때문입니다. 그리고 메티스를 지닌 사람들은 절차로 대체되지 않습니다. 그들의 역할이 바뀝니다. 무엇이 절차가 될 만한지 결정하고, 에이전트가 제안하는 것을 읽고 승인하며, 강이 움직였을 때 그것을 알아차리는 사람이 됩니다.

제가 추구하는 균형은 곁에 여전히 야생의 강이 흐르는 운하망이며, 언제 새 운하를 파고 언제 옛 운하를 메울지 아는 사람들과 에이전트들이 함께하는 모습입니다.

조직에 주는 의미

이 그림이 옳다면, 주로 기호 세계에 사는 회사들, 곧 대부분의 회사에 몇 가지가 따라 나옵니다.

프로세스 소유자는 편집자가 됩니다. 오늘날 프로세스 소유자는 사람들이 무엇을 해야 하는지 설명하는 문서를 관리하고, 그것이 사람들이 실제로 하는 일과 맞기를 바랍니다. 메타 공장에서 소유자는 에이전트가 제안하는 절차를 검토하고, 버전을 승인하고, 예외 보고서를 읽고, 언제 무언가를 폐기할지 결정합니다. 이는 행정보다 편집에 가까우며, 비즈니스와 절차 언어를 모두 비판적으로 읽을 수 있을 만큼 잘 이해하는 사람이 필요합니다.

조직도는 루틴의 집합처럼 보이기 시작합니다. 중간 관리자가 해 온 일의 상당 부분은 루틴을 수행하는 사람들을 조율하고 예외를 처리하는 것이었습니다. 루틴이 엔진 위에서 돌아가고 예외가 먼저 에이전트에게, 그다음 사람에게 전달되면, 조율하는 계층은 줄어들고 편집하는 계층은 커집니다. 저는 같은 변화를 아키텍트의 관점에서 What the architect does now에서 다룬 적이 있습니다.

신뢰는 사람에게서 절차로 옮겨 가고, 다시 얻어 내야 합니다. 루만의 체계 신뢰는 언제나 절차에 대한 신뢰였습니다. 새로운 것은 이제 그 절차를 기계가 쓸 수 있다는 점입니다. 고객과 규제 당국은 출처가 보이고, 승인이 실질적이며, 이력을 재실행할 수 있을 때에만 에이전트가 쓴 절차에 체계 신뢰를 내줄 것입니다. 어떤 기술적 세부보다도, 그것이 이 생각 전체가 작동하기 위한 조건입니다.

탐색은 예산 항목이 됩니다. 에이전트가 탐색을 저렴하게 만든다면, 회사는 모든 부서의 가장자리에서 탐색을 계속할 여유가 생기며, 그렇게 해야 합니다. 마치가 말한 활용 쪽으로의 표류는 부분적으로 비용의 문제였습니다. 이제 그 핑계는 약해졌습니다.

엔진에 주는 의미

메타 공장이 옳다면, 에이전트 시대의 워크플로 엔진은 어쩌다 Rust로 쓰인 Temporal 대안이라기보다, 에이전트가 기술을 써서 건네는 생성자에 가깝습니다. 그리고 그것은 엔진이 무엇을 잘해야 하는지를 바꿉니다.

  • 에이전트가 쓸 수 있고 사람이 읽을 수 있는 산출물로서의 절차. 모델이 만들어 낼 수 있고, 스키마가 검증할 수 있고, 시뮬레이터가 과거 사례에 대해 돌려 볼 수 있으며, 사람이 한자리에서 검토할 수 있는 정의로, 그 출처를 안에 담고 있습니다.
  • 증명할 수 있는 결정론. 재실행은 충돌 이후의 복구 이상의 역할을 합니다. 감사인에게 무슨 일이 일어났는지 보여 주는 방법이고, 수리된 절차가 옛 사례에서 여전히 옛 절차처럼 동작하는지 확인하는 방법이며, 모델 업데이트가 에이전트 단계를 바꾸었는지 감지하는 방법입니다.
  • 일급 개념으로서의 범위가 정해진 에이전트 단계. 모델을 호출하고, 충돌이 나도 결코 두 번 실행되거나 두 번 과금되지 않도록 그 답 전체를 저널에 기록하고, 예산과 출력 스키마를 강제하며, 기록된 답으로 재실행할 수 있는 단계입니다.
  • 일상적인 작업으로서의 탄생과 죽음. 버전, 승인, 배포, 드레이닝, 폐기가 그렇습니다. 특정 목적으로 만든 절차는 나타났다 사라지게 되어 있기 때문입니다.
  • 신호로서의 예외. 에스컬레이션과 타임아웃은 오류인 만큼 데이터이기도 합니다. 지형이 어디서 바뀌었는지 에이전트에게 알려 줍니다.
  • 어디에나 있을 만큼 작게. 노트북의 단일 바이너리 안에 든 라이브러리로 시작해, 필요할 때 클러스터로 자랍니다. 공장은 일이 있는 곳 어디에든 비행체를 둘 수 있어야 하기 때문입니다.

공장이 만든 것을 검사하기

공장은 그 검사만큼만 믿을 만합니다. 에이전트가 절차를 쓰고, 머지않아 그 절차가 돌아가는 엔진과 런타임까지 쓰게 된다면, 무언가가 에이전트에 대한 신뢰에 기대지 않고 그 결과물을 확인해야 합니다. 그것이 제가 만들고 있는 또 다른 프로젝트인 Arcanist와 그 Basel Haskell Compiler, 곧 BHC 뒤에 있는 내기입니다. 코드를 생성하는 일이 저렴해지면, 올바름은 확인 가능해야 합니다. Arcanist 사이트의 표현을 빌리면 이렇습니다. “모델이 옳을 필요는 없다. 확인 가능하기만 하면 된다.”

여기서 Haskell이 중요한 이유는 이 에세이 전체를 관통하는 이유와 같습니다. Haskell의 순수 함수는 구조상 결정론적입니다. 같은 입력이 주어지면 같은 결과를 돌려주고, 부수 효과가 있는 코드는 그것을 타입에 선언해야 합니다. 그것이 바로 지속형 실행 엔진이, 동일하게 재실행되어야 하는 워크플로 코드와 세계와 대화하는 단계 본문 사이에 그어야 하는 선입니다. Temporal 같은 엔진은 사후에 비결정성을 감지하는 방식으로 런타임에 그 선을 강제합니다. 타입 시스템은 코드가 실행되기도 전에 그 선을 강제할 수 있습니다. 아직 베타인 BHC는 같은 Haskell 소스를 서로 다른 런타임 프로필 아래에서 네이티브 코드와 WebAssembly로 컴파일하는데, 프로젝트는 각 프로필을 “당신의 코드와 그 코드가 돌아가는 런타임 사이의 계약”이라고 설명합니다. 그리고 프로젝트 자체의 측정에 따르면 243개의 테스트 프로그램 가운데 236개가 이미 WebAssembly에서 네이티브와 바이트 단위까지 똑같은 출력을 냅니다.

더 넓은 내기는 이런 컴파일러가 AI 지원 엔지니어링에서 핵심적인 도구가 될 수 있다는 것입니다. 에이전트가 코드를 쓰고, 컴파일러가 검증할 수 있는 것을 검증하며, 레지스트리가 무엇이 확인되었는지를 기록해서, 사람이든 모델이든 누구도 같은 것을 두 번 확인할 필요가 없게 합니다. 그 결과는 쓴 사람의 평판이 아닌 다른 이유로 동작을 믿을 수 있는 워크로드, 런타임, 또는 엔진입니다. 이것은 한 규모 아래에서 다시 나타난 메타 공장입니다. 에이전트가 탐색하고, 그 결과가 단단한 무언가로 결정화되며, 문 앞에는 검사관이 서 있습니다. 저는 검증 쪽에 대해서는 한 번만 쓰면 되는 증명에서, 도구에 대해서는 우리가 Rust로 Haskell 패키지 매니저를 만든 이유에서, 코드가 낮춤(lowering)의 대상이 되는 것에 대해서는 소스 코드는 새로운 어셈블리입니다에서 썼습니다. Aqueduct의 절차는 당분간 Starlark로 쓰입니다. 인터프리터가 시계나 난수를 아예 볼 수 없는 언어입니다. 그 절차들이 언젠가 BHC 같은 컴파일러가 확인할 수 있는 언어로 쓰이게 될지는 아직 모르겠습니다. 그것이 제가 가장 궁금해하는 방향입니다.

이름

설계 문서를 쓸 때 저는 거의 우연히 프로젝트에 가칭을 붙였습니다. tsumugi(紡ぎ), 날섬유를 자아 실로 만드는 일을 뜻하는 일본어입니다. 아름다운 단어였고, 저는 몇 주 동안 그 이름을 지켰습니다. 하지만 이름은 머릿속에 그림을 떠올리게 해야 하는데, 일본 밖의 대부분의 사람에게 이 이름은 그러지 못합니다. 제게 필요했던 그림은 이미 이 에세이 안에 있었습니다. 운하를 싣고 골짜기를 건너는 구조물입니다.

엔진의 이름은 Aqueduct(수도교)입니다.

로마인들은 먼 샘의 물을 도시로 끌어오기 위해 수도교를 지었습니다. 아무도 바꿀 수 없는 지형을 수십 킬로미터나 가로지르는 물길이었습니다. 돌 하나를 놓기 전에 누군가는 그 땅을 직접 걸으며, 물이 처음부터 끝까지 완만하게 흘러내리도록 언덕 사이로 길을 찾아내야 했습니다. 가르동강을 퐁 뒤 가르로 건너는 님(Nîmes)의 수도교는 길이가 약 50킬로미터에 이르는데, 수원은 수도교가 끝나는 님의 저수조보다 고작 17미터 높을 뿐입니다. 탐색이 먼저였고, 그 탐색은 느리고 거칠었습니다. 그것이 남긴 것은 수 세기 동안 날마다 같은 방식으로 물이 흐른 수로였습니다.

퐁 뒤 가르 또한 프랙털입니다. 세 층의 아치가 같은 형태를 되풀이하고, 각 층이 그 위의 층을 떠받칩니다. 엔진도 그렇게 작동해야 합니다. 단계는 워크플로가, 워크플로는 더 큰 워크플로가, 절차는 회사 전체의 루틴이 떠받치며, 각 계층은 그 아래 계층 위에 놓입니다.

운하와 수도교는 결국 만났습니다. 1805년 Thomas Telford(토머스 텔퍼드)와 William Jessop(윌리엄 제솝)은 웨일스에서 폰트카사스테 수도교를 완공했습니다. 돌 교각 위에 놓인 철제 수조로, 란골렌 운하를 디강 위 39미터 높이로 실어 나릅니다. 지금도 배들이 그 위를 건넙니다. 그것이 제가 엔진에 대해 품은 그림입니다. 강도 아니고 운하도 아닌, 운하가 휩쓸려 가지 않고 험준한 세계를 건너게 해 주며, 그것을 지은 사람들이 떠난 지 오래된 뒤에도 여전히 서 있는 구조물입니다.

로마인들은 이것을 이해한 행정가 한 사람도 남겨 주었습니다. 97년, 네르바 황제는 Sextus Julius Frontinus(섹스투스 율리우스 프론티누스)를 로마의 수도 감독관으로 임명했고, 프론티누스는 『로마의 수도에 관하여』(De aquaeductu)를 썼습니다. 도시의 수도 체계가 실제로 어떻게 작동하는지를 담은 공식 보고서로, 아홉 개의 수도교가 각각 어디에서 물을 끌어오는지, 각각이 얼마나 많은 물을 공급하는지, 그리고 그것들을 사용하고 유지하는 규칙을 적었습니다. 넬슨과 윈터라면 그것을 루틴 집합의 기록된 기억으로 알아보았을 것입니다. 프론티누스는 자신의 수도교들을 자랑스러워했고, 그것들을 기념물과 구별하는 것이 무엇인지 알았습니다. “그토록 많은 물을 실어 나르는 이토록 필수적인 구조물들의 행렬을, 원한다면 한가로운 피라미드나, 유명하기는 하나 쓸모없는 그리스인들의 작품과 비교해 보라!” (제1권 16절, Charles E. Bennett의 영어 번역에 따름)

저는 피라미드보다 수도교를 짓고 싶습니다. 기념물은 감탄의 대상이고, 수도교는 의지의 대상입니다. 그러다 결국에는 아무도 그것을 의식하지 않게 됩니다. 아그리파가 기원전 19년에 완공한 아쿠아 비르고는 르네상스 시대에 복원된 아쿠아 베르지네(Acqua Vergine)로 지금도 흐르며 트레비 분수에 물을 대고 있습니다. 그것이 제가 이 엔진에 바라는 종류의 의미입니다. 눈에 띄는 것이 아니라, 누가 지었는지 아무도 기억하지 못하게 된 뒤에도 여전히 물을 나르고 있는 것입니다.

맺으며

화이트헤드는 문명이 우리가 생각하지 않고도 수행할 수 있는 중요한 작업의 수를 늘려 감으로써 진보한다고 말했습니다. 역사의 대부분 동안 그 앞에 필요했던 생각은 사람이 느리고 비싸게 해냈고, 사람들이 루틴으로 바꾼 작업은 매뉴얼과 기억 속에 살았습니다. 이제 탐색은 기호 세계에서 놀라울 만큼 길을 잘 찾는 기계가 할 수 있고, 루틴은 매번 같은 일을 하며 자신이 한 일을 정확히 기억하는 기계 위에서 돌아갈 수 있습니다.

에이전트는 험준한 세계를 지나는 길을 찾아냅니다. 워크플로는 다시 걸을 만한 길 가운데 우리가 간직하는 것입니다. 적혀 있고, 반복할 수 있고, 들여다볼 수 있으며, 즉흥으로 움직이지 않기 때문에 신뢰받습니다. 에이전트와 함께 잘 해 나갈 회사는 에이전트에게 모든 것을 맡기는 회사도, 에이전트를 금지하는 회사도 아닐 것입니다. 에이전트가 탐색하게 두고, 그들이 찾은 것을 읽을 수 있는 런타임 위의 절차로 바꾸며, 강의 일부는 야생으로 남겨 두기를 잊지 않는 회사일 것입니다.

세계가 제 짐작만큼 경계가 없다면, 패턴은 거기서 끝나지 않습니다. 마지막 계층은 없고 다음 반복만이 있습니다. 우리가 아는 것의 가장자리에서 탐색하는 에이전트, 간직할 가치가 있었던 것을 간직하는 절차, 그리고 그 둘이 다음 계층이 딛고 설 땅이 되어 마침내 우리가 더는 그것들을 알아차리지 못하게 되는 일이 이어질 뿐입니다. 크라이튼은 자신의 소설을 반복들로 나누었습니다. 그것이 누구의 통제도 미치지 않는 지점을 넘어서까지 계속 펼쳐지는 시스템에 관한 이야기였기 때문입니다. 이것도 같은 종류의 이야기입니다. 생명은 길을 찾아내고, 강도 그렇습니다. 우리의 몫은 그 길들 가운데 무엇을 간직할 가치가 있는지 정하고, 그것을 실어 나를 수도교를 짓는 일입니다.

참고 문헌

게임, 언어, AI에 관하여:

프랙털, 반복, 아이디어에 관하여:

  • Benoit B. Mandelbrot, The Fractal Geometry of Nature, W. H. Freeman, 1982.
  • James Gleick, Chaos: Making a New Science, Viking, 1987.
  • Michael Crichton, Jurassic Park, Alfred A. Knopf, 1990, 그리고 Steven Spielberg가 감독한 1993년 영화. 소설의 반복들에 관해서는 하이웨이 드래곤 곡선.
  • 프랙털 우주론, 은하 탐사에 근거한 대규모 균질성 논증을 포함하여.
  • Stuart Kauffman, At Home in the Universe, Oxford University Press, 1995, 그리고 Steven Johnson, Where Good Ideas Come From, Riverhead, 2010, 인접 가능성에 관하여.
  • Michael Tomasello, The Cultural Origins of Human Cognition, Harvard University Press, 1999, 래칫 효과에 관하여.

위험, 신뢰, 조직에 관하여:

  • Frank H. Knight, Risk, Uncertainty, and Profit, 1921.
  • Niklas Luhmann, Trust and Power, Polity; 신뢰에 관한 에세이는 1968년 독일어 Vertrauen으로 처음 나왔습니다.
  • Max Weber, Economy and Society, 관료제와 합리적·법적 지배에 관하여.
  • Herbert A. Simon, The New Science of Management Decision, Harper and Brothers, 1960.
  • James G. March, “Exploration and Exploitation in Organizational Learning”, Organization Science 2(1), 1991, pp. 71 to 87, doi:10.1287/orsc.2.1.71.
  • Richard R. Nelson and Sidney G. Winter, An Evolutionary Theory of Economic Change, Belknap Press of Harvard University Press, 1982.
  • Ikujiro Nonaka and Hirotaka Takeuchi, The Knowledge-Creating Company, Oxford University Press, 1995.
  • James C. Scott, Seeing Like a State, Yale University Press, 1998.
  • Alfred North Whitehead, An Introduction to Mathematics, 1911.

공장과 기계에 관하여:

  • John von Neumann, Theory of Self-Reproducing Automata, edited and completed by Arthur W. Burks, University of Illinois Press, 1966; Von Neumann universal constructor 참조.
  • Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1994, 팩토리 패턴과 전략 패턴의 출처.
  • UFOAnon, 바닷속 공장이 등장하는 4chan 익명 스레드, 궁금한 분들을 위해 imgur에 모아 둔 것. 픽션으로 읽으십시오.
  • Temporal과 Restate, 지속형 실행 엔진.
  • Arcanist, AI가 작성하는 코드의 시대를 위한 Haskell 도구, 그리고 그 Basel Haskell Compiler.
  • Kubernetes, HashiCorp Nomad, wasmCloud, 오케스트레이터.

규제에 관하여:

수도교에 관하여:

사진에 관하여:

    전체 검색 열기 →