파이프라인과 에이전트
앞의 개념들이 실제로 돌아가는 자리인 자동화와 질의 흐름을 설명합니다.
파이프라인은 원본 데이터를 읽어 가공하고 결과를 다시 데이터셋이나 온톨로지에 적재하는 실행 흐름입니다. 개념 정의는 파이프라인이 실제 행을 채워 넣기 전까지는 빈 모델로 남아 있습니다.
에이전트는 그 반대편에 있습니다. 자연어 요청을 받아 어떤 도구를 쓸지 정하고, 온톨로지와 시맨틱 레이어를 거쳐 데이터에 도달합니다. 파이프라인이 데이터를 채우는 쪽이라면 에이전트는 채워진 데이터를 꺼내 쓰는 쪽입니다.
모델을 채우는 쪽
파이프라인은 한 번 만들고 반복해서 도는 것을 전제로 합니다. 참여 기록 원본을 읽고, 타입과 형식을 맞추고, 직원과 프로젝트 엔티티로 적재하는 과정이 매번 같은 순서로 실행됩니다.
반복 실행이 안전한지는 결과를 어떤 방식으로 쓰는지가 정합니다. 같은 식별 키를 가진 행을 갱신하는 방식으로 적재하면 같은 파이프라인을 여러 번 돌려도 인스턴스가 늘지 않습니다. 온톨로지에 엔티티와 관계를 넣을 때 쓰는 방식이 여기에 해당합니다.
데이터셋에 결과를 쓸 때는 선택지가 더 있습니다. 뒤에 이어 붙이는 방식이면 같은 구간을 다시 가져올 때마다 같은 행이 쌓이고, 통째로 바꾸는 방식이면 이전 결과가 남지 않습니다. 반복 실행을 전제로 하는 흐름에서는 이 선택을 먼저 정해야 합니다.
반복 실행은 일정으로도 이어집니다. 정해진 시각에 걸어 두면 모델은 손대지 않아도 최신 상태를 유지하고, 실행 이력에 무엇이 언제 성공하거나 실패했는지가 남습니다.
꺼내 쓰는 쪽
에이전트는 질문을 받아 직접 답을 만들지 않고, 먼저 무엇을 호출할지 정합니다. 호출 대상은 성격에 따라 둘로 나뉩니다.
- 도구는 읽거나 계산해 결과를 돌려줍니다. 바깥 상태를 바꾸지 않습니다.
- 액터는 기록, 전송, 변경처럼 결과가 남는 작업을 맡습니다. 실행 전에 사람의 승인을 요구하거나 실행을 막을 수 있습니다.
이 구분은 안전 장치이자 설계 원칙입니다. 조회는 반복해도 되지만 상태를 바꾸는 작업은 되돌리기 어려워, 두 종류를 같은 통로로 다루지 않습니다.
데이터를 물을 때 만나는 지점
두 흐름은 서로 직접 호출하지 않습니다. 에이전트가 저장된 데이터를 근거로 답해야 할 때, 파이프라인이 채워 둔 모델이 그 근거가 됩니다.
모든 에이전트가 이 경로를 거치지는 않습니다. 계산이나 외부 호출만 하는 도구로 구성한 에이전트, 문서를 근거로 답하는 에이전트에는 온톨로지가 필요하지 않습니다.
다이어그램을 불러오는 중입니다. Mermaid 원본:
flowchart LR
accTitle: 적재된 데이터를 조회하는 에이전트가 파이프라인과 온톨로지에서 만나는 구조
accDescr: 참여 기록 원본을 파이프라인이 읽어 온톨로지에 엔티티와 관계로 적재하고, 적재된 데이터를 조회해야 하는 질문은 에이전트와 시맨틱 레이어를 거쳐 같은 온톨로지에 도달하는 경우의 구조입니다.
dataset[참여 기록 원본] --> pipeline[파이프라인]
pipeline -->|적재| ontology[(온톨로지)]
user[사용자 질문] --> agent[에이전트]
agent --> semantic[시맨틱 레이어]
semantic -->|조회| ontology파이프라인이 참여 기록 원본을 온톨로지에 적재하고, 적재된 데이터를 물어야 하는 질문은 에이전트와 시맨틱 레이어를 거쳐 같은 온톨로지에 도달합니다.
이 경로를 쓰는 동안에는 양쪽을 따로 바꿀 수 있습니다. 원본이 다른 시스템으로 옮겨 가도 파이프라인만 고치면 되고, 질문하는 방식이 달라져도 에이전트 쪽만 조정합니다. 반대로 온톨로지가 흔들리면 양쪽이 함께 흔들립니다. 개념 모델을 먼저 정리하는 편이 나은 이유가 여기 있습니다.
자동화와 판단의 경계
반복되고 규칙이 분명한 일은 파이프라인으로 넘깁니다. 매일 같은 원본을 같은 방식으로 정리하는 작업에 사람의 판단이 들어갈 자리는 없습니다.
경계가 생기는 쪽은 결과가 남는 작업입니다. 무엇을 보낼지, 무엇을 바꿀지는 상황에 따라 답이 달라지고 되돌리기도 어렵습니다. 액터에 승인 단계를 두는 설계는 이 경계를 시스템 안에 명시하는 방법입니다. 자동화의 범위를 넓히는 일과 판단이 필요한 지점을 남겨 두는 일은 서로 반대가 아니라 함께 정해집니다.