Skip to main content
Output 노드는 정리하고 청크로 나누고 강화한 데이터가 마지막으로 놓이는 곳입니다. 종류는 Vector, Blob, Action, DB Upsert, Causal graph, Clause lineage 여섯 가지입니다. Output 노드가 하나도 없으면 실행 결과가 어디에도 남지 않으니, 정제라인마다 적어도 하나는 두세요.
백엔드, 컬렉션, 거리 척도를 정하는 Vector 노드 설정

Vector

청크를 임베딩과 함께 벡터 인덱스에 씁니다. 대부분 정제라인의 기본 목적지이고, Agent의 리트리벌이 여기서 검색합니다.
  • 백엔드 pgvector(기본값), Qdrant, Milvus, Weaviate
  • 컬렉션 / 테이블 기본 documents
  • 거리 척도 기본 코사인
상류에 Embed 노드를 두어 청크마다 벡터를 만들어 두어야 합니다.

Blob

원본 바이트를 그대로 보존합니다. Vector 옆에 나란히 두고, 검색은 벡터로 하되 인용할 때는 원본을 보여주는 구성에 씁니다.
  • Backend S3 / 호환 · GCS · Local disk 중에서 선택
  • Bucket / path 저장 위치
  • Encrypt at rest 저장 시 암호화

Action

레코드마다 외부 REST API에 HTTP POST/PUT을 보냅니다. 웹훅, Slack, 사내 시스템처럼 Nora 밖에서 결과를 받아 볼 곳이 있을 때 씁니다.
  • 엔드포인트 · 헤더 · 파라미터 Web / API 소스와 같은 방식이고 cURL에서 가져오기도 됩니다.

DB Upsert

레코드를 SQL 스크립트로 관계형 테이블에 씁니다. 인스펙터는 Source · Database / Enrich · DB Lookup 과 같은 DB 선택 + SQL 에디터 셸을 쓰고, DML 은 직접 씁니다. {paramName} 자리표시자에 레코드 최상위 키가 엔진에 맞는 순서로 바인딩됩니다.
  • DB 선택 설정 → 내부 리소스에 등록해 둔 SQL 데이터베이스를 고릅니다. DSN 을 정제라인 JSON 에 남기지 않습니다.
  • SQL INSERT … ON CONFLICT(Postgres) 또는 INSERT … ON DUPLICATE KEY UPDATE(MySQL·MariaDB) 같은 실제 upsert 문을 씁니다. 자리표시자 바인딩 덕분에 같은 실행을 다시 돌려도 중복 행이 생기지 않습니다.

Causal graph

청크를 워크스페이스의 인과 그래프에 붙이고, 문서 안에서 관측된 위계(예: 상위 규정을 하위 규정이 defers_to) 를 STAGED 상태의 제안 엣지로 올립니다. 그래프 편집기에서 사람이 확인하고 승인해야 라이브가 됩니다. 규정·약관처럼 문서 사이 관계 구조가 답변에 중요할 때 씁니다.

Clause lineage

이번에 처리한 문서의 조항을 이전 버전과 비교해 개정 이력을 제안합니다. 그대로 이어짐 · 개정 · 신설 · 삭제 네 갈래로 분류해 이 노드의 인스펙터의 Review 탭에 올리면, 사람이 확인하고 반영합니다. 보험 약관 개정판 관리에 씁니다. Clause lineage가 검토할 제안을 만들면 지식 목록의 새 파일 왼쪽에 제안 검수 (N) 버튼이 뜹니다. 검수 필터와 승인·거절 방법은 문서 정제의 검수 제안을 참고하세요.

목적지 나누기

Output 노드는 여럿 둘 수 있습니다. 이를테면 Vector와 Blob을 나란히 두어 검색용 인덱스와 인용용 원본을 함께 남깁니다. 조건에 따라 다른 목적지로 보내고 싶으면 상류 노드의 인스펙터에서 **고급 → 흐름 제어 → dispatch=routed**로 갈래를 나누세요.