KNOWLEDGE OPERATIONS
How it’s built
v1.0 · 2026-10-27
Method
- 정적 HTML·CSS·JavaScript로 구성한다. 입력 변경 계산은 Web Worker에서 실행한다. 기본 입력의 표와 SVG는 같은 엔진으로 미리 계산해 HTML에 넣었다. 언어·테마·글자 크기를 바꿔도 계산 모델은 같다.
- 브라우저 모델 학습 없음. 준비 단계에서 TF-IDF→SVD를 적합했다. NumPy 2.3.5 · scikit-learn 1.8.0 · PyMuPDF 1.26.6 · KaTeX 0.16.11.
- 본문 초안 작성 보조: GPT-6. 실습 실행 중 LLM 호출 없음.
- 1 Incremental Updates — 변경을 켜고 청크 길이와 변경 번호를 바꾼다. 문서 변경 여부와 신규·재사용 청크 수가 어떻게 달라지는지 확인한다.
- 2 Access Control — viewer와 editor를 바꾸고 필터 적용 순서에 따른 결과 수를 비교한다. 무필터 노출 후보가 어떤 문서인지 확인한다.
- 3 Untrusted Documents — 직접 지시·정상 인용·우회 표현 시나리오를 바꾸며 탐지와 격리를 비교한다. 격리 스위치는 이 정한 규칙의 결과만 바꾼다.
- 4 Observability & Caching — 캐시 용량을 0·3·6 이상으로 바꾸고 요청 수를 늘린다. 원문 질의 대신 질의 ID만 로그에 남기는 방식도 함께 확인한다.
Data
- 사용자가 첨부한 2026-03-02 시행본 PDF 168쪽에서 712개 레코드를 만들었다. 검색은 조문과 별표·부칙 레코드 단위이며 청킹 탭은 분할 원리를 별도로 실험한다. TF-IDF 어휘 3,000개와 시드 42로 32차원 LSA를 만들었다. 계산 데이터 4.55 MB와 원본 PDF 2.80 MB를 공통 폴더에 둔다.
- 공개 법령 원문 + 작성한 관련성 라벨 12개 + 범위 밖 질의 2개. 문서 접근 등급·공격 문자열·질의 변형은 합성 입력이다.
- 입력은 앱 저장소에 보관하지 않는다. 상태 URL에는 실습 값이 포함되며 테마·글자 크기는 localStorage에 저장한다.
Validation
- 수식은 BM25·RRF·코사인·순위 지표의 정의와 독립 계산값을 대조한다. 시드 재현성·경계 입력·상태 직렬화·인용 추적·로컬 파일 연결은 소스 검증 스크립트로 확인한다. 공개 데이터에 붙인 관련성 라벨과 접근 등급은 작성자가 만든 설명용 예시다.
- 18개 계산·구조 검증 항목과 기본·최소·최대 입력 108개를 통과했다. BM25 수작업 예제, RRF 합산, 순위 지표, SHA-256 일치와 시드 재현을 포함한다.
Scope
- Knowledge Base 구축 기술을 다루며 OSH 안전 규정 해설은 별도 영역이다. 이 구현은 실제 LSA·BM25 계산을 사용한다. OCR, 신경망 임베딩, 생성형 답변, HNSW, 운영 인증 서버는 실행하지 않는다. RAG 탭은 근거 선택·컨텍스트 조립·인용·보류 기준을 다룬다.
- Incremental Updates: 조문 ID ≤300 characters, 로컬 변경 추가 0 / 1, 변경 번호 1–20 , 청크 길이 100–800
- Access Control: 검색 질의 · 한국어 원문 ≤300 characters, 검색 깊이 k 1–20 , 합성 역할 viewer / editor
- Untrusted Documents: 합성 문서 시나리오 clean / direct / benign / obfuscated, 탐지 시 격리 0 / 1
- Observability & Caching: LRU 용량 0–12 , 반복 요청 수 6–36 , 검색 깊이 k 1–20 , 검색 방법 bm25 / lsa / hybrid
Sources
- W3C · PROV-DM: The PROV Data Model (2013)
- W3C · Web Cryptography API (2017 Recommendation)
- OWASP · Authorization Cheat Sheet
- OWASP · LLM Prompt Injection Prevention Cheat Sheet
- 실습 코퍼스 · 첨부 PDF와 추출 레코드
- 법령 본문: 대한민국 저작권법 제7조의 보호받지 못하는 저작물. 첨부 시행본을 그대로 보존한다.
- NumPy · BSD-3-Clause; scikit-learn · BSD-3-Clause; PyMuPDF · AGPL-3.0 (preparation only); KaTeX · MIT (CDN)
History
- 2026-10-27 · v1.0 · 공개