Hindsight
一句话简介
一个面向代理系统的长记忆与经验存储库,提供智能检索与反思能力,帮助AI代理跨任务积累并复用知识。
标签
适用应用场景
- 为对话代理构建跨会话长期记忆
- 在多步骤任务中进行经验检索与反思
- 将历史交互向量化以支持语义查询
- 为智能体框架提供即插即用的记忆后端
README 中文摘要
项目概述
Hindsight 是一个面向智能体(Agent)的记忆系统,目标是让 Agent 能够随着时间推移持续学习,而不仅仅是对话历史的回放。它针对 RAG 与知识图谱方案的不足进行了优化,在长期记忆任务上达到了业界领先水平。该系统已被多家财富 500 强企业与 AI 初创公司用于生产环境,其基准测试结果由弗吉尼亚理工大学 Sanghani 中心独立复现。
快速开始
启动服务端
推荐使用 Docker 方式启动:
export OPENAI_API_KEY=sk-xxx
docker run -it --pull always --name hindsight --restart unless-stopped \
-p 8888:8888 -p 9999:9999 \
-e HINDSIGHT_API_LLM_API_KEY=$OPENAI_API_KEY \
-v hindsight-data:/home/hindsight/.pg0 \
ghcr.io/vectorize-io/hindsight:latest
# API: http://localhost:8888
# UI: http://localhost:9999
可通过环境变量 HINDSIGHT_API_LLM_PROVIDER 切换 25 种以上的大模型供应商,包括 OpenAI、Anthropic、Gemini、Bedrock、Vertex AI、DeepSeek、Ollama、LMStudio 等,也支持 ChatGPT Plus/Pro、Claude Pro/Max、Cursor、GitHub Copilot 等订阅渠道。其他部署方式包括 Docker Compose(外置 PostgreSQL)、pip install hindsight-api(裸机)、Helm Chart(Kubernetes),或直接使用免运维的 Hindsight Cloud。
连接客户端
pip install hindsight-client -U
npm install @vectorize-io/hindsight-client
go get github.com/vectorize-io/hindsight/hindsight-clients/go
curl -fsSL https://hindsight.vectorize.io/get-cli | bash
Python 用法示例:
from hindsight_client import Hindsight
client = Hindsight(base_url="http://localhost:8888")
# retain:写入记忆
client.retain(bank_id="my-bank", content="Alice works at Google as a software engineer")
# recall:检索记忆
client.recall(bank_id="my-bank", query="What does Alice do?")
# reflect:结合记忆生成有立场的回答
client.reflect(bank_id="my-bank", query="Tell me about Alice")
系统还提供无需启动独立服务的嵌入式模式:pip install hindsight-all,通过 HindsightServer 上下文管理器在进程内启动,并自动连接 HindsightClient。
接入现有 Agent
LLM 包装器(两行代码)
只需将现有 LLM 客户端替换为包装版本,记忆的存储与检索会在每次调用时自动完成:
from openai import OpenAI
from hindsight_litellm import wrap_openai
client = wrap_openai(
OpenAI(),
bank_id="user-123",
hindsight_api_url="http://localhost:8888",
)
response = client.chat.completions.create(
model="gpt-5-mini",
messages=[{"role": "user", "content": "What do you know about me?"}],
)
wrap_anthropic() 用于 Anthropic SDK。底层基于 LiteLLM,覆盖 100 多种模型。
集成与 MCP
系统提供 60 多种集成方案,涵盖 Claude Code、Codex、Cursor、Copilot 等编程 Agent,以及 LangGraph、LlamaIndex、CrewAI、Pydantic AI、OpenAI Agents SDK 等 Agent 框架,还支持 n8n、Zapier、Dify 等无代码工具。每个服务端都内置 MCP 端点:http://localhost:8888/mcp/{bank_id}/,可直接将 retain、recall、reflect 暴露为工具。
核心概念
记忆类型
Hindsight 采用仿生数据结构组织记忆:
- World facts:关于世界的事实("炉子会烫手")
- Experiences:Agent 自身的经历("我摸了炉子,很疼")
- Observations:由多条记忆汇聚形成的、有证据支撑的稳定观点
- Mental models:从观察与事实中提炼出的对世界的理解
所有记忆都存放在 Bank(记忆库)中,每个 Bank 之间严格隔离,并带有 disposition traits(怀疑倾向、字面理解、共情度)等背景配置,影响 reflect 阶段的推理风格。系统还支持多语言端到端保留(中文姓名不会被翻译为拼音),并提供 Memory Defense 功能,可对 45 种敏感模式(密钥、PII)进行打码或拦截。
三个核心操作
- retain:写入记忆。内部会调用 LLM 抽取事实、时间信息、实体与关系,并归一化为标准实体、时序与索引。
- recall:检索记忆。并行执行四种检索策略——语义向量、BM25 关键词、实体/时序/因果图谱、时间范围过滤——然后使用倒数排名融合与 Cross-encoder 重排序得到最终结果。
- reflect:对已有记忆做深度分析,回答需要推理而不仅是检索的问题,例如项目风险评估、销售邮件复盘、文档盲点发现。
观察、心智模型与知识页
被 retain 的事实会在后台被合并为 observation——带有原始证据引用和 proof count 的去重观点,新证据会增强、削弱或扩展现有观点而非直接覆盖。Mental model 是针对某个固定问题的常驻答案,可在启动时直接读取,无需检索或 LLM 调用。Knowledge page 是 wiki 形式组织的活文档,可投射为磁盘上的 Markdown 文件。
运行场景与生产部署
Hindsight 适用于需要长期学习、用户个性化、跨会话记忆的对话与自主 Agent,典型用例包括个性化聊天机器人、AI 项目经理、销售 Agent、客服 Agent 等。
生产环境支持 PostgreSQL + pgvector 或 Oracle AI Database 23ai 作为存储后端,配置体系分全局环境变量、租户级、Bank 级三层,支持 Prometheus 监控指标、Admin CLI、Webhook 事件以及租户、认证、存储扩展点,也可直接使用托管版 Hindsight Cloud。
摘要更新于 2026-09-30 00:30:42
· 原文 24805 字符
· md5 9459849cc890…