
Hindsight 部署指南4 条路径选对一条10 分钟跑通智能体记忆服务【免费下载链接】hindsightHindsight: Agent Memory That Learns项目地址: https://gitcode.com/GitHub_Trending/hindsight2/hindsightHindsight 是一个让 AI 智能体具备长期记忆的系统核心操作是 retain写入、recall检索、reflect反思推理。部署它只需确定一件事数据跑在哪。本文覆盖 4 条安装路径——进程内嵌入、Docker 单容器、Compose 外挂数据库、Kubernetes Helm——并给出 SDK 接入、验证脚本和环境变量速查表。先做选型你的场景对应哪条路径四条路径的差别只在运行形态和数据库位置功能完全一致你的情况选这条路原因试玩 5 分钟验证 retain/recall 效果嵌入式hindsight-all不起服务、不装 DockerPython 里一个上下文管理器搞定本机开发调试要独立进程裸机 piphindsight-api一条命令起服务代码可调试生产单实例Docker 单容器 内置 pg0官方镜像自带嵌入式 PostgreSQL零外部依赖团队共享、数据要持久可控Compose 外挂 PostgreSQL或 Helm 上 K8s数据库与应用解耦备份、读写分离都有操作空间补充一条如果不想自己运维官方提供托管版 Hindsight Cloud客户端直接指向其 API 端点即可本文不再展开。最快上手嵌入式跑在 Python 进程里适合验证 API 是否可用、写原型脚本不需要独立服务进程内置嵌入式数据库随进程起停。pip install hindsight-all -U下面这段代码完成「起服务 → 写入一条记忆 → 检索 → 自动关闭」的完整闭环直接可跑import os from hindsight import HindsightServer, HindsightClient with HindsightServer( llm_provideropenai, llm_modelgpt-5-mini, llm_api_keyos.environ[OPENAI_API_KEY] ) as server: client HindsightClient(base_urlserver.url) client.retain(bank_idmy-bank, contentAlice works at Google) results client.recall(bank_idmy-bank, queryWhere does Alice work?) print(results)注意两点llm_provider支持 25 个以上提供商ollama、lmstudio、llamacpp可全本地运行不花 tokenIntelx86_64Mac 需改装hindsight-all-slim其余平台Linux x86_64/ARM64、Apple Silicon、Windows用hindsight-all即可退出with块后服务自动停止。Intel Mac 的完整差异说明见 安装文档。容器化运行Docker 单条命令起服务适合需要独立进程、且不想管理数据库的场景。官方镜像内置 pg0嵌入式 PostgreSQL数据落在一个持久化卷里。export OPENAI_API_KEYsk-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管理界面http://localhost:9999-v hindsight-data:/home/hindsight/.pg0这一行决定数据是否存活于容器重建——删容器前先决定要不要保留这个卷。外挂 PostgreSQL 的 Compose 方案生产环境建议把数据库拆出去。仓库已备好完整编排文件 docker/docker-compose/external-pg/docker-compose.yaml包含 pgvector 扩展的数据库服务和 Hindsight 应用服务export OPENAI_API_KEYsk-xxx export HINDSIGHT_DB_PASSWORDchoose-a-password cd docker/docker-compose docker compose up -d端口映射与上面相同8888/9999。Compose 文件里几个默认值可以按需改环境变量覆盖HINDSIGHT_DB_USER默认hindsight_userHINDSIGHT_DB_NAME默认hindsight_dbHINDSIGHT_DB_VERSION默认 PostgreSQL 18HINDSIGHT_VERSION应用镜像标签默认latest同目录下还有按需求拆好的变体timescale/时序场景、pg_search/、pgroonga/、vchord/不同向量索引策略、s3-file-storage/文件落对象存储。生产级配置数据库、对象存储与 K8s外部数据库与对象存储应用通过环境变量连接外部基础设施常用项如下# 数据库 HINDSIGHT_API_DATABASE_URLpostgresql://user:passdb-host:5432/hindsight_db # 文件存储切到 S3 兼容对象存储默认是 PostgreSQL BYTEA HINDSIGHT_API_FILE_STORAGE_TYPEs3 HINDSIGHT_API_FILE_STORAGE_S3_ENDPOINThttps://s3.amazonaws.com HINDSIGHT_API_FILE_STORAGE_S3_BUCKETyour-bucket HINDSIGHT_API_FILE_STORAGE_S3_ACCESS_KEY_IDxxx HINDSIGHT_API_FILE_STORAGE_S3_SECRET_ACCESS_KEYxxx # OpenTelemetry 追踪默认关闭 HINDSIGHT_API_OTEL_TRACES_ENABLEDtrueS3 的完整编排示例见 docker/docker-compose/s3-file-storage/。存储选型PostgreSQL pgvector、Oracle AI Database 23ai 等的完整说明在 storage 文档。KubernetesHelm 一条命令仓库内自带 Charthelm/hindsight/发布在 OCI 仓库一条命令完成部署helm install hindsight oci://ghcr.io/vectorize-io/charts/hindsight \ --set api.llm.provideropenai \ --set api.llm.apiKeysk-xxx \ --set postgresql.enabledtruevalues.yaml 里的关键项api.replicaCountAPI 副本数默认 1api.persistence.modelCache.enabled为本地 reranker/嵌入模型挂 PVC避免 Pod 重启后重新下载模型官方建议生产环境改为把模型打进自定义镜像worker.enabled/worker.replicaCount开启后任务由独立 worker Pod 处理端口 8889API 内置 worker 停用适合写入量大的场景existingSecret不新建 secret直接注入已有密钥监控仓库 monitoring/grafana/ 提供现成的 Grafana 仪表盘 JSON覆盖 LLM 调用、token 消耗与延迟指标口径见 monitoring 文档。客户端接入Python 与 Node.js 最小示例服务起来后用 SDK 操作三个核心动作retain存、recall取、reflect深推理回答。安装客户端pip install hindsight-client -U # Python npm install vectorize-io/hindsight-client # Node.js / TypeScriptPython 端三行各对应一个核心操作from hindsight_client import Hindsight client Hindsight(base_urlhttp://localhost:8888) # 存LLM 会从中抽取事实、实体、时间关系 client.retain(bank_idmy-bank, contentAlice works at Google as a software engineer) # 取语义、关键词、图谱、时间四路并行召回 client.recall(bank_idmy-bank, queryWhat does Alice do?) # 反思对记忆做深层分析适合给我讲讲 Alice这类开放问题 client.reflect(bank_idmy-bank, queryTell me about Alice)Node.js 端同样覆盖存与取const { HindsightClient } require(vectorize-io/hindsight-client); const main async () { const client new HindsightClient({ baseUrl: http://localhost:8888 }); await client.retain(my-bank, Alice loves hiking in Yosemite); const results await client.recall(my-bank, What does Alice like?); console.log(results); }; main();如果不想手写这三步LLM Wrapper 方式pip install hindsight-litellm可以把 OpenAI/Anthropic 客户端包一层每次调用自动先 recall 再 retain两行代码接入已有智能体。Go 客户端和 CLI 源码分别在 hindsight-clients/go/ 与 hindsight-cli/。部署验证健康检查加一条跑通脚本健康检查分三档K8s 探针也按这套划分# 存活检查不碰数据库Pod 进程活着就返回 200 curl -s http://localhost:8888/health/live # 就绪检查会真实查库数据库不通返回 503 curl -s http://localhost:8888/health # 管理界面 curl -s -o /dev/null -w %{http_code}\n http://localhost:9999/health/live与/health的分工是刻意的数据库慢只应把实例摘出流量readiness不该触发重启liveness。端到端验证——retain 写入、recall 能取回两条都过就算部署成功from hindsight_client import Hindsight client Hindsight(base_urlhttp://localhost:8888) op client.retain(bank_idsmoke-test, content部署冒烟测试Hindsight 服务运行正常) print(retain:, op) hits client.recall(bank_idsmoke-test, query部署冒烟测试) assert hits, recall 没有取回任何记忆 print(recall OK共, len(hits), 条)关键配置速查仓库根目录的 .env.example 是完整变量清单按用途分组如下完整注释以该文件为准模型相关HINDSIGHT_API_LLM_PROVIDER提供商如openai、anthropic、gemini、groq、ollama、lmstudio、llamacpp、litellmHINDSIGHT_API_LLM_API_KEYAPI 密钥HINDSIGHT_API_LLM_MODEL模型名HINDSIGHT_API_LLM_BASE_URLOpenAI 兼容端点地址接私有部署必配HINDSIGHT_API_LLM_REASONING_EFFORT推理强度none/low/medium/high/xhigh自托管推理模型可设none关思考块数据库HINDSIGHT_API_DATABASE_URLPostgreSQL 连接串Compose 方案中由编排文件注入Compose 侧HINDSIGHT_DB_PASSWORD、HINDSIGHT_DB_USER、HINDSIGHT_DB_NAME、HINDSIGHT_DB_VERSION文件存储HINDSIGHT_API_FILE_STORAGE_TYPEnative默认存 Postgres BYTEA/s3/ GCS / AzureHINDSIGHT_API_FILE_STORAGE_S3_ENDPOINT、_S3_BUCKET、_S3_ACCESS_KEY_ID、_S3_SECRET_ACCESS_KEY性能与可观测HINDSIGHT_API_WORKER_POLL_INTERVAL_MS、HINDSIGHT_API_WORKER_BATCH_SIZE、HINDSIGHT_API_WORKER_MAX_RETRIES独立 worker 的轮询与重试参数HINDSIGHT_API_OTEL_TRACES_ENABLEDOpenTelemetry 追踪开关默认falseHINDSIGHT_API_LOG_LEVEL日志级别开发用debug生产用info故障排查4 个高频问题/health返回 503 但/health/live正常检查方向数据库连接串、网络连通性、pgvector 扩展是否就位这是就绪检查在查库不是应用挂了。retain/recall 报 LLM 错误检查方向HINDSIGHT_API_LLM_API_KEY是否传入容器Compose 里漏配HINDSIGHT_API_LLM_API_KEY会直接拒绝启动自托管模型核对HINDSIGHT_API_LLM_BASE_URL开启HINDSIGHT_API_LLM_DEBUG_DUMP_4XXtrue可打印被 4xx 拒绝的完整请求。Docker 容器重启后数据丢了检查方向是否少了-v hindsight-data:/home/hindsight/.pg0这一行pg0 数据全在这个卷里。K8s 中 Pod 反复重启检查方向liveness 探针必须指向/health/live旧镜像只有/health会 404 触发重启循环readiness 才指向/health见 values.yaml 中的注释说明。worker 任务卡住或反复重排检查方向HINDSIGHT_API_WORKER_MAX_RETRIES与数据库连接数据库慢会拖住 worker 声明的任务先用docker logs/kubectl logs看任务轮询报错再定位。按场景各推一条路试玩验证pip install hindsight-all进程内跑完 retain/recall 闭环本机开发pip install hindsight-api后执行hindsight-api裸机起服务生产单实例Docker 单容器 内置 pg0加--restart unless-stopped团队共享生产Compose 外挂 PostgreSQL规模化后迁移到 Helm 独立 worker参考路径安装文档、配置文档、存储文档、部署配置目录、Helm Chart、环境变量模板。【免费下载链接】hindsightHindsight: Agent Memory That Learns项目地址: https://gitcode.com/GitHub_Trending/hindsight2/hindsight创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考