Product Update·4 min read
생각의 흐름을 붙잡다: 생각 유사도 자동 추적과 4단계 기억강화 엔진
Habitus33는 메모를 임베딩 벡터로 변환해 최근 생각과의 유사도를 자동 추적하고, 왜·상황·연결·장면 4단계를 학습 신호로 사용해 기억 강화와 다음 생각 추천까지 제공합니다.
왜 이 기술이 필요한가
공부나 일 중에 떠오른 생각은 금방 사라집니다. “비슷한 생각을 했던 적이 있지?”를 떠올리는 데 시간이 걸리고, 연결 기회를 놓치기 쉽습니다. 우리는 “생각이 반복될 때 자동으로 잡아주고, 바로 확장할 수 있게” 만드는 것을 목표로 했습니다.
핵심 아이디어
생각(메모)을 의미의 벡터로 바꾸어 저장하고, 새 메모가 생기면 최근 메모들과의 코사인 유사도를 즉시 계산합니다. 유사도가 높은 메모는 “유사 메모”로 묶어 보여주고, 4단계 기억강화(왜·상황·연결·장면)를 채우면 더 정밀한 추적과 추천이 작동합니다.
1) 임베딩
- 벡터 + 그래프DB 하이브리드형 고차원 임베딩 구현
- 소스: 메모 본문 + 생각 추가 + 기억 강화 + 지식 연결
- 세그먼트별 가중치 적용
2) 저장 구조
- 메모에 aggregate 임베딩(대표 벡터)과 세그먼트 임베딩을 함께 저장
- 세그먼트에는 생성 시각을 함께 인코딩해 시간 흐름도 반영
3) 검색·유사도
- 벡터 검색
- 키워드 검색과 결합: 하이브리드 전략에 따른 가중치 가변화 자동 알고리즘
- 폴백: 임베딩이 비어 있을 때는 문자열 유사도 기반 베이스라인으로 안전하게 2차 전환
4) 분석 API
- 임베딩 코사인 유사도(폴백 포함)
- 시간대·요일 기반 반복 패턴 감지
- 최근 벡터 방향과 유사한 과거 전이에서 다음 태그 추천(KNN 기반 간단 버전)
기억강화 4단계(왜·상황·연결·장면)
- 왜(Importance): 남긴 이유를 적으면 의미가 고정됩니다.
- 상황(Context): 당시 맥락을 남기면 검색 힌트가 늘어납니다.
- 연결(Association): 기존 지식과의 링크가 생기며 재발견이 쉬워집니다.
- 장면(Image): 심상은 회상 트리거 역할을 합니다. 이 4단계는 그대로 임베딩 세그먼트가 되어 유사도 품질을 높입니다.
동작 흐름
- 메모 저장 → 배치/지연 임베딩 생성 → 대시보드/카드에서 유사 메모 자동 제시
- 4단계가 4/4 채워지면 “유사 메모 연결” 푸시 알림(간격·횟수 제어)로 확장을 유도
- 필요한 순간에만 API를 호출하고, 최근 n개 풀만 대상으로 검색해 응답 시간을 안정화
성능과 안정성
- 하이브리드 검색으로 의미 일치와 키워드 일치를 함께 확보
- 점수 정규화로 스케일 차이를 제거
- 벡터 검색 실패 시 키워드 단독, 반대도 가능
- 임베딩 일괄 생성에 배치·rate-limit 도입
- 목표: 200ms 내 응답(캐시·후보 축소·폴백으로 체감속도 관리)
보안과 프라이버시
- 인증 토큰 기반 사용자 스코프만 탐색(교차 사용자 검색 없음)
- 임베딩 입력은 길이 제한과 민감도 절단으로 방어
- 로그에는 최소 정보만 남기며 에러 상황만 상세 기록
사용자 경험
- 카드에서 바로 “유사 메모”를 확인하고 연결
- 반복되는 시간대에는 “이 시간대에 자주 떠오르는 생각”을 알려 습관 최적화
- 최근 방향과 유사한 과거 전이를 바탕으로 “다음에 이어질 주제” 제안
앞으로의 계획
쿼리 유형별 동적 가중치 조정 Reciprocal Rank Fusion(RRF) 등 고급 결합 기법 테스트