6.0 KiB
6.0 KiB
tags
| tags | ||||||
|---|---|---|---|---|---|---|
|
임베딩 1차: 로빙 Gemini 2 전환 계획
작성일: 2026-03-16
상위 원칙
상태
- planned
선행 조건
workspace-config/runtime.env에EMBEDDING_SERVICE_URL,EMBEDDING_DIM,EMBEDDING_MODEL반영됨 (SSOT)- rb8001·skill-rag-file이
EMBEDDING_SERVICE_URL또는SKILL_EMBEDDING_URL로 skill-embedding 참조 robeing/tests/test_gemini_embedding_2.py존재, Gemini API 키 로컬 사용 가능
목표
- 로빙(skill-embedding, skill-rag-file, rb8001)을 Gemini Embedding 2, 768d로 전환한다.
- 멀티모달(이미지, PDF) 직접 임베딩을 지원한다.
- 1차 완료 시 해당 문제·리서치·플랜을 완전히 닫는다.
범위
포함
- 경로 결정: skill-embedding 교체 (ONNX→Gemini 2). 리서치 §7 경로 설계 결정 참조.
- skill-embedding 내부 Gemini 2 전환, /embed 엔드포인트 유지
- NAS RAG·Company X RAG PDF·이미지 임베딩 경로
- MRL 768d, ChromaDB/pgvector 스키마 호환
- 청킹: 1차는 기존 Micro 유지. 2단계에서 Macro(2,000~4,000) 검토. 리서치 §8 청킹 단계 참조.
제외
- rb8001 메모리 768/384 차원 드리프트 (별도 이슈)
- StarsAndI, TheGooseCouncil (2차 플랜)
env SSOT
- 원칙: 로빙 전역(rb8001, skill-embedding, skill-rag-file, skill-news, skill-slack 등 모든 스킬)은
workspace-config를 따르고, 임베딩 관련 값을 서비스별로 오버라이드하지 않는다. workspace-config/runtime.env:EMBEDDING_SERVICE_URL,EMBEDDING_DIM,EMBEDDING_MODEL(gemini-embedding-2-preview) — 0_VALUE embedding-policy
적용 순서
1. 품질·비용 테스트
- 대상:
robeing/tests/test_gemini_embedding_2.py확장 - 작업:
- 텍스트 768d 검증 (output_dimensionality=768)
- PDF·이미지 멀티모달 샘플 1건 each
- 1M 토큰 비용 $0.25 이하 확인
- Recall 기존 대비 유지 또는 개선 (선택: ko-sroberta 대비 샘플 비교)
- 완료 기준: 테스트 통과, 비용·Recall 기준 충족
2. skill-embedding 전환
- 대상: skill-embedding 레포 전체. 리서치 §3 영향 범위 참조.
- 작업:
- ONNX ko-sroberta → Gemini 2 API 호출로 교체
EMBEDDING_MODEL,EMBEDDING_DIMenv_file에서 workspace-config 로드- /embed 엔드포인트 요청/응답 형식 유지 (기존 클라이언트 호환)
- docker-compose env_file 경로:
workspace-config/runtime.env
- 완료 기준: 로컬
/embed호출 시 768d 벡터 반환
3. 스키마·청킹
- 대상: rb8001
migrate_chromadb_collections.py, ChromaDB 컬렉션, intent_prototypes pgvector - 작업:
- output_dimensionality=768로 ChromaDB 컬렉션 생성/마이그레이션
- intent_prototypes pgvector 768d 확인 (이미 768d면 스키마 변경 없음)
- 청킹: 기존 Micro(300~500 단어) 유지, 코드 변경 없음
- 완료 기준: ChromaDB·pgvector 768d 통일, migrate 스크립트 실행 가능
4. 적용 및 검증
- 대상: Company X RAG 또는 NAS RAG 1개 경로 우선
- 작업:
- skill-rag-file, rb8001이 기존
EMBEDDING_SERVICE_URL/SKILL_EMBEDDING_URL로 새 skill-embedding 호출 (URL 변경 없음) - RAG 업로드 → 임베딩 → 검색 파이프라인 1회 수동 검증
- DOCS
skills/companyx-rag/SKILL.md,330_*.md필요 시 갱신
- skill-rag-file, rb8001이 기존
- 완료 기준: Company X RAG 또는 NAS RAG 새 경로로 동작 확인
5. ivada-infra 배포 (서버 관리자)
- 대상: ivada-infra skill-embedding 배포, 23/24 서버
- 작업:
.env.deploy갱신, skill-embedding 이미지 재빌드·재배포 - 실행: 서버 관리자만 수행
6. worklog 작성 후 닫힘 선언
- worklog에 1~5 완료 기록, 문제 오픈 닫힘 조건 6개 충족 선언
롤백 절차
- skill-embedding: 이전 ONNX ko-sroberta 이미지/코드로 복귀
- workspace-config:
EMBEDDING_MODEL제거 또는 이전값 복원 - ChromaDB: migrate 전 백업 있으면 복원. 없으면 768d 신규 컬렉션만 삭제
검증 기준 (닫힘 조건)
문제 오픈 닫힘 조건 6개와 동일:
- skill-embedding이 Gemini 2, 768d로 동작한다.
- rb8001·skill-rag-file이 기존 /embed URL로 새 모델을 참조한다.
- ChromaDB·pgvector 스키마가 768d로 통일된다.
- Company X RAG, NAS RAG가 새 경로로 동작한다.
- PDF·이미지 직접 임베딩 Recall 유지 또는 개선, 1M 토큰 비용 $0.25 이하.
- worklog에서 닫힘 선언한다.
닫힘 선언
- worklog에서만 선언한다.
- 본 문서 상태를
completed로 갱신하고 worklog 링크를 추가한다. - 문제 오픈 닫힘 조건 6개 전부 충족 후 선언.