Skip to content

[Architecture][Enterprise Context] 회사 온톨로지·Knowledge Graph·권한 기반 Context Resolver 설계 #643

Description

@HyungminYoon1

배경

현재 Nodease의 Knowledge Base와 Knowledge Collection은 비정형 사내 문서를 권한 기반으로 검색하고 근거를 LLM에 제공하는 역할을 수행한다. Agent Builder의 Capability Catalog, Conversation Memory, Organization/Team 권한, Audit/Trace도 각각 별도의 계약을 가진다.

이 기반만으로 문서 질의응답은 가능하지만, 다음과 같은 회사 고유의 구조적 맥락을 일관되게 해석하기에는 한계가 있다.

  • 조직·팀·직무·프로젝트·시스템·정책 사이의 관계
  • 문서마다 다르게 표현되는 회사 용어·동의어·약어
  • 정책 간 우선순위와 적용 조건
  • 사실의 authoritative source, 유효 기간과 변경 이력
  • 특정 사용자·Workflow·LLM provider가 참고할 수 있는 회사 정보의 범위
  • 비정형 문서 근거와 HR·GitHub·CRM 등 구조화된 원본 시스템의 결합

향후 시스템 고도화 시 기존 KB를 대체하지 않고, 권한 기반 Enterprise Context Layer를 추가하는 방향을 검토한다. 이 이슈에서는 구현을 시작하지 않고 용어, 책임 경계, 데이터 소유권, 보안 불변조건과 단계적 도입 계획을 공식 문서로 확정한다.

목표

  • Knowledge Base, taxonomy, ontology, Knowledge Graph, Memory, Capability Catalog와 World Model의 책임을 구분한다.
  • 회사의 구조적 맥락을 LLM에 안전하게 제공하는 Enterprise Context Layer를 설계한다.
  • 모든 LLM에 전체 회사 데이터를 직접 노출하지 않고 실행 주체·목적·데이터 등급·provider capability를 반영하는 공통 Context Resolver 계약을 정의한다.
  • 문서 RAG와 Graph 기반 관계 탐색을 결합하는 hybrid retrieval의 권한·provenance·citation 경계를 확정한다.
  • 향후 구현 이슈를 안전하게 분리할 수 있는 단계별 migration gate와 평가 기준을 마련한다.

설계 범위

1. 용어와 bounded context

다음 개념의 authoritative 정의와 소유 도메인을 확정한다.

  • Knowledge Base와 Knowledge Collection
  • Organization taxonomy
  • Enterprise ontology
  • Knowledge Graph
  • Conversation/Task Memory
  • Node Capability Catalog
  • Enterprise Context Resolver
  • 동적 World Model

일반적인 AGI 의미의 전역 World Model과 회사 업무 맥락 모델을 구분한다.

2. Source of truth와 projection

  • HR, IAM, GitHub, CRM, 문서 source 등 authoritative system을 식별한다.
  • 원본 사실, 동기화 projection, 수동 관리 metadata와 AI 제안 assertion을 구분한다.
  • 원본 시스템의 모든 데이터를 Graph에 복제하지 않는 원칙을 정의한다.
  • source priority, conflict resolution, freshness, validity interval과 stale 상태를 설계한다.
  • 삭제·권한 회수·source disconnect 이후 relation과 projection의 lifecycle을 정의한다.

3. Ontology와 Graph 논리 모델

최소 논리 모델과 불변조건을 설계한다.

  • concept/entity type
  • entity와 stable external reference
  • relation type과 directed relation
  • taxonomy term, alias, abbreviation
  • assertion status: authoritative, verified projection, suggested, rejected, expired
  • provenance와 source reference
  • valid_from, valid_to, observed_at
  • confidence와 human approval
  • classification과 access policy reference
  • ontology/schema version

RDF/OWL, property graph 또는 관계형 projection 등 구체 저장 기술은 요구사항과 운영 복잡도를 비교한 뒤 결정하며, 기술 선택 자체를 목표로 삼지 않는다.

4. 권한과 보안 경계

Context Resolver는 최소한 다음 입력을 서버 검증된 값으로 사용한다.

  • execution subject
  • active organization
  • workflow/deployment/node
  • request purpose와 task context
  • resource permission
  • data classification
  • 선택된 model/provider의 execution·data-egress capability

다음 불변조건을 정의한다.

  • 권한 없는 entity/relation은 Graph 탐색 후보 생성 전에 제외한다.
  • Graph의 존재 여부, degree, relation count와 경로를 통한 간접 정보 노출을 제한한다.
  • 사용자 열람 권한과 외부 LLM provider 전송 허용은 별도 gate로 판정한다.
  • prompt injection이 Graph traversal 범위나 tool 권한을 확대할 수 없다.
  • secret, PII와 raw provider payload를 일반 trace/audit에 저장하지 않는다.
  • 권한·source·validity를 확인할 수 없으면 fail-closed한다.

5. Context Resolver port

공통 application port의 입력·출력·오류 계약을 설계한다.

입력 후보:

  • subject/context identity
  • organization scope
  • query/task intent
  • requested context domains
  • budget, timeout, token limit
  • model/provider capability

출력 후보:

  • 허용된 structured facts
  • 원문 evidence와 citation
  • global evidence rank
  • provenance와 ontology version
  • freshness/stale indicator
  • masked/omitted reason code
  • partial/no-evidence 상태

Gateway, Workflow Engine, Agent Builder와 Chatbot이 각각 독자적인 Graph/KB 조합 로직을 만들지 않도록 composition 경계를 정의한다.

6. Hybrid retrieval

  • entity linking과 용어 확장
  • 권한 안전 Graph traversal
  • KB/Vector/BM25 검색
  • structured fact와 document evidence 병합
  • final global ranking과 citation
  • relation만 존재하고 원문 근거가 없는 경우의 답변 정책
  • conflicting source와 stale fact 처리
  • no-evidence 및 all-denied 정책

Ontology는 검색 후보를 정교화하되, 최종 답변의 사실 근거는 authoritative source 또는 허용된 원문 evidence로 설명하도록 한다.

7. 쓰기·승인·lifecycle

  • LLM이 생성한 entity/relation을 authoritative fact로 직접 저장하지 않는다.
  • AI-derived assertion은 suggested 상태와 provenance를 보존한다.
  • 도메인 owner의 승인·거절·수정·만료 흐름을 설계한다.
  • schema evolution, ontology version, backward compatibility와 재색인 정책을 정의한다.
  • source 삭제, 사용자·팀 권한 회수와 relation projection 삭제 순서를 정한다.
  • 변경 작업의 audit와 rollback 기준을 정의한다.

8. LLM·Agent 통합 정책

  • 회사 전체 정보를 전역 system prompt에 삽입하지 않는다.
  • 허가된 LLM은 Context Resolver를 통해 요청별 최소 정보만 전달받는다.
  • provider별 보존·학습·region·data classification 정책을 반영한다.
  • Capability Catalog는 시스템의 실행 능력, Ontology는 회사의 개념·관계라는 경계를 유지한다.
  • Memory의 사용자·대화 상태와 Enterprise authoritative fact를 혼합 저장하지 않는다.

9. 단계적 도입과 평가

  1. 회사 용어집·조직·시스템·정책 taxonomy
  2. 최소 ontology와 provenance projection
  3. 권한 기반 Context Resolver
  4. Graph + Vector hybrid retrieval
  5. 검증된 업무에 한해 동적 상태 모델 확장

각 단계에 다음 검증 기준을 정의한다.

  • retrieval quality와 answer grounding
  • 권한 격리와 inference leakage
  • stale/conflict 처리
  • latency와 token/cost budget
  • provider 전송 정책
  • audit/redaction
  • rollback과 기능 비활성화

오픈소스·기술 대안 평가

설계 문서는 다음 후보를 역할별 reference implementation으로 비교한다. 특정 제품 채택을 전제로 하지 않으며, 동일 역할의 대안이 더 적합하면 비교표에 추가할 수 있다.

  • OpenSPG/KAG: domain ontology, logical reasoning과 multi-hop knowledge retrieval
  • Graphiti: temporal fact, provenance와 incremental context graph
  • Microsoft GraphRAG: 비정형 문서의 entity/relation 추출과 graph-assisted retrieval
  • DataHub/OpenMetadata: enterprise metadata catalog, ownership, lineage와 governance
  • TypeDB 및 RDF/OWL 계열: typed relation, formal ontology, constraint와 query model
  • OpenFGA/OPA: Knowledge Graph 자체가 아닌 relation/policy authorization 계층

최소 평가 기준은 다음과 같다.

  • self-hosted/on-premises 배포 가능성과 라이선스
  • 기존 Organization, Knowledge Permission Helper, source ACL과 relation-level authorization 연동성
  • temporal validity, conflict, stale fact와 source revocation 처리
  • provenance, citation과 authoritative source 역추적
  • incremental sync, schema/ontology versioning과 rollback
  • LLM·embedding provider 중립성과 structured output 의존성
  • 운영 복잡도, 추가 데이터 저장소, latency, indexing 비용과 장애 격리
  • raw data egress, telemetry, secret·PII·audit/redaction 경계
  • 기존 PostgreSQL/pgvector, Celery와 Authorized Retrieval Port를 유지한 단계적 도입 가능성

설계 결과는 각 후보에 대해 adopt, compose 또는 build 중 권장 방식을 선택하고 제외한 대안의 사유를 기록한다. Graph/ontology는 authoritative system을 대체하지 않는 권한 제한 projection/read model을 기본으로 하며, OpenFGA/OPA 같은 정책 엔진도 현재 Nodease의 resource permission과 source ACL을 자동 대체하지 않는다.

nodease/mbased#643에서는 비교와 선택 기준을 공식 문서로 확정한다. 제품 설치, Graph DB 도입과 feasibility PoC는 설계 결과에 따라 별도 구현 이슈로 분리한다.

문서 산출물

  • 필요 시 신규 Accepted ADR: Enterprise Context의 source of truth, authorization, model/provider 전달 경계
  • docs/features/enterprise-context/requirements.md
  • docs/features/enterprise-context/component_spec.md
  • 구현 API가 확정될 경우에만 api_spec.md
  • 검증 전략을 위한 test_cases.md
  • docs/architecture.md의 target architecture 연결
  • docs/data_model.md의 target-only logical model 연결
  • docs/glossary.md 용어 추가
  • 관련 Knowledge, Organization, Memory, Agent Builder 문서의 참조 정렬

주요 결정 항목

  • 정적 ontology와 동적 World Model의 경계
  • 원본 시스템과 Graph projection의 ownership
  • relation-level authorization과 inheritance
  • ontology schema versioning
  • AI-derived assertion 승인 정책
  • provider data-egress capability 표현
  • Graph 저장 기술의 선택 기준
  • Context Resolver의 failure/partial result 계약
  • structured fact와 document citation의 우선순위

Acceptance Criteria

  • 기존 KB를 대체하지 않고 보강하는 구조가 명확하다.
  • KB, ontology, Knowledge Graph, Memory, Capability Catalog와 World Model의 책임이 겹치지 않는다.
  • 모든 LLM에 대한 전역 데이터 공개가 아니라 요청별 최소 권한 context assembly가 계약으로 확정된다.
  • execution subject와 model/provider data capability의 이중 gate가 문서화된다.
  • ontology entity/relation에 provenance, validity, lifecycle과 access policy가 포함된다.
  • AI가 제안한 사실이 사람 승인 없이 authoritative 상태가 되지 않는다.
  • 권한 없는 Graph relation의 존재·경로·수량을 통한 간접 유출 방어가 정의된다.
  • hybrid retrieval의 candidate filtering, ranking, citation과 no-evidence 정책이 기존 Authorized Retrieval 경계와 충돌하지 않는다.
  • current 구현과 target architecture가 명시적으로 구분된다.
  • 단계별 구현·migration·평가 gate와 후속 이슈 분리 기준이 마련된다.
  • 공식 문서 권위 순서와 Accepted ADR에 충돌하지 않는다.
  • 오픈소스·기술 대안 비교표가 역할, 권한 연동, provenance, temporal 처리, 운영 비용과 라이선스를 포함한다.
  • 권장한 adopt/compose/build 방식과 제외한 후보의 사유가 기록된다.
  • 선택한 framework가 authoritative source, Nodease resource permission 또는 source ACL을 대체하지 않는다는 경계가 명시된다.

비목표

  • 이 이슈에서 Graph DB나 신규 서비스 구현
  • 이 이슈에서 특정 오픈소스 제품 설치, feasibility PoC 또는 production 채택
  • 모든 회사 데이터를 하나의 Graph로 복제
  • 모든 LLM에 회사 전체 context를 상시 제공
  • LLM 추론 결과를 자동으로 공식 사실로 승인
  • 기존 Knowledge/RAG, Memory 또는 Capability Catalog 대체
  • 범용 AGI World Model 구현
  • HR/CRM/IAM 원본 시스템의 책임을 Nodease로 이전

관련 이슈

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions