---
tags: [rb8001, chromadb, memory, embedding, troubleshooting]
---

# rb8001 메모리 ChromaDB 768/384 차원 드리프트

## 관련 문서
- [Company X 내부문서 RAG 근거응답 구현 및 시나리오 검증](../worklog/260312_companyx_내부문서_rag_근거응답_구현및시나리오검증.md)
- [Company X 내부문서 RAG 근거응답 현황 리서치](../research/260312_companyx_내부문서_rag_근거응답_현황_리서치.md)
- [ChromaDB 차원 불일치로 RAG 검색 실패](./251122_happybell80_chromadb_dimension_mismatch.md)

## 문제
- Company X RAG 근거응답 시나리오는 동작했지만, `rb8001` 사용자 메모리 컬렉션 저장/검색에서 여전히 차원 불일치 에러가 발생합니다.
- 실제 로그:
  - `Collection expecting embedding with dimension of 768, got 384`

## 관찰 사실
- 현재 런타임 임베딩은 `384d`입니다.
- `skill-rag-file` Company X 컬렉션은 `384d` 기준으로 재구성해 동작 확인했습니다.
- 반면 `rb8001_{user_uuid}_memory` 컬렉션은 과거 `768d` 상태가 남아 있어, 메모리 저장과 최근 대화 검색에서 에러가 반복됩니다.
- 이번 Company X 시나리오에서 `/api/test/router-message`, `/api/message`는 성공했지만, 같은 시점 로그에 메모리 컬렉션 에러가 함께 남았습니다.

## 영향
- Company X 근거응답 자체는 막지 않습니다.
- 하지만 사용자 메모리 저장/검색 품질은 저하됩니다.
- 운영 로그에 오류가 계속 쌓여 실제 다른 문제 탐지를 방해할 수 있습니다.

## 원인 가설
1. 과거 `768d` 메모리 컬렉션이 남아 있습니다.
2. 현재 `skill-embedding` 런타임은 `384d`를 반환합니다.
3. `rb8001` 메모리 매니저가 기존 컬렉션을 그대로 재사용하면서 조회/삽입 시 차원 충돌이 납니다.

## 이번 작업에서 확인한 범위
- `Company X` 전용 RAG 컬렉션: 동작 확인
- `rb8001` 메모리 컬렉션: 미정비
- 따라서 이번 이슈는 `Company X RAG 실패`가 아니라 `rb8001 memory layer drift`입니다.

## 다음 조치
1. `rb8001_{user_uuid}` 및 `rb8001_{user_uuid}_memory` 컬렉션 차원 현황 조사
2. 현행 `384d` 기준으로 재생성 또는 마이그레이션 전략 결정
3. 메모리 컬렉션 재구성 후 `/api/message` 저장/검색 로그 재검증
4. 로그에서 `dimension mismatch`가 사라졌는지 확인

## 상태
- 종결 (2026-03-19)
- **종결 근거**: 임베딩 1차 전환(Gemini Embedding 2, 768d) 완료로 차원 통일. rb8001 ChromaDB 컬렉션 0개(초기화됨), 로그에서 dimension mismatch 에러 0건 확인. 문제 자연 해소.
