plan: 2단계 ~1,800개 증분 인덱싱 계획 — 23·24 동시 진행, 200개 파일럿 → 500개 배치
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
c6a7f402b1
commit
0a0645c407
118
journey/plans/260323_다형식문서_RAG_2단계_1800개_증분인덱싱_계획.md
Normal file
118
journey/plans/260323_다형식문서_RAG_2단계_1800개_증분인덱싱_계획.md
Normal file
@ -0,0 +1,118 @@
|
||||
---
|
||||
type: plans
|
||||
tags: [plans, rag, companyx, indexing, incremental, stage2]
|
||||
status: open
|
||||
depends_on: 260320_로빙_다형식문서_RAG_적용1_계획.md
|
||||
closing_criteria: 증분 ~1,800개 인덱싱 완료 + 품질 게이트 3축 통과 + AGE 그래프 반영 + 문서 갱신
|
||||
---
|
||||
|
||||
# 260323 다형식문서 RAG 2단계 ~1,800개 증분 인덱싱 계획
|
||||
|
||||
## 목적
|
||||
|
||||
1단계(2,000개) 완료 후, NAS mtime 2025-11-30 이후 증분 ~1,800개를 인덱싱하여 검색 범위를 확장한다.
|
||||
|
||||
## 참조 문서
|
||||
|
||||
- [증분 인덱싱 워크플로우](../../workflow/03_rag/companyx_incremental_indexing_workflow.md)
|
||||
- [260320 적용1 계획 (닫힘)](./260320_로빙_다형식문서_RAG_적용1_계획.md)
|
||||
- NAS 협업 드래프트: `/mnt/nas/workspace/shared-editing/drafts/[24]_260323_2단계_최종종합.md`
|
||||
|
||||
## 실측 기반 수치 (260323)
|
||||
|
||||
| 항목 | 값 |
|
||||
|------|-----|
|
||||
| NAS mtime 2025-11-30 이후 | 5,038개 |
|
||||
| 사전 제외 (이미지/압축/임시/빈) | 771개 |
|
||||
| 기존 인덱싱 | 2,506건 |
|
||||
| **실제 증분** | **~1,761개** |
|
||||
| 현재 청크 | 19,996 |
|
||||
| AGE 노드 | 2,369 / 엣지 2,064,720 |
|
||||
|
||||
## 대상 리스트 관리
|
||||
|
||||
- 3분할 JSONL: 전체 후보 / 사전 제외 / 실행 대상
|
||||
- 포맷: `{"path": "...", "mtime": "...", "size": 0, "ext": ".pdf"}`
|
||||
- 위치: git 레포(`scripts/targets_stage2.jsonl`) + NAS 스냅샷
|
||||
- 생성 주체: 23 클로드 (DB diff + NAS 스캔)
|
||||
|
||||
## 실행 전략
|
||||
|
||||
### 23·24 서버 동시 진행
|
||||
|
||||
| 서버 | 역할 |
|
||||
|------|------|
|
||||
| **23서버** | 리스트 JSONL 생성, AGE 엣지 시간 측정, DB 모니터링, 문서 관리 |
|
||||
| **24서버** | 배치 스크립트 실행 (skill-rag-file 컨테이너), 품질 검증 |
|
||||
|
||||
### 배치 전략
|
||||
|
||||
```
|
||||
파일럿 200개 → 검증 → 500개 배치 × ~3회 → 나머지 → 완료
|
||||
```
|
||||
|
||||
- concurrency: 2
|
||||
- 배치 간 5초 sleep (WAL write 집중 방지)
|
||||
- 야간 실행 (APScheduler 충돌 없음 확인)
|
||||
|
||||
### 배치별 로그 (필수 기록)
|
||||
|
||||
- 소요 시간
|
||||
- 생성 문서 수 / 청크 수
|
||||
- 실패 수 + 원인 분류
|
||||
- AGE 엣지 생성 시간
|
||||
- DB CPU / 메모리
|
||||
|
||||
## 품질 게이트 3축
|
||||
|
||||
1. 기존 17개 질문 비회귀
|
||||
2. chunk_text 품질 (길이 0 또는 50자 미만 비율)
|
||||
3. 확장자별 실패율
|
||||
|
||||
## 실패 분류
|
||||
|
||||
| 유형 | 재시도 | 처리 |
|
||||
|------|--------|------|
|
||||
| 텍스트 추출 실패 | 1회 | 격리 |
|
||||
| 임베딩 API 실패 (429/5xx) | 3회 (지수 백오프) | 재시도 |
|
||||
| DB write 실패 | 1회 | 중단 + 조사 |
|
||||
| PPTX no_chunks | 0회 | 즉시 격리 |
|
||||
| OCR 깨짐 (chunk < 50자) | 0회 | 격리 + 파일명 보완 |
|
||||
|
||||
## 주의사항
|
||||
|
||||
- **AGE 엣지 200만개**: 1,800개 추가 시 엣지 수백만 추가 가능. 파일럿에서 반드시 측정
|
||||
- **1단계 실패 7건 전부 PPTX no_chunks**: 2단계에서도 반복 예상
|
||||
- **DB 증분 ~300MB**: 디스크(가용 140GB) 문제없음
|
||||
|
||||
## 담당 분배
|
||||
|
||||
| 작업 | 담당 | 서버 |
|
||||
|------|------|------|
|
||||
| 리스트 JSONL 3분할 생성 | 23 클로드 | 23 |
|
||||
| 200개 파일럿 실행 | 24 클로드 | 24 |
|
||||
| 파일럿 검증 | 24 코덱스 | 24 |
|
||||
| AGE 엣지 시간 측정 | 23 클로드 | 23 |
|
||||
| 500개 배치 실행 | 24 클로드 | 24 |
|
||||
| DB 모니터링 | 23 클로드 | 23 |
|
||||
| 문서 갱신 | 23 코덱스 | 23 |
|
||||
| 코드/로그 리뷰 | 23 Cursor | 23 |
|
||||
|
||||
## 실행 순서
|
||||
|
||||
```
|
||||
[23] 리스트 JSONL 생성 ──→ [24] 200개 파일럿 실행 ──→ [24] 검증
|
||||
[23] AGE 측정 (병렬) ──┘ ↓
|
||||
통과 → [24] 500개 배치 × ~3회
|
||||
[23] DB 모니터링 (병렬)
|
||||
↓
|
||||
[23] 문서 갱신 + [24] 최종 검증
|
||||
```
|
||||
|
||||
## 닫는 조건
|
||||
|
||||
- [ ] 증분 ~1,800개 인덱싱 완료 (실패 격리 포함)
|
||||
- [ ] 기존 17개 질문 비회귀
|
||||
- [ ] chunk_text 품질 게이트 통과
|
||||
- [ ] AGE 그래프 노드/엣지 반영
|
||||
- [ ] 워크플로우 문서 수치 갱신
|
||||
Loading…
x
Reference in New Issue
Block a user