关于GitHub上《Hello-Agents》中memory与rag
1.关于MEMORY
目的:完整展示了关于记忆的处理操作,包括添加、搜索、删除等等。并且将记忆分为工作、情景、感知、语义,每一种的区分标准、留存程度判定、转化条件(短期记忆转变为长期记忆)都比较清楚,相比于单纯基于文本数量进行滚动清除效果大大提升,实现了更像人一样的记忆与回复效果。同时在检索内容时采用混合检索策略,提高了准确度。
问题:需要自己处理好处理记忆功能所需要的数据库api(向量数据库采用Qdrant,图数据库采用Neo4J)。尤其是其中的Neo4J,hello-agents在导入后,windows系统仍然需要自己处理关于SSL证书的问题来通过访问许可,后续在更新相关的; hello_agents 库与当前 qdrant版本的 API 兼容性存在问题,经常会有error,主要功能不影响
2.关于RAG
目的:我们常见的解决信息来源或者不精准的问题,在之前的学习中提到可以引入一些外部搜索的多源API或者建立一些tools来解决,但对于宽泛搜索的不精确以及搜索源对于目标信息的查找失败问题仍然存在,于是可以采用用户提供特殊信息来作为LLM检索的额外信息库,实现检索的特定化。至于如何精准的在我们提供的信息中找到对应的问题及答案、如何组织匹配文本,这都是正在不断优化解决的问题。
本文处理:
首先解决了我们提供信息不同格式的处理问题,统一转换为 Markdown
流程:
1. 知识库构建
└─ 添加文档 → 向量化 → 存储
2. 查询优化
└─ 基础查询向量化 → MQE多查询扩展 → HyDE假设文档嵌入
3. 检索
└─ 向量相似度搜索 → 排序 → 筛选Top-K
4. 上下文构建
└─ 整合检索结果 → 格式化 → 截断
5. 答案生成
└─ LLM生成 → 格式化 → 添加引用
6. 质量评估
└─ 内容完整性 → 引用完整性 → 响应速度
问题:在实际使用gradio打开前端界面时,server_name需要调整,同时还有一些其他的兼容问题需要调整
更多推荐
所有评论(0)