이름이 특정 글자로 끝나는 포켓몬을 세는 물음으로 능력 과잉(capability overhang)을 설명하고, 클로드 코드 시스템 프롬프트를 80% 걷어낸 이유를 밝힘. 판이 올라갈수록 프롬프트가 커졌다가 다시 작아진 자취를 되묻기 도구의 세 단계로 보여 주고, 모르는 것을 찾는 여섯 가지 방법을 구체적으로 짚음. 손으로 코드를 짜던 시절을 두고 얻은 것과 잃은 것을 함께 말하는 대목이 발표의 다른 절반이다.
한줄 코멘트. 모델이 좋아지면 프롬프트를 늘려야 한다는 통념이 뒤집히는 대목이 이 발표의 값이다. 예시를 많이 붙일수록 모델이 그 예시에 갇힌다는 이유로 시스템 프롬프트를 80% 걷어냈다고 말한다. 나머지 절반은 앤스로픽 새 모델을 파는 이야기와 개인적 회고라 잰 값이 없다.
앤스로픽에서 클로드 코드를 만든다고 밝힌 사람이 발표한다.
바탕에 깔린 말이 이것이다. 모델은 설계된 것이 아니라 길러진 것이고 데이터와 되먹임과 계산을 줘서 기른다. 그러니 *하네스와 프롬프트를 어떻게 짜느냐는 그 모델을 우리가 얼마나 이해했느냐의 함수가 된다.
들고 온 예가 포켓몬이다. 이름이 특정 두 글자로 끝나는 것을 세라는 물음인데, 보통 대화 모델은 못 푼다. 클로드 코드는 목록을 받아 와 걸러 내는 코드를 짜서 답한다. 발표는 이것을 *능력 과잉이라 부른다 — 모델 안에 이미 있었는데 꺼낼 길이 없던 것이다.
처음에는 맥락을 통째로 붙여 넣는 쪽을 그렸다고 말한다. 실제로 길이 난 것은 반대쪽이었다. 팔을 쥐여 주니 스스로 맥락을 찾아 쌓았다.
이 발표에서 가장 셀 만한 수가 여기 있다. 클로드 코드 시스템 프롬프트의 80%를 최근 걷어냈다.
프롬프트 모범이 뒤집힌 자취
| 시기 | 무엇이 좋다고 했나 |
|---|---|
| 소넷 3.5 뉴 무렵 | 작은 프롬프트 · 적은 도구 · 많은 예시 |
| 그 뒤 | 큰 프롬프트 · 많은 지시 · 많은 도구 |
| 지금 판 | 다시 작은 프롬프트. 예시 대신 맥락 |
이유가 뒤집힌 자리가 눈에 띈다. 예시를 붙이는 것이 도움이 아니라 가두는 일이 됐다는 쪽이다. 모델이 우리가 주는 예시보다 더 멀리 상상하니 제약이 아니라 맥락을 주려 한다고 말한다.
같은 도구가 판마다 달라진다
같은 이야기를 자기가 만든 도구로 보인다. 되묻기 도구를 클로드 코드에 붙였을 때, 한 판 아래 모델은 부르는 것조차 힘겨워 도구를 계속 손봐야 했다. 다음 판에서는 명세를 두고 마흔 가지를 되묻게 하니 인터뷰하듯 굴었다. 지금 판에서는 물음을 박아 넣은 리포트를 통째로 짠다.
내놓는 형식도 같이 옮겨 갔다고 말한다. 마크다운에서 계획 모드로, 이제는 깊이 들어간 리포트다.
이 일이 물리학보다 생물학에 가깝다고 말한다. 매우 경험적이고 유기적이라는 뜻이다.
지도와 영토
무엇을 쥐고 어디에 들어가나
발표의 가운데 개념이다. 머릿속 계획과 프롬프트와 명세가 지도이고, 실제 코드베이스와 현실의 제약이 영토다. 영토에서 지도에 없는 것을 만나면 그것이 「모르는 것」이다.
새 모델을 두고 처음으로 내 모르는 것을 미리 찾아 둬야겠다고 느꼈다고 말한다. 한 번에 훑는 넓이가 워낙 커서 그대로 두면 그런 자리를 잔뜩 만난다는 이유다.
발표가 나누는 네 칸
| 칸 | 무엇인가 |
|---|---|
| 아는 것을 안다 | 이미 쥐고 있고 쥔 줄도 안다 |
| 모르는 것을 안다 | 뭘 모르는지는 안다 |
| 아는 것을 모른다 | 쥐고 있는데 쥔 줄 모른다 |
| 모르는 것을 모른다 | 있는 줄도 모른다 |
발표가 든 순서 그대로
| 방법 | 무엇을 시키나 |
|---|---|
| 사각지대 훑기 | 내가 못 보고 있는 것을 짚고 더 나은 프롬프트를 도와 달라고 한다 |
| 시안 뽑기 | 확 다른 안 넷을 만들게 해서 그것에 반응해 본다 |
| 인터뷰 | 나를 인터뷰하게 하되 얼개를 바꿀 물음을 먼저 하라고 이른다 |
| 참고 코드 | 명세를 쓰는 대신 원하는 결과를 담은 코드를 준다 |
| 구현 기록 | 모르는 것을 만날 때마다 적게 해서 어디서 어긋났는지 남긴다 |
| 사후 퀴즈 | 끝난 뒤 나에게 문제를 내게 해서 내가 이해했는지 본다 |
넷째가 눈에 띈다. 명세를 말로 적는 대신 원하는 결과를 나타내는 코드를 통째로 던지는 쪽이다. 마지막도 방향이 뒤집혀 있다 — 모델을 검사하는 것이 아니라 모델이 나를 검사하게 한다. PR을 올리기 전에 내가 이 일을 설명할 수 있는지 확인하려는 것이다.
발표의 다른 절반은 회고다.
새 모델을 처음 썼을 때 크게 얻은 느낌과 잃은 느낌을 함께 느꼈다고 말한다. 몇 주 걸렸을 일이 몇 시간에 끝났다.
동시에 손으로 코드를 짜는 것을 정말 좋아했다고 말한다. 코드베이스를 머릿속에 놓고 돌려 보는 느낌을 좋아했다는 것이다. 그러면서도 밤늦게까지 실패 속을 헤엄쳤다는 기억을 함께 꺼낸다. 서른 명 남짓한 회사를 꾸리던 시절에는 코드가 어려운 탓에 늘 무엇을 버릴지 골라야 했다고 한다.
마지막 절에서 그 「골라야 한다」를 뒤집는다. 앤스로픽 문화 중 가장 좋아하는 것이 주고받기는 실재하지 않는다는 믿음이라고 말한다. 전 직장에서는 우선순위 목록을 적으며 합리적으로 굴었는데, 앞으로는 훨씬 덜 합리적이 되겠다고 말한다. 좋고 빠르고 싼 것 중 이제는 셋 다 고른다는 것이다.
이 발표 자료를 전날 밤 네 시간 만에 새 모델로 만들었다고 밝힌다.
만들기는 쉬워졌지만 값을 만드는 일은 여전히 어렵다는 말로 닫는다.
80%가 무엇의 80%인지 없다. 글자 수인지 줄 수인지, 걷어낸 뒤 무엇이 좋아졌는지가 나오지 않는다. 걷어내고 나빠진 것이 있었는지도 없다.
성능 수치가 하나도 없다. 벤치마크 점수를 한 번 들지만 그것은 우리가 그런 목표로 아침을 열지는 않는다는 예로 든 가상의 수다. 실제로 잰 값이 아니다.
여섯 방법 중 무엇이 얼마나 듣는지 없다. 여섯을 나란히 놓고 견준 자리가 없고, 하나를 뺐을 때 무엇이 나빠지는지도 없다.
네 시간 자료도 견줄 대상이 없다. 예전이라면 얼마나 걸렸을지가 없다.
앞으로도 계속 바뀔 것이라고 발표자가 직접 말한다. 프롬프트를 어떻게 짜느냐는 이야기의 유효기간을 스스로 짧게 잡아 둔 셈이다.
용어