Hindsight Memory
기억하는 것이 아니라 배우는 것을 목표로 삼은 기억 시스템
docker run -it -p 8888:8888 -p 9999:9999 -e HINDSIGHT_API_LLM_API_KEY=$OPENAI_API_KEY ghcr.io/vectorize-io/hindsight:latest에이전트가 시간이 갈수록 배우게 만드는 것을 목표로 삼은 기억 시스템입니다. 대부분의 기억 도구가 대화 이력을 다시 꺼내는 데 집중한다면 이쪽은 관찰을 쌓아 정신 모형과 지식 페이지를 만들고 그것을 다시 꺼내 쓰는 구조입니다. 남기기와 꺼내기, 되짚기 세 가지 동작으로 다루고 기억을 은행 단위로 나눠 관리합니다. 긴 기억 평가에서 가장 높은 점수를 보고했고 그 결과를 외부 연구 기관이 재현했다고 밝히고 있습니다. 도커로 서버를 띄우거나 파이썬에서 서버 없이 품어 씁니다. 스물다섯 곳이 넘는 모델 제공자와 로컬 실행을 지원합니다.
판단
이럴 때 씁니다
- 대화 회상만으로는 부족하고 축적된 판단이 필요할 때
- 긴 기간에 걸친 사용자 맥락을 유지해야 할 때
- 모델 제공자를 바꿔 가며 같은 기억을 써야 할 때
이럴 땐 쓰지 마세요
- 짧은 대화에는 구조가 과합니다
- 서버와 데이터베이스를 운영해야 합니다
- 벤치마크 수치는 특정 평가 기준의 결과입니다
차별점
- 회상이 아니라 학습을 목표로 삼아 관찰에서 정신 모형과 지식 페이지를 만듭니다.
- 남기기와 꺼내기, 되짚기 세 동작으로 다룹니다.
- 기억을 은행 단위로 나눠 용도별로 격리합니다.
- 스물다섯 곳이 넘는 제공자와 로컬 실행을 지원합니다.
워크플로
- 01도커로 서버를 띄우거나 파이썬에 품습니다.
- 02쓸 모델 제공자를 지정합니다.
- 03대화나 작업 결과를 남깁니다.
- 04필요할 때 꺼내 쓰고 되짚기로 정리합니다.
- 05용도별로 기억 은행을 나눕니다.
주요 명령
| 명령 | 설명 |
|---|---|
docker run -p 8888:8888 -p 9999:9999 ghcr.io/vectorize-io/hindsight:latest | 서버와 화면을 띄웁니다. |
HINDSIGHT_API_LLM_PROVIDER | 쓸 모델 제공자를 지정합니다. 로컬 실행과 게이트웨이도 지원합니다. |
함정
설치 전에 확인하세요
- 기본 실행은 컨테이너 안 데이터베이스를 씁니다. 운영에 쓰려면 외부 데이터베이스를 붙이는 구성으로 가야 합니다.
- 구독 계정을 키 없이 쓰는 경로가 있습니다. 편리하지만 각 서비스 약관 범위인지 확인해야 합니다.
- 공개한 벤치마크 성적은 특정 평가 기준의 값입니다. 일부는 외부 기관이 재현했다고 밝히고 있지만 내 작업 분포와는 다릅니다.
- 기억 종류와 동작 개념이 여럿입니다. 문서의 핵심 개념을 먼저 읽지 않으면 어디에 무엇이 쌓이는지 파악이 어렵습니다.
비교
기억 시스템은 대체로 검색으로 과거 대화를 찾아 줍니다. 이쪽은 그 위에 관찰을 정리해 모형으로 만드는 층을 두고, 그것이 검색 증강이나 지식 그래프 방식의 한계를 넘는다고 주장합니다. 근거로 공개 평가 성적을 내세우므로 내 작업에서 직접 재 보는 것이 확인 방법입니다.
최근 변경
테스트 픽스처가 병렬 실행 중 다른 작업의 데이터를 지우던 문제를 고쳤습니다. 문서 구성과 변경 기록도 함께 정리됐습니다.