DOCS/journey/troubleshooting/250803_ChromaDB_UUID_충돌_해결.md
Claude-51124 22557e7132 docs: 오래된 트러블슈팅 아카이브 및 구조 정리
- 7-8월 초기 구축 문서 12개를 _archive/troubleshooting/2025_07-08_initial_setup/로 이동
- book/300_architecture/390_human_in_the_loop_intent_learning.md를 journey/research/intent_classification/로 이동 (개발 여정 문서)
- 빈 폴더 제거 (journey/assets/*)
2025-11-17 14:06:05 +09:00

32 lines
1.1 KiB
Markdown

# ChromaDB UUID 충돌 문제 해결
## 문제 상황
사용자가 ChromaDB에서 UUID 충돌이 발생할 수 있다는 우려를 제기했습니다.
## 원인 분석
ChromaDB에서 각 로빙의 메모리를 저장할 때, 컬렉션 이름 생성 방식을 확인한 결과:
```python
# /home/heejae/rb10408_test/app/state/memory_manager.py
self.collection_name = f"robeing_{robeing_id}_memories"
```
각 로빙은 고유한 ID를 가지고 있어 (`rb10408`, `rb10508_micro` 등), 컬렉션 이름이 중복될 가능성이 없었습니다.
## 추가 확인 사항
메모리 ID 생성 로직:
```python
def generate_id(self, content: str, timestamp: str) -> str:
"""고유 ID 생성"""
unique_string = f"{self.robeing_id}_{content}_{timestamp}"
return hashlib.md5(unique_string.encode()).hexdigest()
```
로빙 ID, 콘텐츠, 타임스탬프를 조합하여 MD5 해시를 생성하므로 충돌 가능성이 극히 낮습니다.
## 결론
이미 적절한 UUID 충돌 방지 메커니즘이 구현되어 있어 추가 조치가 필요하지 않았습니다.
## 관련 파일
- `/home/heejae/rb10408_test/app/state/memory_manager.py`