---
tags: [worklog, embedding, gemini, rag, robeing, 1차, deploy, verification]
---

# 260316 임베딩 1차 로빙 Gemini2 전환 배포 및 검증 완료

## 상위 원칙

- [0_VALUE 임베딩 정책](https://github.com/happybell80/0_VALUE/blob/main/02_Governance/embedding-policy.md)
- [임베딩 1차 로빙 Gemini 2 전환 문제 오픈](../troubleshooting/260316_임베딩_1차_로빙_Gemini2_전환_문제오픈.md)
- [임베딩 1차 로빙 Gemini 2 전환 계획](../plans/260316_임베딩_1차_로빙_Gemini2_전환_계획.md)

## 상태

- completed

## 이번 작업에서 확정한 것

- `workspace-config`를 임베딩/DB 환경변수 SSOT로 고정하고, `rb8001/.env`, `skill-rag-file/.env`의 중복 키를 제거했습니다.
- 24 서버에서 `skill-embedding`, `skill-rag-file`, `rb8001`를 다시 배포해 모두 `healthy` 상태로 올렸습니다.
- `skill-embedding` 자동배포 워크플로우는 24 SSH fail-fast, `workspace-config` 동기화, 원격 파일 복사 안정화 기준으로 보강했습니다.
- `rb8001` 자동배포 워크플로우는 24 git pull 가정 제거, `workspace-config` 동기화, 루트 데이터 디렉토리만 보존하도록 보강했습니다.

## 24 배포 후 확인

- `skill-embedding`: `healthy`
- `skill-rag-file`: `healthy`
- `rb8001`: `healthy`
- 24 `workspace-config/runtime.env`
  - `EMBEDDING_SERVICE_URL=http://localhost:8515`
  - `EMBEDDING_DIM=768`
  - `EMBEDDING_MODEL=gemini-embedding-2-preview`
- 24 `workspace-config/secrets.env`
  - `GEMINI_API_KEY` 존재
  - `DATABASE_URL=postgresql://robeings:robeings@192.168.0.100:5432/main_db`
  - `TEST_DATABASE_URL=postgresql://robeings:robeings@192.168.0.100:5432/test_db`
  - `METRICS_DATABASE_URL=postgresql://robeings:robeings@192.168.0.100:5432/robeing_metrics`

## 검증 결과

### 1. skill-embedding 직접 검증

- 텍스트 `/embed` 호출 → HTTP 200, `dimensions=768`, 벡터 길이 `768`
- PDF `/embed` 호출 → HTTP 200, `dimensions=768`
- 이미지(`/home/admin/robeing/verification_assets/verification_16x16.png`) `/embed` 호출 → HTTP 200, `dimensions=768`
- 운영 로그 근거:
  - `Model loaded successfully: gemini-embedding-2-preview`
  - `Embedding dimensions: 768`
  - `event=embedding_request status=success ... model=gemini-embedding-2-preview`

### 2. skill-rag-file Company X RAG 검증

- Team UUID: `79441171-3951-4870-beb8-916d07fe8be5` (`Company-X Team`)
- TXT 업로드 성공:
  - `companyx_test.txt`
  - `document_id=827066cb-e464-43e2-9f4b-c2c178e8e066`
  - `chunk_count=1`
- TXT 검색 성공:
  - 질문: `What is the official embedding gateway for Company X RAG verification?`
  - 결과 1건, `companyx_test.txt`, `relevance_score=0.8244`
- PDF 업로드 성공:
  - `verification_reportlab.pdf`
  - `document_id=22f433ea-875a-4416-a78e-5075b0e5b1a5`
  - `chunk_count=1`
- PDF 검색 성공:
  - 질문: `What does the PDF say about the embedding gateway and dimension?`
  - 결과 2건 중 1순위 `verification_reportlab.pdf`, `relevance_score=0.7513`
- 운영 로그 근거:
  - `event=embedding_request status=success count=1 model=gemini-embedding-2-preview dimensions=768`

### 3. skill-rag-file ChromaDB 768 확인

- 컬렉션: `skill_rag_file_79441171-3951-4870-beb8-916d07fe8be5_documents`
- 문서 수: `2`
- 임베딩 길이 집합: `[768]`
- 포함 파일:
  - `companyx_test.txt`
  - `verification_reportlab.pdf`

### 4. rb8001 메모리 경로 검증

- `POST /api/v1/memory/event` 성공
  - `event_id=fe115c2843d02de30a67e9d0a8fd0619`
- `GET /api/v1/memory/stats` 성공
  - Chroma collection: `rb8001_53529291-5050-4daa-89fb-008b546feb63_memory`
  - Neo4j `event_count=1`
- rb8001 메모리 컬렉션 직접 확인
  - 컬렉션 문서 수: `613`
  - 임베딩 길이 집합: `[768]`
  - `skill-embedding gateway 768 dimension verification` 질의 시 최상단 문서:
    - `Gemini 2 memory verification event. The official embedding gateway is skill-embedding and the dimension is 768.`
- 운영 로그 근거:
  - `임베딩 서비스 URL: http://localhost:8515/embed`

### 5. pgvector 768 확인

- `main_db.intent_prototypes.embedding`의 `atttypmod=768`

## 닫힘 조건 점검

1. skill-embedding Gemini 2, 768d 동작: 충족
2. rb8001·skill-rag-file 기존 `/embed` URL 참조: 충족
3. skill-rag-file 컬렉션·intent_prototypes 768 통일 확인: 충족
4. Company X RAG·rb8001 메모리 저장/검색 새 경로 동작: 충족
5. PDF·이미지 직접 임베딩 동작: 충족
6. 자동/수동 검증·운영 로그: 충족
7. 실제 배포 후 Gemini 2 단일 경로 유지: 충족
8. 닫힘 선언 문서화: 충족

## 결론

- 임베딩 1차 로빙 Gemini 2 전환은 24 서버 실배포와 검증까지 완료했습니다.
- 문제·리서치·계획 문서는 본 worklog를 근거로 닫을 수 있습니다.

## 관련 문서

- [임베딩 1차 로빙 Gemini 2 전환 문제 오픈](../troubleshooting/260316_임베딩_1차_로빙_Gemini2_전환_문제오픈.md)
- [임베딩 1차 로빙 현황 및 SSOT 리서치](../research/rag/260316_임베딩_1차_로빙_현황_SSOT_리서치.md)
- [임베딩 1차 로빙 Gemini 2 전환 계획](../plans/260316_임베딩_1차_로빙_Gemini2_전환_계획.md)
