Aegra语义存储深度指南:用pgvector向量检索构建AI Agent长期记忆
后端人工智能AI Agent【免费下载链接】aegraOpen source alternative to LangGraph Platform (now LangSmith Deployments) - Self-hosted AI agent backend with FastAPI and PostgreSQL. Zero vendor lock-in, full control over your agent infrastructure.项目地址https://gitcode.com/gh_mirrors/ae/aegra点击查看免费下载Aegra 是一款自托管的开源 AI Agent 后端它的语义存储Semantic Store功能基于 PostgreSQL 的 pgvector 扩展实现向量检索让 AI Agent 能够按含义存取数据——这正是构建 Agent 长期记忆、RAG 知识库与个性化记忆的关键能力。本文将带你从零配置 Aegra 语义存储掌握向量检索的完整玩法。为什么 AI Agent 需要长期记忆默认情况下AI Agent 的每次运行都是失忆的对话结束后它记不住用户的偏好也查不到上次保存的知识。Aegra 的 Store API 为 Agent 提供了跨运行across runs的持久化存储分为两层能力键值存储开箱即用无需任何配置适合存用户偏好、对话摘要等结构化数据语义存储配置向量嵌入后存储自动为数据生成 embedding支持按语义相似度检索官方语义存储指南见 docs/guides/semantic-store.mdx完整的 Store 文档见 docs/guides/store.mdx。三大典型应用场景对话记忆—— Agent 语义化地回忆过往交互内容而不依赖精确关键词匹配RAG 应用—— 把知识文档存入 Store按语义相似度召回最相关的片段个性化—— 记住用户的偏好如代码风格、界面主题在合适时上下文式地取回一键开启在 aegra.json 中配置向量索引开启语义存储只需在 aegra.json 中添加一个store.index配置段{ store: { index: { dims: 1536, embed: openai:text-embedding-3-small, fields: [$] } } }三个参数分别是什么参数说明示例dims向量维度必须与嵌入模型的输出维度精确一致1536embed嵌入模型格式为provider:model-idopenai:text-embedding-3-smallfields对数据的哪些字段做嵌入默认[$]表示整个文档[text, summary]配置定义见 config.py。字段嵌入小技巧fields支持 JSON 路径写法。比如[metadata.title, content.text]表示只对标题和内容文本生成向量检索时会更聚焦于正文语义。缺少指定字段的数据仍会被正常存储只是不生成对应向量。4 种主流嵌入模型怎么选embed支持provider:model-id格式按第一个冒号拆分 provider官方推荐以下组合Provider模型向量维度配置值OpenAItext-embedding-3-small1536openai:text-embedding-3-smallOpenAItext-embedding-3-large3072openai:text-embedding-3-largeAWS Bedrockamazon.titan-embed-text-v2:01024bedrock:amazon.titan-embed-text-v2:0Cohereembed-english-v3.01024cohere:embed-english-v3.0选定模型后把对应的 API Key 写入.env即可如OPENAI_API_KEYsk-...、COHERE_API_KEY...。选型建议个人项目优先text-embedding-3-small1536 维、成本低、效果好对检索精度要求更高或数据量大时可升级text-embedding-3-large已在 AWS 生态内的团队选 Bedrock免跨境调用。存一次按语义召回写入与检索写入一条用户偏好await client.store.put_item( namespace[user, 123, preferences], keycoding_style, value{ text: I prefer clean code with descriptive variable names }, )数据落库的同时Aegra 会自动调用嵌入模型生成向量——你不需要写任何向量代码。用自然语言按含义搜索results await client.store.search_items( namespace_prefix[user, 123], queryHow does this user like to write code?, limit5, )注意查询里没有任何与 clean code 重叠的关键词但语义检索依然能命中上面那条偏好记录。这就是向量检索相对关键词匹配的质变。Store 的 HTTP 接口实现位于 api/store.py写入、读取、删除、搜索、列举命名空间五大操作一应俱全。命名空间多租户记忆隔离命名空间namespace像目录路径一样组织数据[users, alice, preferences] → Alice 的偏好 [users, alice, conversations] → Alice 的对话记忆所有操作默认被自动限制在当前认证用户的[users, user_id]命名空间下用户之间无法越权读取彼此的长期记忆。对于团队协作场景还可通过 store.scopes 把orgs前缀映射到org_id实现组织级共享知识库。在 Graph 节点中使用 Store让记忆真正活起来在 LangGraph 图graph中store参数会被自动注入到节点函数Agent 可以在推理过程中随时读写长期记忆def my_node(state, *, store: BaseStore): # 读取该用户的历史偏好 items store.search((users, state[user_id], preferences)) # 记录本次查询沉淀为新的记忆 store.put((users, state[user_id], history), keylast_query, value{q: state[query]}) return {preferences: items[0].value if items else {}}通过 API 存入的数据图内可见图内写入的数据也可通过 API 检索——两侧完全互通。环境准备与常见问题数据库要求语义存储要求 PostgreSQL 启用 pgvector 扩展Aegra 官方 Compose 文件已默认使用推荐镜像见 docker-compose.ymlpostgres: image: pgvector/pgvector:pg18启动时 Aegra 会自动建表并创建向量索引无需手动执行 SQL。启动验证配置生效后启动日志中会出现INFO: Semantic store enabled with embeddings: openai:text-embedding-3-small看到这一行说明向量检索已就绪。常见问题速查pgvector extension not found—— 请确认 PostgreSQL 镜像为pgvector/pgvector:pg18而非原生 postgres 镜像Invalid embedding model—— 检查embed是否符合provider:model-id格式且对应 API Key 已写入.envDimension mismatch——dims必须与模型输出维度精确一致例如text-embedding-3-small输出 1536 维配置成别的值会报错兼容性说明未提供store.index配置时Aegra 保持基础键值模式运行存量部署无需任何改动即可平滑升级。小结能力配置成本适合场景键值 Store零配置用户偏好、简单状态持久化语义 Store一段 JSON 配置对话记忆、RAG、个性化召回Aegra 语义存储把向量数据库的复杂度封装在配置之后一次dimsembed声明Agent 就拥有了按含义存取数据的长期记忆能力且完全自托管、零厂商锁定。赞分享后端人工智能AI Agent【免费下载链接】aegraOpen source alternative to LangGraph Platform (now LangSmith Deployments) - Self-hosted AI agent backend with FastAPI and PostgreSQL. Zero vendor lock-in, full control over your agent infrastructure.项目地址https://gitcode.com/gh_mirrors/ae/aegra点击查看免费下载相关推荐用 PostgresML 为 Auto-GPT 构建记忆后端向量存储与语义检索实战用 PostgresML 为 Auto GPT 构建记忆后端向量存储与语义检索实战 Auto GPT 是依赖 GPT 4 与外部软件和服务交互的开源自主 AI后端人工智能机器学习RAG向量数据库AI Agent 记忆系统Memory Systems完全指南从短期上下文到长期向量存储的架构设计AI Agent 记忆系统Memory Systems完全指南从短期上下文到长期向量存储的架构设计 Agent 记忆系统是让 AI Agent 跨交互保留文档教程知识库AgentDB 记忆模式实战为 AI Agent 构建会话记忆、长期存储与模式学习能力AgentDB 记忆模式实战为 AI Agent 构建会话记忆、长期存储与模式学习能力 导读 本文围绕 RuView 仓库内置的 .claude/skills人工智能计算机视觉物联网智能家居后端嵌入式创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Qt迷宫生成与路径搜索实战:BFS/A*算法及可视化实现

Qt迷宫生成与路径搜索实战:BFS/A*算法及可视化实现

简介:Qt随机迷宫及路径获取工程是一份结合Qt图形界面、并查集与A 寻路算法的完整示例,适合Qt学习者和算法入门者参考。资源为RAR压缩包,共66个文件,以cpp/h源文件、exe可执行程序、dll运行库、png位图资源及qss样式文件为主&…

2026/10/14 0:13:45 阅读更多 →
GrabCut MATLAB图像分割实战:参数调优与避坑指南

GrabCut MATLAB图像分割实战:参数调优与避坑指南

简介:这份资源面向计算机视觉初学者与图像处理方向的学生、开发者,提供在MATLAB环境中实现GrabCut图像分割算法的完整代码示例。GrabCut基于马尔科夫随机场与高斯混合模型,通过图割迭代优化前景背景标签,适合需要交互式区域分割、…

2026/10/14 0:13:45 阅读更多 →
谱减法去噪基础版:从原理到代码的语音增强入门实践

谱减法去噪基础版:从原理到代码的语音增强入门实践

音频去噪是个越做越有意思的方向,而且我越来越觉得,入门语音增强最好的路径不是直接堆模型,而是先把经典的谱减法跑通一遍。最近我把“谱减法去噪基础版”从算法到代码完整实现了一遍:读音频、分帧加窗、FFT、噪声估计、谱减、逆变…

2026/10/14 0:13:45 阅读更多 →

最新新闻

Python第3章练习题解析:数据类型、字符串与格式化输出避坑指南

Python第3章练习题解析:数据类型、字符串与格式化输出避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 1:07:04 阅读更多 →
ESP32S3 Dev Module:Arduino兼容的原生USB嵌入式开发新范式

ESP32S3 Dev Module:Arduino兼容的原生USB嵌入式开发新范式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 1:07:04 阅读更多 →
高位数阶乘计算:MATLAB、Python、C三语言实现与性能对比

高位数阶乘计算:MATLAB、Python、C三语言实现与性能对比

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 1:07:04 阅读更多 →
element-react Radio 单选框组件详解:受控选中、Group 聚合与 Button 样式的源码级解析

element-react Radio 单选框组件详解:受控选中、Group 聚合与 Button 样式的源码级解析

前端UI组件设计系统 【免费下载链接】element-react Element UI 项目地址: https://gitcode.com/gh_mirrors/el/element-react 点击查看 免费下载 本篇技术文章围绕 element-react(Element UI for React,当前仓库版本 1.4.34)的 …

2026/10/14 1:07:04 阅读更多 →
密码与加密技术复习指南:从对称加密到PKI的网络安全知识框架

密码与加密技术复习指南:从对称加密到PKI的网络安全知识框架

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 1:07:04 阅读更多 →
Dart List实战指南:从增删改查到Flutter状态管理踩坑总结

Dart List实战指南:从增删改查到Flutter状态管理踩坑总结

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 1:06:04 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →