Harness Engineering 101: LLM은 두뇌, 하네스는 몸

2 hours ago 2

상태를 저장하지 않는 LLM API에 매번 전달하는 대화 JSON 배열을 만들고, 유지하고, 보호하는 프로그램을 하네스(harness) 로 정의하고, 이를 중심으로 AI 에이전트의 작동 원리를 풀어감 16개 장에 걸쳐 순수 Python으로 약 300줄짜리 실습용 에이전트를 점진적으로 만들며, 기본 원리부터 AI 에이전트를 구현하는 과정을 따라감 각 장은 실패 상황, 최소한의 수정, 수정에 따르는 비용이라는 동일한 구조로 구성되며, 에이전트의 기능을 기본 루프에서 발생한 구체적인 문제를 해결하는 수정으로 연결함 도구 호출과 에이전트 루프부터 컨텍스트 예산, 하위 에이전트, 실행 중 조정, 백그라운드 작업을 거쳐 MCP, 가드레일, 코딩 에이전트, RAG까지 다룸 본문은 CC BY-NC-ND 4.0, 코드는 MIT로 이중 라이선스를 적용하므로, 본문과 실습 코드의 재사용 조건이 다름 대화 JSON 배열에서 출발하는 에이전트 구현 Harness Engineering 101 은 기본 원리부터 AI 에이전트를 만드는 블로그 연재를 책 형태로 묶은 자료임 LLM API는 무상태이므로 매 턴 전체 대화를 JSON 배열로 보내고 텍스트를 돌려받음 하네스는 이 배열을 만들고, 유지하고, 보호하는 프로그램임 에이전트의 여러 기능을 이 기본 루프에 대한 수정으로 풀어가며, 각 수정은 구체적인 실패를 해결하기 위해 추가됨 순수 Python 실습용 에이전트를 약 300줄 규모로 키워가며 16개 장을 진행함 각 장은 실패 상황, 최소한의 수정, 수정에 따르는 비용 순서로 구성됨 마지막 장에는 주석을 붙인 완성형 하네스가 있음 같은 아이디어를 pi 기반 오픈소스 코딩 에이전트 One Code 에도 사용함 1부: 통신과 기본 루프 1장. 결국 JSON 배열일 뿐: LLM과 어떻게 통신하는지부터 시작함 2장. 두뇌: 다음 토큰을 만드는 블랙박스: 모델이 왜 그렇게 동작하는지 다룸 3장. 도구: JSON을 함수에 연결하기: 두뇌가 외부 세계에 직접 작용할 수 없는 문제를 다룸 4장. 에이전트 루프: 한 번의 도구 호출만으로는 부족한 문제를 다룸 5장. 캐싱: 순서가 중요한 이유: 배열을 반복 전송하면서 커지는 비용을 다룸 2부: 오래 실행할 때의 컨텍스트와 시간 관리 6장. 컨텍스트는 가방이 아니라 예산: 컨텍스트 창이 가득 차는 문제를 다룸 7장. 하위 에이전트: 컨텍스트 분기하기: 하나의 배열에 모든 작업을 담을 수 없는 문제를 다룸 8장...

Read Entire Article




피플앤툴즈 네트워크
🛍 샵