새 모델이 나올 때마다 프롬프트와 도구를 다시 맞추던 문제를 하네스 쪽에서 흡수하자는 논리. 출시 직후 남의 모델용 프롬프트를 그대로 옮겨 와 「파일마다 꼼꼼히 보라」고 시킨 탓에 느려지고 결과도 나빠진 사례가 구체적으로 나오고, 원인을 모델에게 직접 물어 알아낸 과정도 있음. 하네스가 실제로 무엇까지 떠맡아야 하는지의 목록과, 도구를 만드는 도구까지 이어지는 세 걸음이 함께 나옴.
한줄 코멘트. 모델이 배워 둔 순서를 시키는 말로 밀어내지 마라는 것이 이 발표에서 바로 써먹을 수 있는 한 가지다. 남의 모델에서 쓰던 프롬프트를 옮겨 오면 그 일이 벌어진다. 나머지 절반은 「하네스를 우리 것으로 쓰라」는 권유이고, 이 발표에는 성능을 잰 값이 하나도 없다.
같은 팀에서 코딩 에이전트를 만든다는 두 사람이 나온다.
코딩 에이전트를 셋으로 나눈다. 사람이 마주하는 자리, 모델, 그리고 하네스다. 오늘 볼 것은 마지막이라고 말한다.
*하네스를 이렇게 정의한다. 프롬프트와 도구를 한 고리 안에 모아 모델과 주고받게 하는 것이다.
발표의 출발점은 겪은 고통이다. 모델이 새로 나올 때마다 그 위에 얹은 것을 다시 만들어야 했다.
시키는 말이 습관을 이길 때
시키는 말이 습관을 이길 때
모델을 하네스에 맞추는 것을 이렇게 요약한다. 지능에 습관을 더한 것.
자기네 모델이 배운 습관을 든다. 계획하고, 둘러보고, 맥락을 모으고, 생각한 뒤에 코드를 고치고, 끝에 돌려 본다.
문제가 터진 자리가 여기다. 어느 모델을 냈을 때 사람들이 다른 모델용으로 쓰던 프롬프트를 그대로 옮겨 왔다. 거기에는 고치기 전에 파일마다 꼼꼼히 살펴보라는 말이 들어 있었다. 그러자 모델이 정말 그렇게 했고 오래 걸렸으며 결과도 좋지 않았다.
답은 단순했다. 하던 대로 하게 두고 과하게 시키지 않는 것이다.
알아낸 방법이 재미있다. 모델에게 직접 물었다 — 답은 마음에 드는데 오래 걸렸으니 다음에 빨리 가려면 지시를 어떻게 바꾸면 되겠냐고. 모델은 다 보라고 하니 그렇게 됐고 그럴 필요가 없었다고 답했다.
하네스가 떠맡아야 하는 것들
| 몫 | 무엇이 어렵나 |
|---|---|
| 새 도구 | 모델이 학습할 때 본 적 없는 것일 수 있다 |
| 생각하는 동안 | 얼마나 걸리는지, 그것을 화면에 어떻게 보일지 |
| 맥락 관리 | 언제 줄이고 언제 도로 넣을지, 캐시를 어떻게 살릴지 |
| 여러 갈래 | 동시에 부른 도구들을 어떻게 합칠지 |
| 가둬 두기 | 어디까지 손대게 할지, 권한과 통로 |
| 규격 붙이기 | 도구 규격을 받아들이는 배관 |
| 그림 | 어느 해상도로 줄여 보낼지 |
| 바뀌는 창구 | 부르는 방식 자체가 계속 바뀐다 |
새로 낸 모델이 맥락을 줄이는 일을 알아서 해 준다고 말한다.
만드는 사람들에게서 보이는 무늬 하나를 든다. 하네스가 새로운 추상화 계층이 된다는 것이다.
얻는 것이 뚜렷하다. 모델을 올릴 때마다 프롬프트와 도구를 다시 맞출 일이 없어진다.
그러면 그냥 껍데기 하나 만드는 것 아니냐는 반문이 나온다. 발표자는 동의하지 않는다며, 그래야 힘을 제품이 남과 달라지는 자리에 쓸 수 있고 값은 거기 있다고 답한다.
실제로 그렇게 한 곳들을 든다. 어느 편집기는 그것을 한 겹으로 감싸 자기 화면에 붙였고, 어느 코드 호스팅 쪽은 함께 만든 개발 키트로 곧장 이었다. 또 어느 편집기 팀과는 도구를 모델이 배운 모양에 맞추고 하네스를 공개된 구현에 맞추는 식으로 성능을 끌어냈다.
전부 공개돼 있으니 떠 가서 써도 된다고 말한다.
도구를 만드는 도구까지
발전 단계를 셋으로 그린다. 말을 주고받던 데서, 도구를 쥐여 주는 데로, 이제는 없는 도구를 스스로 만들게 하는 데로 왔다는 것이다.
그래서 되는 것을 든다. 고객마다 붙는 연결을 그 자리에서 스스로 짜는 기업용 물건을 만들 수 있는데, 예전에는 사람이 붙어서 해 주던 일이라는 것이다.
코딩이 아닌 쓰임도 든다. 명령줄로 말할 수 있는 일이면 무엇이든 된다며, 바탕화면 사진을 폴더로 정리하거나 폴더 안의 표 파일을 잔뜩 훑어 분석하는 것을 예로 든다.
모델이 좋아진다고 봐도 안전하다며, 더 긴 일을 지켜보지 않아도 하게 될 것이라고 말한다.
한 줄이 인상적이다. 새 모델은 믿을 수 있는 선을 끌어올린다 — 반년 전이라면 안 맡겼을 어려운 일을 지금은 맡긴다는 것이다.
앞으로 어려울 자리로는 거대한 코드베이스, 표준이 아닌 라이브러리, 닫힌 환경, 그리고 이미 있는 틀과 관행에 맞추는 일을 든다.
닫는 말은 권유다. 하네스는 복잡하고 새 모델이 나올 때마다 손이 많이 가니, 만들어 둔 것을 그대로 쓰거나 소스를 보라는 것이다.
성능을 잰 값이 하나도 없다. 하네스를 이렇게 짜면 무엇이 얼마나 나아지는지가 없다. 든 수는 주당 토큰이 수십 조이고 행사 뒤로 두 배라는 쓰임 규모뿐인데, 그것은 성능이 아니라 얼마나 팔렸나에 가깝다.
느려졌다는 사례에도 수가 없다. 얼마나 오래 걸렸고 얼마나 나빠졌는지가 없다. 고친 뒤 얼마나 빨라졌는지도 없다.
모델에게 물어 알아냈다는 방법의 신뢰도가 없다. 모델이 자기 행동의 이유를 정확히 댔는지 따로 확인한 자리가 없다.
파트너 사례에 값이 없다. 함께 맞춰 성능을 끌어냈다고만 하고 얼마나인지가 없다.
습관을 거스르지 말라는 조언의 경계가 없다. 어디까지가 과한 지시인지, 정말 꼼꼼히 봐야 하는 일에서는 어떻게 해야 하는지가 안 나온다.
자막이 모델과 제품 이름을 크게 뭉갠다. 판 번호와 제품 이름이 여러 군데 어긋나 있어 정확한 표기는 원문에서 갈린다.
용어