온톨로지
약칭·사내 용어를 데이터 조건으로 정의하고, KPI를 표준 산식으로 고정하며, 여러 단계에 걸친 관계 질의를 그래프 경로로 처리합니다. 관리자가 정의를 승인하면 채팅은 그 기준으로 답변합니다.
이 페이지 목차
관리자 화면 왼쪽 메뉴의 온톨로지 묶음(개요 · 편집 · 변경 이력 · 의미 뷰 · 데이터 그래프 · 질의 콘솔 · 채팅 활용 · 샘플 팩 · 저장소 설정)에서 관리합니다. 이 묶음은 저장소를 구성한 뒤에만 나타납니다.
먼저 알아 둘 것
온톨로지는 업무에서 쓰는 용어·지표·관계를 실제 데이터 값과 테이블·컬럼에 매핑한 업무 정의 체계입니다. 채팅 모델이 질문마다 해석하던 기준을 관리자가 정의해 두면, 이후 답변은 그 정의를 따릅니다.
온톨로지의 기본 구조는 업무 영역(라벨을 묶는 업무 범주), 라벨(고객·주문처럼 업무에서 다루는 대상의 종류), 노드(라벨에 속한 개체)와 그 관계이며, 각각 실제 테이블·컬럼에 매핑됩니다. 이 구조 위에 다음 세 가지를 정의합니다.
업무 용어
사용자가 쓰는 표현을 데이터 조건(컬럼과 값)으로 정의하고 동의어를 함께 관리합니다.
KPI
지표의 산식(분자·분모)을 의미 뷰로 고정해, 누가 조회해도 같은 값이 산출되게 합니다.
데이터 그래프
업무 데이터를 정점·엣지로 구성한 그래프로, 여러 테이블을 거치는 관계 질의를 경로 탐색으로 처리합니다.
설정하는 순서
1. 저장소를 구성합니다
온톨로지를 담는 저장소는 시스템에 하나이며, 처음 한 번만 구성하면 모든 데이터 소스가 함께 씁니다. 현재 상태는 관리자 대시보드의 온톨로지 카드에서 봅니다.
- 1상태 칩 저장소가 없으면 「준비 필요」와 함께 무엇이 빠졌는지 알려 줍니다.
- 2점검 항목·DBA SQL 보기 실패한 항목과 DB 담당자(DBA)가 실행할 SQL을 확인합니다.
- 3Neo4j 서버 연결 외부 Neo4j 서버를 저장소로 씁니다.
- 4다시 점검 DBA 가 조치한 뒤 누릅니다. 조건이 갖춰지면 「시스템 DB 에 온톨로지 저장소 구성」 버튼이 나옵니다.
저장소는 세 곳 중 하나에 만들며, 어느 것을 쓰든 이후 흐름은 같습니다. 구성이 끝나면 관리자 사이드바에 온톨로지 묶음이 생깁니다.
| 저장소로 쓸 곳 | 조건 | 구성하는 곳 |
|---|---|---|
| 시스템 DB | 시스템 DB 서버에 Apache AGE 1.7 이상 | 대시보드 온톨로지 카드의 시스템 DB 에 온톨로지 저장소 구성 |
| 업무 DB(데이터 소스) | Oracle 23ai, 또는 Apache AGE 1.7 이상이 설치된 PostgreSQL | 그 데이터 소스 상세의 온톨로지 저장소로 구성 |
| 외부 Neo4j 서버 | Neo4j 5.x | 대시보드 온톨로지 카드의 Neo4j 서버 연결 |
업무 데이터만 조회하는 데이터 소스에는 온톨로지 저장소로 구성을 누르지 않습니다. 반대로 저장소로 쓰는 데이터 소스에는 샘플 팩을 설치하지 않습니다. 편집 AI는 저장소 데이터 소스를 조회하지 않기 때문입니다.
2. AI 편집으로 초안을 만들고 적용합니다
관리자 > 온톨로지 > 편집의 AI 편집에 만들거나 고칠 내용을 문장으로 입력합니다. AI는 저장소를 바로 바꾸지 않고 오른쪽 초안 변경안에 작업을 쌓습니다. 작업 목록을 검토한 뒤 적용해야 저장소에 반영됩니다. 구조 → 업무 용어 → KPI → 데이터 그래프 순으로 단계적으로 구성합니다.
- 1보기 탭 라벨 맵·용어·KPI·테이블·컬럼·전체로 나눠 등록된 항목과 개수를 확인합니다.
- 2데이터 보기 · 구조 보기 · 업무 영역 라벨 맵의 표시 방식을 바꾸고, 업무 영역별로 좁혀 봅니다.
- 3AI 편집 입력창 만들거나 고칠 내용을 문장으로 입력합니다. 사용할 모델과 지난 대화는 입력창 위에서 고릅니다.
- 4속성 · 초안 변경안 속성 탭은 왼쪽에서 고른 항목의 정의·속성·연결을, 초안 변경안 탭은 AI 가 쌓은 작업 목록과 「적용 대기 작업 N개」를 보여 줍니다.
- 5버리기 · 적용 적용해야 저장소에 반영됩니다. 적용한 내역은 변경 이력에서 되돌릴 수 있습니다.
"○○ 데이터 소스의 테이블을 보고 라벨, 라벨 사이 관계(조인 키 포함), 테이블·컬럼 연결 초안을 만들어줘. 용어와 KPI는 아직 만들지 마."
이 조건이 없으면 AI가 값을 추정해 입력할 수 있습니다. 조건 값이 실제 데이터와 한 글자라도 다르면 채팅 조회 결과가 0건이 됩니다.
3. 용어와 KPI를 승인합니다
초안 상태의 용어·KPI는 채팅에 쓰이지 않습니다. AI 편집에 「업무 용어 ○개를 승인해줘」「KPI ○○를 승인해줘」라고 요청하고 적용하면 승인됩니다. 개요의 검토 대기 수가 줄어드는지 확인하며, 승인하지 않은 KPI는 의미 뷰를 게시할 수 없습니다.
4. 의미 뷰와 데이터 그래프를 게시합니다
정의만으로는 DB에 객체가 생성되지 않습니다. 게시하면 업무 DB에 의미 뷰가, 저장소에 데이터 그래프가 생성되어 채팅에서 사용됩니다. 의미 뷰는 관리자 > 온톨로지 > 의미 뷰에서 KPI 행의 게시를 누르거나, 게시할 것 모두 게시로 한 번에 게시합니다. 뷰는 KPI가 쓰는 컬럼의 데이터 소스에 만들어지므로, Oracle은 그 계정의 CREATE VIEW 권한, PostgreSQL은 해당 스키마의 CREATE 권한이 필요합니다.
| 의미 뷰 상태 | 뜻 |
|---|---|
| 게시됨 | 뷰가 업무 DB에 만들어져 있습니다. |
| KPI 변경됨 | 게시한 뒤 KPI 정의를 고쳤습니다. 다시 게시를 누릅니다. |
| 미게시 | 아직 게시하지 않았습니다. |
| 실패 | 게시에 실패했습니다. |
| 게시 불가 | KPI가 아직 승인되지 않았습니다. 승인한 뒤 게시합니다. |
데이터 그래프는 관리자 > 온톨로지 > 데이터 그래프에서 행의 게시를 눌러 만듭니다. Oracle 업무 DB는 그 DB 안에 SQL 프로퍼티 그래프로 만들어 데이터를 복사하지 않고(CREATE PROPERTY GRAPH 권한 필요), 그 밖의 DB는 온톨로지 저장소(Apache AGE 또는 Neo4j)에 복사본으로 적재합니다. 목록의 각 행은 아래처럼 보입니다.
- 1상태 게시가 끝나면 「게시됨」입니다. 정의나 주기를 바꾸면 「정의 변경됨」이 되어 다시 게시로 반영합니다.
- 2정점·엣지 수 게시 뒤 0이 아닌지 확인합니다.
- 3다시 적재 주기 저장소에 적재한 복사본은 원천 데이터 변경이 자동 반영되지 않으므로 주기를 정해 다시 적재합니다.
0 3 * * *는 매일 03:00입니다(서버 시간대 기준). - 4버튼 다시 적재는 즉시 원천 데이터로 그래프를 다시 생성합니다.
주기는 AI 편집에 「○○ 데이터 그래프를 매일 새벽 3시에 다시 적재하게 해줘」처럼 요청하고 적용한 뒤 다시 게시하면 반영됩니다. 증분은 바뀐 행만 반영하는 방식으로, 테이블마다 행이 바뀔 때마다 커지는 기준 컬럼(수정 시각 등)이 있어야 합니다. 원천에서 삭제된 행은 전체 다시 적재 시 정리되므로, 전체 적재 주기를 함께 설정합니다.
5. 사용자 채팅에서 확인합니다
승인·게시한 정의가 답변에 반영되는지 사용자 채팅에서 확인합니다. 관리자 > 온톨로지 > 채팅 활용의 KPI 미리 실행이 켜져 있으면, 채팅 답변 위 조회 칩에 「KPI」 배지가 붙은 것이 서버가 KPI 정의대로 먼저 조회한 결과입니다.
채팅 활용 설정
관리자 > 온톨로지 > 채팅 활용에서 승인한 업무 용어·KPI를 사용자 채팅에 어떻게 쓸지 정합니다. 이 설정은 웹 채팅에만 적용됩니다. 스킬 사전 라우팅은 데이터 소스가 여럿일 때 질문 속 승인 업무 용어가 매핑된 데이터 소스로 담당 Skill을 먼저 판단하는 기능입니다.
끔
Skill 분류기가 Skill 이름·설명만으로 담당 Skill을 고릅니다.
힌트
질문 속 승인 업무 용어가 어느 데이터 소스에 매핑돼 있는지 분류기에 근거로 제공합니다. 최종 선택은 분류기가 하며, 대화 중인 Skill이 그 용어의 데이터를 조회할 수 있으면 그 Skill로 계속 답변합니다.
자동
용어 이름이 그대로 일치하고 그 데이터를 담당하는 Skill이 하나뿐이면 선택 창 없이 해당 Skill로 연결합니다. 한 데이터 소스를 여러 Skill이 쓰면 Skill DB 도구의 스키마·테이블 범위를 나눠 둡니다. 근거가 약하면 분류기 판단을 따릅니다.
KPI 미리 실행을 켜 두면 KPI 값을 묻는 질문에 서버가 승인된 KPI 정의(분자·분모)로 의미 뷰를 먼저 조회하고, 모델은 그 결과를 설명합니다. 이때 답변 위 조회 칩에 「KPI」 배지가 붙습니다. 기준이 확실하지 않은 질문에는 미리 조회하지 않으며, 문제가 있으면 이 화면에서 바로 끌 수 있습니다.
그 밖의 메뉴
| 메뉴 | 하는 일 |
|---|---|
| 변경 이력 | 모든 변경이 변경안으로 남습니다. 상태는 제안 · 적용됨 · 거절 · 되돌림이며, 출처(AI 채팅·수동·되돌리기)·작업 수·작성자·시각이 함께 표시됩니다. 변경안을 고르면 오른쪽에서 내용을 확인하고 되돌리기를 누를 수 있습니다. 나중 변경이 같은 항목을 바꿨다면 그 변경부터 되돌립니다. |
| 질의 콘솔 | 온톨로지 그래프에 Cypher 질의를 직접 실행합니다. 읽기 전용이며 MATCH … RETURN 한 문장만 실행됩니다. 「용어 → KPI → 컬럼」, 「개념 사이 관계」, 「영역별 소속」, 「3단계 안에 닿는 개념」, 「종류별 노드 수」 예시 질의를 불러와 쓸 수 있습니다. |
| 샘플 팩 | 데모·POC용 예시 데이터를 고른 데이터 소스(Oracle·PostgreSQL)에 설치합니다. 테이블·데이터와 함께 온톨로지 초안과 데모 질문이 들어갑니다. 팩은 가전 매출·공급망, 병원(가상 환자·질병·약제), 법률 3종(근로·개인정보·중대재해), 연말정산(세법 조문·가상 직원 정산), 베이커리 프랜차이즈 다섯 가지이며, 카드마다 테이블 수·데모 질문 수와 설치 규모(빠른 데모·표준 등)가 표시됩니다. 베이커리 프랜차이즈를 설치하면 「베이커리 매출 분석 (샘플)」 Skill이 함께 만들어집니다. 설치 기록에서 제거하면 팩이 만든 테이블·온톨로지 노드·데모 질문·스타터 Skill을 함께 지우며, 이 제거도 변경 이력에 남습니다. |
| 저장소 설정 | 저장소 방식·스키마·메타 그래프·구성 시각·노드와 관계 수, 편집 AI와 의미 검색 임베딩에 쓰는 모델, 의미 검색 색인 상태를 확인합니다. 저장소 해제를 누르면 메뉴와 채팅 도구에서 온톨로지가 사라지지만, 저장소의 테이블·그래프는 지우지 않으므로 같은 데이터 소스로 다시 구성하면 이어서 씁니다. |
용어·KPI·개념·컬럼을 이름뿐 아니라 뜻으로도 찾게 하는 색인입니다. PostgreSQL 저장소에 pgvector 확장이 없으면 상태가 「쓸 수 없음」으로 표시되고 키워드 검색만 씁니다. DB 담당자가 CREATE EXTENSION vector;를 실행하면 의미 검색이 켜집니다.
자주 묻는 질문
메뉴에 온톨로지가 안 보여요
온톨로지 묶음은 저장소를 구성한 뒤에만 나타납니다. 관리자 대시보드의 온톨로지 카드에서 무엇이 빠졌는지 보고, 「준비 필요」라면 점검 항목·DBA SQL 보기의 SQL을 DB 담당자에게 요청한 뒤 다시 점검을 누릅니다. 업무 DB나 Neo4j를 쓰려면 저장소를 구성합니다의 표를 따릅니다.
용어를 만들었는데 채팅에 반영이 안 돼요
먼저 용어 탭에서 그 용어가 승인됐는지 봅니다. 초안 상태의 용어는 채팅에 쓰이지 않습니다. 승인했는데도 0건이면 조건 값이 데이터와 띄어쓰기까지 똑같은지 확인하고, 틀렸다면 「실제 값은 데이터를 조회해서 확인하고 다시 넣어줘」라고 요청합니다. 사용자가 다른 표현으로 묻는다면 그 표현을 동의어로 추가합니다.
그래프 숫자가 원본과 달라요
데이터 그래프는 게시 시점의 복사본이므로 원천 테이블 변경이 자동 반영되지 않습니다. 관리자 > 온톨로지 > 데이터 그래프에서 다시 적재를 누르고, 앞으로는 다시 적재 주기를 정해 둡니다. 상태가 「정의 변경됨」이면 다시 게시해야 반영됩니다.
KPI 배지가 안 붙어요
KPI가 승인됐는지, 관리자 > 온톨로지 > 의미 뷰에서 「게시됨」인지(「미게시」나 「KPI 변경됨」이면 게시 또는 다시 게시), 채팅 활용에서 KPI 미리 실행이 켜져 있는지를 차례로 봅니다. 모두 맞는데도 없으면 질문에 「최근」처럼 기준이 불분명한 말이 있는 것일 수 있으니 기간이나 대상을 구체적으로 적어 다시 질문합니다.
마지막 수정: