准备工作:硬件、软件与账号

在开始前,请确认你的环境满足以下要求:

NAS 硬件:一台支持 Docker 的 x86 架构 NAS,建议内存 4GB 以上。Hindsight 容器运行时平均占用约 1GB 内存。

NAS 系统:确保 Docker 服务已开启并运行正常。

Hermes Agent:确保 Hermes 版本为 v0.7.0 或更高。可通过 hermes --version 命令确认。

大模型 API Key:Hindsight 需要一个外部大模型(如 DeepSeek, OpenAI, 硅基流动等)的 API Key 来提取记忆和理解语义。

第一步:在 NAS 上部署 Hindsight 服务

创建项目

创建项目,输入项目名称选择存储路径,将以下内容复制到compose中,并务必替换其中的 <> 占位符为你自己的信息。

version: "3.8"
services:
  hindsight:
    # 使用官方镜像,如果下载慢可考虑使用国内镜像源(比如南京大学镜像源ghcr.nju.edu.cn/vectorize-io/hindsight:latest)
    image: ghcr.io/vectorize-io/hindsight:latest
    container_name: hindsight
    restart: unless-stopped
    ports:
      - "8888:8888"  # API 端口,Hermes 将通过此端口通信
      - "9999:9999"  # WebUI 端口,可在浏览器中管理记忆
    environment:
      # --- 1. 配置用于提取记忆的大模型 (LLM) ---
      - HINDSIGHT_API_LLM_PROVIDER=openai # 或 siliconflow, deepseek 等
      - HINDSIGHT_API_LLM_BASE_URL=https://api.deepseek.com/v1 # 替换为你的 API 地址
      - HINDSIGHT_API_LLM_API_KEY=sk-xxxxxx # 替换为你的 API Key
      - HINDSIGHT_API_LLM_MODEL=deepseek-chat # 替换为你的模型名
      # 使用国内镜像(可选,当下载本地模型失败时可加上) 
      - HF_ENDPOINT=https://hf-mirror.com
      - HF_HUB_ENABLE_HF_TRANSFER=1   # 可选,加速下载
      
      # --- 2. (可选) 配置向量和重排序模型以优化中文检索
      # - HINDSIGHT_API_EMBEDDINGS_PROVIDER=litellm-sdk
      # - HINDSIGHT_API_EMBEDDINGS_LITELLM_SDK_API_KEY=your_siliconflow_key
      # - HINDSIGHT_API_EMBEDDINGS_LITELLM_SDK_MODEL=openai/BAAI/bge-large-zh-v1.5
      # - HINDSIGHT_API_RERANKER_PROVIDER=siliconflow
      # - HINDSIGHT_API_RERANKER_SILICONFLOW_API_KEY=your_siliconflow_key
      # - HINDSIGHT_API_RERANKER_SILICONFLOW_MODEL=BAAI/bge-reranker-v2-m3

      # --- 3. 启用 WebUI ---
      - HINDSIGHT_CONTROL_PLANE_ENABLED=true
    volumes:
      # 将数据持久化到NAS的 ./data 目录
      - ./data:/home/hindsight/.pg0
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8888/health"]
      interval: 30s
      timeout: 10s
      retries: 3

启动 Hindsight 容器
首次启动时会拉取约 6.2GB 的镜像,请耐心等待。

验证服务是否正常运行

执行以下命令,或者直接访问http://你的NAS_IP:8888/health可查看状态

curl http://你的NAS_IP:8888/health

在这里插入图片描述

你也可以通过浏览器访问 http://你的NAS_IP:9999 来查看 Hindsight 的 Web 管理界面。
在这里插入图片描述

第二步:配置 Hermes 连接 Hindsight

进入 Hermes 配置向导
在运行 Hermes 的终端中,执行以下命令:

hermes memory setup

选择记忆提供商 (Provider)
在出现的选项中,使用键盘方向键选择 hindsight - API key/local,然后回车确认。
在这里插入图片描述

选择部署模式
当提示 Select deployment mode 时,选择 local External。
在这里插入图片描述

输入连接信息

API 地址: 输入 http://你的NAS_IP:8888。

API Key: 因为是本地部署,留空即可。

Profile 名字: 使用默认的 hermes 或自定义。

完成配置
向导会自动完成配置并安装必要的依赖。完成后,你的 Hermes 就已成功连接到本地 Hindsight 服务了。

第三步:验证与使用

检查连接状态
运行以下命令,确认 Provider 显示为 Hindsight 且状态正常:

hermes memory status

在这里插入图片描述

测试记忆功能

开启一个新会话,告诉 Hermes 一些个人信息,比如:“我的名字是 [你的名字],我喜欢用 Python”。

结束当前会话。

开启一个全新的会话,直接问:“我的名字是什么?我喜欢用什么编程语言?”

如果 Hermes 能准确回答,说明 Hindsight 记忆系统已经成功生效。

⚠️ 避坑指南与注意事项

模型选择:Hindsight 用于提取记忆,而非日常对话。建议选择便宜、快速的模型(如 DeepSeek-V3、硅基流动的免费模型等),以降低长期使用成本。

模式区分:请务必选择 local 模式(对应 Docker 部署的 local_external)。不要选 Local Embedded,那是另一种直接在主机上跑的进程内模式。

API 兼容性:确保你配置的 HINDSIGHT_API_LLM_BASE_URL 和 MODEL 与你选择的 LLM 提供商完全匹配。

端口占用:确保 NAS 的 8888 和 9999 端口没有被其他服务占用。

数据持久化:docker-compose.yml 中的 volumes 配置将数据挂载到了本地的 ./data 目录,即使容器被删除,重新创建后数据依然存在。

按照以上步骤,你就能在 NAS 上拥有一个完全私有、永不离线的 AI 记忆“外挂大脑”了。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐