<div align="center">
Hindsight Banner
문서화 • 통합(Integrations) • 사용 예시집(Cookbook) • 벤치마크(Benchmarks) • 논문(Paper) • Hindsight Cloud
Release
Version
PyPI Downloads
NPM Downloads
Slack Community
License: MIT
<br/>
<p align="center">
<a href="https://www.star-history.com/vectorize-io/hindsight"><img src="https://api.star-history.com/badge?repo=vectorize-io/hindsight&type=rank" alt="Star History Rank" /> <img src="https://api.star-history.com/badge?repo=vectorize-io/hindsight&type=trending" alt="GitHub Trending Repository of the Day" /></a>
</p>
</div>
Hindsight란 무엇인가?
Hindsight™는 시간이 지남에 따라 학습하는 더 스마트한 에이전트를 만들기 위해 구축된 에이전트 메모리 시스템입니다. 대부분의 에이전트 메모리 시스템은 대화 기록을 회상하는 데 중점을 둡니다. 하지만 Hindsight는 단순히 기억하는 것이 아니라 학습하는 에이전트를 만드는 데 초점을 맞추고 있습니다.
<video src="https://github.com/user-attachments/assets/923b798d-3581-4897-bb62-9cfa5a931682" controls></video>
이는 RAG나 지식 그래프(knowledge graph)와 같은 대안적인 기술의 단점을 제거하고 장기 메모리 작업에서 최첨단 성능을 제공합니다.
목차
Hindsight는 벤치마크 성능에 따르면 테스트된 에이전트 메모리 시스템 중 가장 정확합니다. 다양한 대화형 AI 시나리오 전반의 메모리 시스템 성능을 평가하는 데 광범위하게 사용되는 LongMemEval 벤치마크에서 최첨단(state-of-the-art) 성능을 달성했습니다. 2026년 1월 현재 Hindsight 및 기타 에이전트 메모리 솔루션의 보고된 성능은 여기에 나와 있습니다:
Overview
모델별 정확도(per-model accuracy), 지연 시간(latency), 비용(cost)을 포함하여 실시간으로 지속적으로 업데이트되는 결과는 benchmarks.hindsight.vectorize.io에서 게시됩니다.
Hindsight의 벤치마크 성능 데이터는 Virginia Tech의 Sanghani Center for Artificial Intelligence and Data Analytics 및 The Washington Post의 연구 협력자들에 의해 독립적으로 재현되었습니다. 다른 점수는 소프트웨어 공급업체들이 자체 보고한 것입니다.
Hindsight는 포춘 500(Fortune 500) 기업 및 증가하는 수의 AI 스타트업에서 프로덕션 환경에 사용되고 있습니다.
🤖 코딩 에이전트를 사용하시나요? 코딩하는 동안 문서에 즉시 접근할 수 있도록 Hindsight 문서를 위한 스킬을 설치하세요:
npx skills add https://github.com/vectorize-io/hindsight --skill hindsight-docs
Claude Code, Cursor 및 기타 AI 코딩 어시스턴트와 함께 작동합니다.
빠른 시작 (Quick Start)
1. 서버 시작하기
Docker (권장)
export OPENAI_API_KEY=sk-xxx
docker run -it --pull always --name hindsight --restart unless-stopped -p 8888:8888 -p 9999:9999 \
...
API: http://localhost:8888
UI: http://localhost:9999
Hindsight는 HINDSIGHT_API_LLM_PROVIDER를 통해 25개 이상의 LLM 제공업체와 작동합니다. 여기에는 호스팅된(openai, anthropic, gemini, groq, bedrock, vertexai, minimax, deepseek, atlas, meta 등), 완전히 로컬 환경에서 실행되는(ollama, lmstudio, llamacpp), 모든 OpenAI 호환 엔드포인트, 그리고 나머지 서비스에 연결하는 게이트웨이(litellm, litellmrouter)가 포함됩니다. 기존 구독도 작동합니다: openai-codex (ChatGPT Plus/Pro), claude-code (Claude Pro/Max), cursor (Cursor) 및 github-copilot (GitHub Copilot)은 API 키가 필요하지 않습니다. 지원되는 모델을 참조하세요.
Docker (외부 PostgreSQL)
export OPENAI_API_KEY=sk-xxx
export HINDSIGHT_DB_PASSWORD=choose-a-password
cd docker/docker-compose
...
엔터프라이즈 배포를 위해 Oracle AI Database도 완벽한 기능 동등성(full feature parity)을 갖추고 지원됩니다. 자세한 내용은 스토리지 문서를 참조하세요.
베어 메탈 (pip)
pip install hindsight-api
export HINDSIGHT_API_LLM_API_KEY=sk-xxx
...
Kubernetes (Helm)
helm install hindsight oci://ghcr.io/vectorize-io/charts/hindsight \
--set api.llm.provider=openai \
--set api.llm.apiKey=sk-xxx \
...
관리형 (서버 없음)
Hindsight Cloud는 호스팅 옵션입니다. 자동으로 확장되는 관리형 인프라와 대시보드, 백업, 팀 협업 기능, 그리고 99.9% 가동 시간 서비스 수준 계약(SLA)을 제공합니다. 청구는 사용량 기반이며 시작 시 무료 크레딧이 제공됩니다. 고정된 월별 또는 사용자당 비용은 없습니다. API 키를 사용하여 어떤 클라이언트든 https://api.hindsight.vectorize.io로 연결하여 배포 과정을 완전히 건너뛸 수 있습니다.
Self-hosted, Cloud 및 Enterprise 비교 → · 가입하기 →
Windows 및 에어 갭(air-gapped) 설정을 포함한 모든 옵션은 설치 가이드에 설명되어 있습니다.
2. 클라이언트 연결
pip install hindsight-client -U
npm install @vectorize-io/hindsight-client
go get github.com/vectorize-io/hindsight/hindsight-clients/go
...
Python
from hindsight_client import Hindsight
client = Hindsight(base_url="http://localhost:8888")
...
Node.js / TypeScript
const { HindsightClient } = require('@vectorize-io/hindsight-client');
const main = async () => {
...
전체 참고 자료: Python · Node.js · Go · CLI · REST API
지원 플랫폼
| Platform | Docker | Bare Metal (pip) | Embedded DB (pg0) |
|---|
| Linux (x86_64, ARM64) | ✅ | ✅ | ✅ |
| ... | | | |
⚠️ Intel Mac의 경우: hindsight-all-slim을 사용하세요. 자세한 내용은 설치 가이드를 참조하십시오. | | | |
Python 임베디드(서버 불필요)
pip install hindsight-all -U
Intel (x86_64) Mac에서는 대신 hindsight-all-slim을 설치하세요. 지원 플랫폼 참조.
import os
from hindsight import HindsightServer, HindsightClient
...
또한 Node.js 버전과 데몬 CLI도 사용할 수 있습니다.
에이전트에 Hindsight 추가하기
LLM 래퍼 (코드 2줄)
기존 에이전트에 메모리를 추가하는 가장 쉬운 방법은 LLM 래퍼(LLM Wrapper)입니다. LLM 클라이언트를 래핑된 클라이언트로 교체하기만 하면 됩니다. 그러면 다른 코드 변경 없이도 모든 호출마다 메모리가 자동으로 저장되고 검색됩니다.
pip install hindsight-litellm
from openai import OpenAI
from hindsight_litellm import wrap_openai
...
wrap_anthropic()은 Anthropic SDK에 대해서도 동일하게 작동하며, 뱅크(bank), 리콜 예산(recall budget), 사실 유형(fact types), 리콜 대신 반영(reflect instead of recall) 등 모든 설정은 hindsight_* 키워드 인자(kwargs)를 사용하여 호출별로 재정의할 수 있습니다. LiteLLM이 기반으로 작동하기 때문에, 동일한 통합 기능으로 100개 이상의 모델을 지원합니다. LiteLLM 통합을 참조하세요.
메모리가 저장되고 검색되는 시점에 대한 명시적인 제어가 필요하다면, 대신 SDK 또는 REST API를 직접 사용하세요.
통합 기능 (Integrations)
60개 이상의 통합 기능 — 대부분 코드를 변경할 필요가 없습니다.
코딩 에이전트 (Coding Agents)
하나의 패키지가 CLI 코딩 에이전트에게 장기 프로젝트 메모리 기능을 제공합니다. 이 메모리는 git 히스토리와 이전 세션으로부터 자동으로 구축되는 리포지토리별 데이터베이스(per-repo bank)이며, 에이전트가 작업을 시작할 때 주입됩니다. 또한 아키텍처, 컨벤션, 진행 중인 작업 등을 다루는 큐레이션된 지식 페이지도 제공합니다.
npx @vectorize-io/hindsight-coding-agents install all
npx @vectorize-io/hindsight-coding-agents install claude-code
Claude Code, Codex CLI, Cursor CLI, GitHub Copilot CLI, opencode, Kilo CLI, Cline CLI, Antigravity CLI, Devin CLI, pi, Prime Agent, Grok Build, DeepSeek Harness를 지원합니다. 데이터 수집(Ingestion)은 자동이며 설정 명령이 필요 없습니다. 코딩 에이전트 통합 기능을 참조하세요.
MCP 서버 (MCP Server)
모든 서버는 기본적으로 활성화된, 은행(bank)별로 하나의 내장 Model Context Protocol 엔드포인트를 제공합니다:
모든 MCP 클라이언트를 여기에 연결하여 retain, recall, reflect를 도구로 노출할 수 있습니다. MCP 서버 문서를 참조하십시오.
핵심 개념
Overview
메모리 유형 (Memory Types)
대부분의 에이전트 메모리 구현은 기본적인 벡터 검색에 의존하거나 때로는 지식 그래프(knowledge graph)를 사용합니다. Hindsight는 인간의 기억 방식과 더 유사하게 에이전트 메모리를 구성하기 위해 생체모방 데이터 구조(biomimetic data structures)를 사용합니다:
- 월드 팩트 (World facts): 세상에 대한 사실들("스토브가 뜨거워진다")
- 경험 (Experiences): 에이전트 자신의 경험("내가 스토브에 손을 대자 정말 아팠다")
- 관찰 (Observations): 많은 메모리로부터 형성된, 통합되고 증거 기반의 믿음들
- 정신 모델 (Mental models): 관찰과 사실로부터 합성된 에이전트 세계에 대한 학습된 이해
메모리는 **뱅크(banks)**에 존재합니다. 메모리가 추가되면, 월드 팩트(world facts) 또는 경험(experiences) 경로 중 하나로 전송된 다음, 나중에 검색하는 데 도움을 주기 위해 엔티티, 관계, 시계열의 조합으로 희소/밀집 벡터 표현(sparse/dense vector representations) 형태로 표현됩니다.
세 가지 연산 (The Three Operations)
retain
retain 연산은 새로운 메모리를 Hindsight로 전송하는 데 사용됩니다. 이 연산은 Hindsight에게 입력으로 전달된 정보를 _보존(retain)_하도록 지시합니다.