前言

上一篇文章介绍了Hermes Agent的安装和基础配置。安装完成后,Hermes默认使用内置的记忆系统,但内置记忆有字符限制(约4400字符),随着使用时间增长,记忆会逐渐被填满。

本文将介绍如何给Hermes Agent配置sqlite-vector记忆模型,实现基于向量语义搜索的持久化知识库,让AI真正成为你的”第二大脑”。

为什么需要记忆模型?

Hermes Agent的核心优势之一是跨会话记忆。它能记住:

  • 你的偏好和习惯
  • 项目的技术栈和约定
  • 之前踩过的坑和解决方案
  • 常用的命令和工作流

但默认的内置记忆有容量限制。通过配置sqlite-vector记忆模型,可以:

  • 突破字符限制:存储更多知识
  • 语义搜索:用自然语言查询,不需要精确匹配
  • 分类管理:按类别组织知识(面试、安全、项目等)
  • 持久化存储:数据保存在本地SQLite数据库中

什么是sqlite-vector?

sqlite-vector是一个SQLite扩展,为SQLite数据库添加了向量存储和搜索能力。结合embedding模型,可以实现:

  • 将文本转换为向量(embedding)
  • 在向量空间中进行语义相似度搜索
  • 本地存储,无需外部数据库服务

Hermes Agent通过sqlite-vector插件,将这个能力集成到了记忆系统中。

安装步骤

1. 安装sqlite-vector扩展

# 安装sqlite-memory(包含sqlite-vector扩展)
pip install sqlite-memory

# 验证安装
python3 -c "import sqlite_memory; print('OK')"

2. 创建记忆数据库目录

mkdir -p /opt/sqlite-memory

3. 配置Hermes Agent

编辑Hermes配置文件:

hermes config edit

config.yaml中添加或修改以下配置:

# 记忆模型配置
memory:
  provider: sqlite-vector
  sqlite-vector:
    db_path: /opt/sqlite-memory/memory.db
    api_key: "你的vectors.space API Key"

4. 获取embedding API Key

sqlite-vector需要一个embedding模型将文本转换为向量。推荐使用vectors.space提供的云端API:

  1. 访问 https://vectors.space 注册账号
  2. 获取API Key
  3. 填入配置文件中

5. 重启Hermes

配置完成后需要重启Hermes才能生效:

# 如果是CLI模式,退出重新进入
/quit
hermes

# 如果是Gateway模式
hermes gateway restart

使用方法

存储知识

hermes chat -q "记住:项目使用pytest测试框架,测试命令是 pytest -n 4"

Hermes会自动将这条信息存储到sqlite-vector数据库中。

搜索知识

hermes chat -q "我们项目的测试框架是什么?"

Hermes会通过语义搜索找到相关记忆并回答。

管理知识库

sqlite-vector插件提供了knowledge_base工具,支持以下操作:

  • add:添加知识条目
  • search:语义搜索
  • list:列出所有条目
  • update:更新条目
  • delete:删除条目

实际应用场景

场景1:面试准备

将面试题和答案存储到知识库,随时复习:

hermes chat -q "存储这道SQL注入面试题:如何绕过WAF?答案包括:大小写变换、双写绕过、编码绕过、注释符分割等"

场景2:项目知识积累

记录项目中的技术细节和踩坑经验:

hermes chat -q "记住:WordPress博客部署在123.207.45.199,使用宝塔面板,PHP 8.2,数据库是MySQL"

场景3:安全工具使用笔记

记录各种安全工具的使用方法和参数:

hermes chat -q "记住:sqlmap常用参数 --level=3 --risk=2 --batch --threads=10 --random-agent"

注意事项

  • API Key安全:vectors.space的API Key要妥善保管,不要泄露
  • 存储路径:建议将数据库放在固定路径(如/opt/sqlite-memory/),避免误删
  • 备份:定期备份memory.db文件
  • embedding质量:语义搜索的效果取决于embedding模型的质量,vectors.space提供的是云端模型,效果较好

总结

通过配置sqlite-vector记忆模型,Hermes Agent从一个”健忘”的AI助手变成了一个拥有持久记忆的”第二大脑”。它能记住你的偏好、项目知识、工作流程,并在需要时通过语义搜索快速找到相关信息。

对于安全从业者来说,这意味着可以将大量的安全知识、漏洞经验、工具使用技巧存储起来,随时调用,大大提升工作效率。

参考资料

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注