docs: add multimodal rag idea and phased plans

This commit is contained in:
happybell80 2026-03-20 13:00:00 +09:00
parent 8226affa9a
commit 13d3a0b42e
5 changed files with 260 additions and 0 deletions

View File

@ -0,0 +1,66 @@
tags: [robeing, idea, rag, multimodal, markdown, pgvector, postgres]
# 260320 다형식문서 자동지식화 RAG 파이프라인 아이디어
## 목적
- 로빙이 회사의 대량 파일 자산을 읽고, 정리하고, 검색하고, 답변 근거로 사용할 수 있는 자동 지식화 파이프라인의 큰 그림을 고정한다.
- 대상은 PDF, HWP, DOCX, XLSX, PPTX, JPG, PNG, 동영상 등 다형식 파일 전체다.
- 이 아이디어 문서는 세부 기술 결정을 모두 확정하는 문서가 아니라, `왜 이 흐름으로 가는가`를 한 장으로 묶는 용도다.
## 핵심 아이디어
- 원본 파일은 그대로 둔다.
- 각 원본 파일마다 대응하는 Markdown 파생본을 만든다.
- Markdown에는 front matter와 기본 설명, 요약, 처리 상태를 붙인다.
- PostgreSQL에서 JSONB, PGVector, 관계 테이블을 함께 써서 `메타 + 벡터 + 연결성`을 한 곳에서 관리한다.
- 파일이 생성·수정·삭제되면 같은 흐름으로 다시 정리한다.
## 왜 이 구조가 맞는가
- 원본 파일 형식이 너무 다양해서, 로빙이 매번 원본 포맷에 직접 의존하면 운영이 무너진다.
- Markdown은 사람과 LLM이 동시에 읽기 쉬운 공통 중간표현이다.
- front matter와 JSONB 메타는 검색, 필터링, OCR 선별, 동기화 판단에 모두 재사용된다.
- PGVector는 의미 검색을 맡고, PostgreSQL 관계 구조는 연결 탐색을 맡는다.
- 이 구조는 지금 로빙의 범위에서 과하지 않고, 나중에 더 크게 키워도 버티는 방향이다.
## 단계 구분
### 1차
- 원본 스캔
- 파일별 MD 생성
- front matter 최소 메타 생성
- 요약/설명 기본값 생성
### 2차
- PostgreSQL 적재
- JSONB 메타 관리
- 청크 분리
- PGVector 임베딩/검색 붙이기
### 3차
- OCR 선별 적용
- 문서 관계 확장
- 동기화 자동화
- 품질 측정 및 재처리 정책화
### 로빙 적용 1
- 로빙 질의 경로에 이 저장 계층을 실제 연결한다.
- 질문이 들어왔을 때 메타 필터 + 벡터 검색 + 관계 확장을 거쳐 근거 문서를 회수하는 최소 폐회로를 만든다.
## 이번 아이디어의 기준 문서
- [RAG 리서치 인덱스](../research/rag/README.md)
- [다형식 문서 RAG 자동수집·정규화 전략 리서치](../research/rag/260320_다형식문서_RAG_자동수집_정규화_전략_리서치.md)
- [PGVector·JSONB RAG 스키마 설계 리서치](../research/rag/260320_PGVector_JSONB_RAG_스키마_설계_리서치.md)
## 다음 단계
- [260320 다형식문서 RAG 1차 MD·메타 정규화 계획](../plans/260320_다형식문서_RAG_1차_MD_메타_정규화_계획.md)
- [260320 다형식문서 RAG 2차 PGVector·JSONB 적재 계획](../plans/260320_다형식문서_RAG_2차_PGVector_JSONB_적재_계획.md)
- [260320 다형식문서 RAG 3차 OCR·관계확장·동기화 계획](../plans/260320_다형식문서_RAG_3차_OCR_관계확장_동기화_계획.md)
- [260320 로빙 다형식문서 RAG 적용 1차 계획](../plans/260320_로빙_다형식문서_RAG_적용1_계획.md)

View File

@ -0,0 +1,52 @@
# 260320 다형식문서 RAG 1차 MD·메타 정규화 계획
## 목적
- 대량 원본 파일을 로빙이 읽을 수 있는 최소 공통 포맷으로 정규화한다.
- 1차 범위는 `원본 스캔 -> 파일별 MD 생성 -> front matter 최소 메타 생성`까지다.
- OCR, 임베딩, 그래프 확장은 이번 단계의 완료 조건이 아니다.
## 참조 문서
- [다형식문서 자동지식화 RAG 파이프라인 아이디어](../ideas/260320_다형식문서_자동지식화_RAG_파이프라인_아이디어.md)
- [다형식 문서 RAG 자동수집·정규화 전략 리서치](../research/rag/260320_다형식문서_RAG_자동수집_정규화_전략_리서치.md)
- [Markdown 중간표현 SSOT 설계 리서치](../research/rag/260320_MD_중간표현_SSOT_설계_리서치.md)
- [Front Matter 메타데이터 설계 리서치](../research/rag/260320_FrontMatter_메타데이터_설계_리서치.md)
## 범위
- 파일 타입 식별
- 원본 상대 경로 유지
- 파일 1개당 MD 1개 생성
- 최소 front matter 생성
- 기본 설명/요약 placeholder 생성
## 최소 front matter
- `title`
- `source_path`
- `md_path`
- `file_type`
- `modified_at`
- `status`
- `text_length`
- `summary`
## 산출물
- 원본 구조를 반영한 MD 파생본 디렉터리
- 최소 front matter가 붙은 MD 파일
- 처리 실패/스킵 목록
## 완료 조건
- 샘플 100~500개 파일에서 MD 생성 성공률을 확인한다.
- 주요 확장자별로 최소 한 번 이상 MD 생성이 검증된다.
- 원본 경로와 MD 경로의 1:1 대응이 보장된다.
## 보류
- OCR
- 임베딩
- LLM 기반 상세 요약
- 관계형/그래프 적재

View File

@ -0,0 +1,45 @@
# 260320 다형식문서 RAG 2차 PGVector·JSONB 적재 계획
## 목적
- 1차에서 생성한 MD와 메타를 PostgreSQL 중심 저장 구조로 적재한다.
- 2차 범위는 `document_files`, `document_chunks` 중심으로 문서와 청크를 저장하고, PGVector 검색을 붙이는 것이다.
## 참조 문서
- [PGVector·JSONB RAG 스키마 설계 리서치](../research/rag/260320_PGVector_JSONB_RAG_스키마_설계_리서치.md)
- [Front Matter 메타데이터 설계 리서치](../research/rag/260320_FrontMatter_메타데이터_설계_리서치.md)
## 범위
- MD 파생본 읽기
- front matter -> JSONB 적재
- 본문 청크 분리
- 청크별 임베딩 생성
- PGVector 인덱스 구성
- 키워드 검색용 TSVECTOR 구성
## 핵심 결정
- 문서 테이블과 청크 테이블은 분리한다.
- front matter는 JSONB로 적재한다.
- 의미 검색과 키워드 검색을 모두 지원한다.
- 아직 관계형 연결은 최소로 둔다.
## 산출물
- PostgreSQL 스키마
- 적재 배치 스크립트
- 샘플 질의 결과
## 완료 조건
- 샘플 문서셋에서 메타 필터 + 벡터 검색이 동작한다.
- source_path 기준 중복 적재 방지가 된다.
- 재적재 시 변경 문서만 갱신할 수 있다.
## 보류
- OCR 보강
- 관계 그래프 확장
- 로빙 런타임 직접 연결

View File

@ -0,0 +1,44 @@
# 260320 다형식문서 RAG 3차 OCR·관계확장·동기화 계획
## 목적
- 2차 저장 구조 위에 OCR 선별 적용, 문서 관계 확장, 생성·수정·삭제 동기화까지 붙인다.
- 이 단계부터 대량 운영에 필요한 자동화와 품질 개선 루프를 만든다.
## 참조 문서
- [OCR 선별 적용 정책 리서치](../research/rag/260320_OCR_선별적용_정책_리서치.md)
- [PostgreSQL 그래프확장 설계 리서치](../research/rag/260320_PostgreSQL_그래프확장_설계_리서치.md)
## 범위
- OCR 후보 선별
- OCR 결과를 기존 MD와 DB에 누적
- `document_relations` 생성
- 파일 변경 감지 및 재처리
- soft delete 반영
## 관계 생성 우선순위
1. front matter `related`
2. 같은 폴더/프로젝트
3. 공통 태그/키워드
4. 벡터 유사도 기반 보조 연결
## 동기화 원칙
- 새 파일: MD 생성 + DB insert
- 수정 파일: hash 비교 후 재생성/재임베딩
- 삭제 파일: `deleted` 상태 반영
## 산출물
- OCR 배치 정책
- 관계 생성 규칙
- 증분 동기화 배치 또는 감시 구조
## 완료 조건
- OCR이 필요한 파일만 선별 처리된다.
- 삭제된 파일이 DB와 MD 상태에 반영된다.
- 관련 문서 연결 탐색이 가능하다.

View File

@ -0,0 +1,53 @@
# 260320 로빙 다형식문서 RAG 적용 1차 계획
## 목적
- 앞선 1~3차 산출물을 로빙 실제 질의 응답 경로에 연결하는 첫 적용 단계를 정의한다.
- 목표는 "질문 -> 관련 문서 회수 -> 근거 기반 응답"의 최소 폐회로를 만드는 것이다.
## 참조 문서
- [다형식문서 자동지식화 RAG 파이프라인 아이디어](../ideas/260320_다형식문서_자동지식화_RAG_파이프라인_아이디어.md)
- [다형식문서 RAG 1차 MD·메타 정규화 계획](./260320_다형식문서_RAG_1차_MD_메타_정규화_계획.md)
- [다형식문서 RAG 2차 PGVector·JSONB 적재 계획](./260320_다형식문서_RAG_2차_PGVector_JSONB_적재_계획.md)
- [다형식문서 RAG 3차 OCR·관계확장·동기화 계획](./260320_다형식문서_RAG_3차_OCR_관계확장_동기화_계획.md)
## 적용 범위
- `rb8001`
- 필요시 `skill-rag-file`
- 문서 회수와 근거 응답에 필요한 최소 질의 경로
## 최소 동작 흐름
1. 사용자 질문 수신
2. 메타 필터 후보 결정
3. PGVector/키워드 검색
4. 관련 문서 확장
5. 근거 청크 선택
6. 로빙 응답 생성
7. 사용한 근거 기록
## 1차 목표
- 로빙이 "찾아보겠습니다" 수준이 아니라 실제 근거 문서를 제시하게 한다.
- 근거 문서명, 경로, 핵심 문단을 응답에 포함하게 한다.
- retrieval 실패와 generation 실패를 분리해 로그에 남긴다.
## 샘플 검증 질문
- 계약/MOU 근거 질문
- 특정 프로그램 운영 근거 질문
- 보고서 내 수치/표 근거 질문
## 완료 조건
- 대표 질문셋에서 근거 문서 회수가 실제로 일어난다.
- 근거 없는 경우와 검색 실패 경우를 구분해 응답한다.
- 응답 로그에 사용 문서와 청크가 남는다.
## 보류
- 완전 자동 자가개선
- 모든 파일 유형에 대한 완전 멀티모달 해석
- 대규모 그래프 탐색 기반 답변