TL;DR
이 runtime은 orchestrator, compute, reducer, effect의 네 node type으로 나뉘며, LLM 호출은 비결정성·네트워크·비용·외부 장애를 지닌 Effect로 격리된다. Effect node는 typed command를 protocol adapter와 backend에 전달하고 결과와 운영 메타데이터를 typed event로 돌려준다. Workflow는 모델 실행 환경과 분리되고, 모델 호출 자체가 아니라 생성된 event를 Reducer에 재생해 결정적인 상태 전이를 검증할 수 있다. Provider 장애와 retry·circuit breaking은 Effect 경계에서, 상태 오류는 Reducer에서 찾아 장애 원인을 분리한다.
실용적 조언
- 모델 호출을 orchestrator나 업무 로직 안에 직접 넣지 말고 Effect 경계로 이동시키는 편이 구조적 장애 추적에 유리하다. Effect는 typed command를 받아 adapter로 backend를 선택하고, 호출 결과와 token accounting 같은 운영 메타데이터를 typed event로 남긴다. 이후 Reducer는 모델을 다시 호출하지 않고 이 event를 사용해 상태를 재생해야 결정적인 부분의 replay가 유지된다.
섹션별 상세
용어 해설
- Effect 노드(Effect Node)
- — Effect 노드는 외부 모델 endpoint처럼 비결정적이고 네트워크·비용·실패 가능성을 가진 작업을 전담하는 실행 단위이다. Typed command를 받아 protocol adapter로 backend를 선택하고 호출한 뒤, 결과와 운영 메타데이터를 Typed event로 반환해 업무 로직과 인프라 의존성을 분리한다.
- Reducer
- — Reducer는 현재 상태와 이벤트를 입력으로 받아 다음 상태를 결정하는 순수한 상태 전이 구성요소이다. 모델 호출 자체를 재실행하지 않고 모델 호출이 남긴 이벤트를 같은 Reducer와 contract version에 통과시킬 수 있어, 결정적인 workflow 부분을 replay할 수 있게 한다.
- Protocol Adapter
- — Protocol Adapter는 동일한 기능 요청을 실제 실행 backend의 인터페이스에 맞게 연결하는 계층이다. Effect 노드가 특정 모델 제공자나 실행 환경을 직접 알지 않도록 하며, 자체 하드웨어와 cloud API 사이에서 router가 adapter만 교체하게 만든다.
- Circuit Breaking
- — Circuit Breaking은 외부 제공자의 장애가 반복될 때 호출을 계속 보내지 않고 실패를 경계에서 차단하는 운영 기법이다. 이 구조에서는 provider availability, token accounting, retry와 함께 Effect 경계에 배치되어 외부 인프라 문제와 Reducer의 상태 전이 오류를 구분한다.
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.
