용어집
《루프에서 그래프로: 에이전트 시스템을 위한 오케스트레이션 엔지니어링》의 용어 74개. 레슨 본문에서 처음 등장하는 용어에 마우스를 올리면 정의를 볼 수 있습니다.
| 용어 | 정의 | 출처 |
|---|---|---|
| 워크플로 | LLM과 도구가 미리 정의된 코드 경로를 통해 오케스트레이션되는 시스템 — 단계는 코드로 정해져 있고, 모델은 각각의 개별 단계 안에서만 자율적이다. 아키텍처적 구분의 한쪽 끝이며, 이 코스가 가르치는 다섯 패턴은 모두 이 끝에 속한다. | Building Effective AI Agents — Anthropic Engineering |
| 에이전트 | LLM이 자기 프로세스와 도구 사용을 동적으로 방향 지으며, 작업을 어떻게 완수할지에 대한 통제를 계속 쥐고 있는 시스템. 구현은 대개 단순하며 — 전형적으로는 환경 피드백에 기반해 루프 안에서 도구를 쓰는 LLM일 뿐이다. | Building Effective AI Agents — Anthropic Engineering |
| 체이닝 | 프롬프트 체이닝: 작업을 일련의 단계로 분해하며, 각 LLM 호출은 이전 것의 출력을 처리하고, 단계 사이에 프로그램적 점검을 끼워 넣을 수 있다. 작업을 고정된 하위 작업으로 깨끗이 분해할 수 있을 때 적합하다. | Building Effective AI Agents — Anthropic Engineering |
| 라우팅 | 입력을 먼저 분류한 다음 전문화된 후속 작업으로 디스패치하며, 관심사 분리와 더 전문화된 프롬프트를 주고받는다. 전제 조건: 범주가 구분되고 분류 자체를 정확하게 처리할 수 있어야 한다. | Building Effective AI Agents — Anthropic Engineering |
| 병렬화 | LLM이 여러 하위 작업을 동시에 처리하고 출력을 프로그램으로 집계하는 워크플로로, 두 변종이 있다: 섹셔닝과 투표. | Building Effective AI Agents — Anthropic Engineering |
| 섹셔닝 | 작업을 상호 독립적인 하위 작업으로 쪼개어 병렬로 실행하는 것 — 예컨대 문서 12개를 각각 하나씩 리뷰하는 것. | Building Effective AI Agents — Anthropic Engineering |
| 투표 | 같은 작업을 여러 번 돌려 다양한 출력을 얻고, 코드로 집계하는 것. | Building Effective AI Agents — Anthropic Engineering |
| 오케스트레이터-워커 | 중앙 LLM이 작업을 동적으로 분해하고, 워커 LLM에게 위임하고, 결과를 종합하는 워크플로. 핵심은 하위 작업이 미리 정의되어 있지 않다는 것 — 오케스트레이터가 구체적인 입력에 근거해 정한다. | Building Effective AI Agents — Anthropic Engineering |
| 평가자-최적화자 | 한 LLM이 응답을 생성하고 다른 하나가 평가와 피드백을 루프로 제공하며, 통과하거나 더 이상 진척이 없을 때까지 되풀이한다. 평가 기준이 명확하고 반복적 개선이 측정 가능한 가치를 제공할 때 적합하다. | Building Effective AI Agents — Anthropic Engineering |
| 게이트 | 체인이나 루프 안의 프로그램적 점검(다른 모델 호출이 아니라)으로, 코드를 써서 결정론적 검사를 하며, 같은 입력이면 영원히 같은 결론이 나오고, 자격 미달 중간 결과를 막는 데 쓴다. | Building Effective AI Agents — Anthropic Engineering |
| 하네스 루프 | stop_reason이 이끄는 while 루프: 메시지를 보내고, 정지 이유를 확인하고, tool_use이면 도구를 실행해 돌려주고, 아니면 반환한다. 이 코스의 모든 '노드'는 내부에서 이 루프를 돈다. | Building Effective AI Agents — Anthropic Engineering |
| stop_reason | 각 모델 응답에서 '이 턴이 왜 멈췄는지'를 진술하는 필드로, 하네스 루프는 이것에 의존해 도구 호출을 계속할지 마무리할지를 정한다. | Building Effective AI Agents — Anthropic Engineering |
| 최대 회차 | 루프에 설정하는 반복 상한, 퓨즈 — 어떤 상황에서도 코드가 멈추도록 보장한다. 제어를 유지하며, 품질을 판정하지 않는다. | Building Effective AI Agents — Anthropic Engineering |
| 퓨즈 | 이 코스의 '최대 회차'급 폴백 정지 조건에 대한 은유: 평상시에는 발동하지 않아야 하며, 발동은 다른 정지 메커니즘이 잡지 못했다는 뜻이다. | Building Effective AI Agents — Anthropic Engineering |
| 결정론적 검증기 | 코드로 옳고 그름을 가릴 수 있는 검사기: 코드가 가릴 수 있다면 모델에게 돈 내고 물어보지 마라. 이 코스는 그것을 '종단 상태'에서 '체인의 링크 사이'로 옮긴다. | Building Effective AI Agents — Anthropic Engineering |
| 계층화된 채점 | 코드가 가릴 수 있는 것을 먼저 코드로 가리고, 코드가 할 수 없는 것만 모델에게 넘긴다. 이 코스는 이 규율을 루프의 노드 순서로 곧장 옮긴다(게이트가 판정자보다 먼저). | Building Effective AI Agents — Anthropic Engineering |
| 명백히 | 결과를 명백히 개선할 때에만 복잡도를 더하는 것을 고려해야 한다 — 더하는 모든 노드나 패턴 계층은 이 관문을 통과해야 한다. | Building Effective AI Agents — Anthropic Engineering |
| 누가 계획을 쥐고 있는가 | 시스템이 결정성 스펙트럼의 어느 끝에 떨어지는지 판정하는 축: 계획이 코드의 손에 있는가(워크플로), 모델의 손에 있는가(에이전트)? | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 워크플로 스크립트 자체가 루프, 분기, 중간 결과를 쥔다 | 워크플로를 설명하는 1차 자료의 문장이자, 이 코스의 '그래프' 은유의 유일한 1차 닻: 계획은 스크립트에 있고, 모델의 컨텍스트에는 최종 답만 머문다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 점진적으로 추적 | 런타임은 실행이 진행되는 동안 각 에이전트의 결과를 점진적으로 추적한다. 이것이 같은 세션 안에서 실행을 재개할 수 있게 하는 전제다. 프로세스 간 재개는 여전히 직접 디스크에 상태를 영속화해야 한다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 검사-수정-재검사 | 리뷰 회로의 제품 형태: 검사기를 돌리고, 실패한 것을 고치고, 통과하거나 더는 진척이 없을 때까지 되풀이한다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 더는 진척 없음 | 최대 회차보다 똑똑한 정지 메커니즘: 이번 회차가 지난 회차를 이겼는지(점수가 올랐는지, 실패 항목 수가 줄었는지)를 보고, 나아지지 않았으면 손을 턴다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 적대적 교차 리뷰 | 독립적인 에이전트들이 보고되기 전에 서로의 발견을 적대적으로 리뷰하게 하는 것. 보고 전 일회 교차 리뷰이고, 되돌아가는 엣지도 반복도 없다 — 그것을 리뷰 회로에 묶는 것은 이 레슨의 분류이지, 원문이 같은 위상을 설명한 것이 아니다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 패턴을 그래프로 조합하기 | 이 코스 자체의 엔지니어링 은유이지 공식 용어가 아니다: 다섯 패턴을 조합할 때 관계를 명확히 하기 위해 쓰는 시각화 체계. 유일한 1차 닻은 '워크플로 스크립트 자체가 루프, 분기, 중간 결과를 쥔다'는 것이다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 노드 | 이 코스의 시각화에서 한 지점: 내부에는 완전한 runAgent 루프 하나 또는 순수 코드 한 덩이. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 되돌아가는 엣지 | 리뷰 회로에서 출력을 생성 노드로 되돌려 보내는 선. 앞의 네 패턴은 모두 직선이고, 리뷰 회로는 되돌아가는 엣지를 가진 첫 패턴이다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 갈래점 | 이 코스의 시각화에서 라우팅을 위한 지점으로, '판정 결과에 따라 다른 엣지를 탄다' — 코드의 분기에 대응한다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 16개의 동시 에이전트 | Claude Code 워크플로 런타임의 동시 실행 상한, CPU가 제한되면 더 적다. 실행당 에이전트 1,000개 상한. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 90.2% | 멀티 에이전트 시스템의 싱글 에이전트 대비 개선, 완전한 맥락에서만 성립한다: 그들의 내부 리서치 평가, Opus 4 리드 + Sonnet 4 서브에이전트, 넓이 우선 쿼리에서 특히 우수했다. | How we built our multi-agent research system — Anthropic Engineering |
| 4배 | 그들 자신의 데이터로, 에이전트는 채팅 상호작용의 약 4배 토큰을 쓴다. | How we built our multi-agent research system — Anthropic Engineering |
| 15배 | 그들 자신의 데이터로, 멀티 에이전트 시스템은 채팅 상호작용의 약 15배 토큰을 쓴다. 경제적으로 성립하려면 작업 가치가 이 개선을 정당화할 만큼 충분히 높아야 한다. | How we built our multi-agent research system — Anthropic Engineering |
| 90% | 2단 병렬화를 도입한 뒤(리드 에이전트가 서브에이전트 3~5개를 병렬로 띄우고, 서브에이전트가 도구 3개 이상을 병렬로 씀) 복잡한 질의에 대해 리서치 시간을 최대로 줄인 비율. 레이턴시 숫자이지 품질이 아니다. | How we built our multi-agent research system — Anthropic Engineering |
| 위임 프롬프트 | 오케스트레이터가 각 워커에게 건네는 작업 설명. 위임 프롬프트는 네 요소가 모두 온전해야 자기완결적이어야 하며, 그러지 않으면 워커가 작업을 중복하거나, 빈 곳을 남기거나, 필요한 정보를 찾지 못한다. | How we built our multi-agent research system — Anthropic Engineering |
| 네 요소 | 자격 있는 디스패치가 온전히 써야 할 네 절: 목표, 출력 형식, 도구와 자료에 대한 안내, 명확한 과제 경계. | How we built our multi-agent research system — Anthropic Engineering |
| 할당량 규칙 | 오케스트레이터의 프롬프트에 써넣는 규모 배분: 작업 복잡도에 따라 서브에이전트 개수와 서브에이전트당 도구 호출 상한을 정하는 것으로, 에이전트는 적절한 노력을 스스로 판단하기 어렵기 때문이다. | How we built our multi-agent research system — Anthropic Engineering |
| 스케일링 규칙 | 그들이 프롬프트에 심은 스케일링 규칙 예시: 단순한 사실 확인은 에이전트 1개 호출 3~10회, 직접 비교는 서브에이전트 2~4개 각 10~15회, 복잡한 리서치는 책임이 명확히 나뉜 서브에이전트 10개 이상. | How we built our multi-agent research system — Anthropic Engineering |
| 동기 실행 | 오케스트레이터가 모든 워커가 끝날 때까지 기다렸다가 진행하는 실행 모드. 병목: 한 단계가 멈추면 배치 전체가 기다리고, 결과는 모두 오케스트레이터로 돌아온다. | How we built our multi-agent research system — Anthropic Engineering |
| 페이로드가 아니라 참조를 넘겨라 | 워커가 출력을 외부 시스템에 저장하고, 가벼운 참조(파일 경로 + 한 줄 요약)만 오케스트레이터에게 돌려주며, 상세한 결과를 주 대화로 밀어 넣지 않는 것. | How we built our multi-agent research system — Anthropic Engineering |
| 아티팩트 시스템 | 전문화된 에이전트가 출력을 독립적으로 지속되는 것(파일, 외부 기록)으로 만들게 하며, 모든 것을 리드 에이전트를 통해 중계하지 않는 것. 페이로드가 아니라 참조를 넘기는 것이 이것에 의존한다. | How we built our multi-agent research system — Anthropic Engineering |
| 가벼운 참조 | 오케스트레이터에게 돌려주는 짧은 기록: id, 파일 경로, 한 줄 요약. 전체 텍스트를 원하는 이가 경로로 읽는다. | How we built our multi-agent research system — Anthropic Engineering |
| 창발 행동 | 멀티 에이전트 시스템에서, 단계별로 보아서는 예측할 수 없는 전체 행동으로, 각 서브에이전트의 작은 결정이 쌓여서 생긴다. 작은 변경이 체인을 따라 증폭된다. | How we built our multi-agent research system — Anthropic Engineering |
| 관심사 분리 | 각 서브에이전트가 서로 다른 도구, 프롬프트, 탐색 궤적을 지니며, 자연히 오염되지 않고, 경로 의존성도 줄인다. 이것이 팬아웃이 속도 외에 주는 것이다. | How we built our multi-agent research system — Anthropic Engineering |
| 경로 의존성 | 한 루프에서, 뒤따르는 단계의 판정이 앞선 단계의 표현에 치우친다. 여러 독립적인 궤적은 같은 치우침을 공유하지 않으므로, 경로 의존성을 줄인다. | How we built our multi-agent research system — Anthropic Engineering |
| 공유 컨텍스트 | 오늘날 멀티 에이전트가 잘 맞지 않는 시나리오: 모든 에이전트가 같은 컨텍스트를 봐야 하거나 에이전트 간 의존이 많은 작업(대부분의 코딩 작업 같은), 진짜로 병렬화 가능한 부분이 리서치보다 적다. | How we built our multi-agent research system — Anthropic Engineering |
| 결정론적 안전장치 | 비결정론적 에이전트를 감싸는 결정론적 메커니즘: 재시도 로직, 정기 체크포인트. 그래프의 골격은 결정론적이고, 노드 내부는 비결정론적이다. | How we built our multi-agent research system — Anthropic Engineering |
| 결정론적 시스템 | 같은 입력이 주어지면 매번 같은 출력을 내는 시스템. 코드로 쓴 게이트, 검증기, 집계가 모두 이 범주에 속한다. | Writing effective tools for agents — with agents — Anthropic Engineering |
| 비결정론적 | 같은 시작 조건에서도 다른 응답을 낼 수 있는 속성 — 에이전트가 이 유형이다. | Writing effective tools for agents — with agents — Anthropic Engineering |
| 평가 작업 하나마다 루프 하나 | 평가 실행에 대한 공식 권고: LLM API를 직접 호출하고, 단순한 에이전틱 while 루프를 쓰고, 평가 작업 하나마다 루프 하나. 이 코스는 이것을 빌려 '체인 단계는 완전한 루프다'를 보인다. | Writing effective tools for agents — with agents — Anthropic Engineering |
| 서브에이전트 | 주 대화에서 디스패치한 에이전트로, 자기 독립적인 컨텍스트 윈도 안에서 작동하고, 요약만 돌려준다. 탐색과 구현을 주 대화 밖에 두어, 컨텍스트를 보존하는 데 쓴다. | Create custom subagents — Claude Code official documentation |
| 주 대화 | 오케스트레이터의 주선 컨텍스트. 서브에이전트가 끝나면 결과가 여기로 돌아오므로, 반환은 가벼워야 하거나 보호가 부담이 된다. | Create custom subagents — Claude Code official documentation |
| 20개 서브에이전트 | Claude Code의 기본 동시 실행 상한: 세션에서 서브에이전트 20개가 돌고 있을 때 다른 하나를 띄우면 실패하고, 모델에게 재시도하지 말라고 명시적으로 말한다. | Create custom subagents — Claude Code official documentation |
| 서브에이전트를 순차적으로 | 여러 단계짜리 워크플로에 대한 Claude Code의 제안: Claude가 서브에이전트를 순차적으로 쓰게 하고, 각각 마치고 결과를 돌려주면, 관련 컨텍스트를 다음으로 넘긴다. 이것이 체이닝의 제품 형태다. | Create custom subagents — Claude Code official documentation |
| 전문화 | 작업을 도메인별 시스템 프롬프트와 도구를 가진 에이전트에게 라우팅하는 것(보안 에이전트, 문서 에이전트)으로, 모든 능력을 하나의 에이전트에 집어넣지 않는다. 현행 퍼스트 파티 어휘에서 라우팅의 이름. | Multiagent orchestration — Claude API documentation (Managed Agents) |
| 에스컬레이션 | 복잡한 하위 작업의 부분집합에 대해 더 유능한 에이전트나 모델에 자문하는 것. '자문'이라는 점(코디네이터가 여전히 통제를 쥔다)을 주목하라, 완전히 넘기는 것이 아니다. | Multiagent orchestration — Claude API documentation (Managed Agents) |
| 병렬화 | 현행 Claude 플랫폼 멀티 에이전트 오케스트레이션 문서에서: 독립적인 하위 작업을 병렬로 팬아웃하고(여러 출처를 검색하고, 별도 파일을 분석하고), 코디네이터가 결과를 종합한다. | Multiagent orchestration — Claude API documentation (Managed Agents) |
| 25개 동시 스레드 | Managed Agents가 지원하는 동시 실행 상한. 코디네이터는 같은 에이전트의 여러 복사본을 호출할 수 있고, 각각 스레드를 연다. | Multiagent orchestration — Claude API documentation (Managed Agents) |
| 동시 실행 풀 | 고정 N개 레인을 열고, 각각 현재 항목을 마치면 공유 커서에서 다음을 가져오며, 항상 N개가 날아간다. 배칭보다 버킷 효과가 적다. 이 코스의 스크립트는 이것을 runPool이라 부른다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 동시 실행 상한 | 동시에 날아가는 작업의 하드 캡. 세 실제 제품(Claude Code 20, 워크플로 런타임 16, Managed Agents 25)이 모두 하나를 뒀다 — 무제한 팬아웃은 최적화가 아니라 사고다. | Create custom subagents — Claude Code official documentation |
| 배칭 | 레이트 제한 접근법: 배치당 N개, 배치는 직렬. 동작하지만 버킷 효과가 있다: 각 배치가 그 배치의 가장 느린 것이 끝날 때까지 기다렸다가 다음 것을 시작한다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| Promise.all | 비동기 작업 그룹을 동시에 돌리고, 모두 완료되면 반환하는 패턴. 성깔: 하나라도 거부되면 전체가 거부된다 — 나머지가 끝났어도 그 결과를 가져올 수 없다. | Building Effective AI Agents — Anthropic Engineering |
| 팬아웃 | 한 조각의 작업을 여러 에이전트/노드에 펼쳐 동시에 돌리는 것. 속도, 독립적인 시각, 병렬 컨텍스트 용량을 주고, 비용은 결과가 오케스트레이터로 돌아오는 것이고, 실제 제품은 모두 상한을 뒀다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 병합 | 팬아웃 결과가 돌아온 뒤, 코드가 필터링, 집계, 판정을 한다. 이 코스는 파일에서 참조만 돌려 읽게 하고, 전체 텍스트를 컨텍스트에 밀어 넣지 않는다. | Building Effective AI Agents — Anthropic Engineering |
| 페이로드 | 워커 출력 자체의 상세한 내용. 병합 시 페이로드 역류는 컨텍스트를 폭발시키므로, 페이로드가 아니라 참조를 넘긴다. | How we built our multi-agent research system — Anthropic Engineering |
| 분류기 | 라우팅의 첫 단계: 입력이 어느 범주에 속하는지 판정하고, 출력을 한 단어로 조인다. 모델일 수도, 전통적인 분류 모델/알고리즘일 수도 있다. | Building Effective AI Agents — Anthropic Engineering |
| 폴백 | 분류가 적법 레이블 테이블에 맞지 않을 때 타는 가지('other'로 떨어지는 것처럼). 모델이 가끔 한 단어 대신 전체 문장을 돌려주는데, 폴백이 이 비결정성을 이 한 줄에 가둔다. | Building Effective AI Agents — Anthropic Engineering |
| 결정성 스펙트럼 | 이 코스 자체의 표현이지 공식 용어가 아니다: '누가 계획을 쥐고 있는가' 축을 워크플로에서 에이전트까지 결정론적에서 자율적으로의 연속 범위로 다루는 것. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 통제된 크래시 | 이 시리즈의 코스 9의 관행: 상태가 실제로 디스크에 떨어졌는지 검증하기 위해 지정 지점에서 고의로 프로세스를 멈추는 것. 이 코스의 STOP_AFTER가 그것의 단순화 버전이다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 공회전 | 루프가 여러 연속 회차 동안 같은 것을 진척 없이 되풀이하는 상태. 이 시리즈의 코스 7의 밸브 3(공회전 감지)이 이것을 막기 위한 것이다. | Building Effective AI Agents — Anthropic Engineering |
| 원자적 쓰기 | 디스크 영속화 방법으로, .tmp에 먼저 쓰고 rename으로 교체하는 것: 어느 순간 죽어도, 디스크에는 이전 완전한 상태나 새 완전한 상태가 있고, 절반의 JSON은 절대 없다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| run-state.json | 이 코스의 스크립트 실행 추적 파일(각 노드가 완료된 뒤 한 번, 리뷰 안의 각 판정 뒤 다시 한 번 영속화), 원자적 쓰기가 어느 순간에도 읽을 수 있음을 보장한다. 실행 진척을 기록하며, '그래프의 상태 변수'가 아니다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| run.jsonl | 이 코스의 스크립트 구조화된 로그: 한 줄에 JSON 이벤트 하나, ts와 run_id를 담고, id/카테고리/파일명/개수만 기록하며, 응답 본문은 기록하지 않는다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| 스텁 클라이언트 | 고정 응답 큐로 실제 API를 흉내 내는 테스트 대역: client.messages.create()가 미리 정해진 응답을 순서대로 돌려주며, 전체 오케스트레이션이 의존 없이 재현 가능하게 돈다. | Writing effective tools for agents — with agents — Anthropic Engineering |
| STOP_AFTER | 이 코스의 스크립트 통제된 크래시 스위치: merge로 설정하면 리뷰 전에 멈추고, 종료 코드 2, 팬아웃/병합 상태가 실제로 영속화됐는지 검증하는 데 쓴다. merge 하나만 값으로 인정한다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |
| needs_human | 루프가 자격 있는 출력을 만들 수 없을 때의 결과 표시: 종료 코드 1 티켓이 여기서 멈추고, 사람에게 넘긴다. | Orchestrate subagents at scale with dynamic workflows — Claude Code official documentation |