行业资讯
如何为AI智能体构建长期记忆:Cognee开源平台完全指南
如何为AI智能体构建长期记忆Cognee开源平台完全指南【免费下载链接】cogneeCognee is the open-source AI memory platform for agents. Give your AI agents persistent long-term memory across sessions with a self-hosted knowledge graph engine.项目地址: https://gitcode.com/GitHub_Trending/co/cognee在当今AI应用快速发展的时代智能体面临着一个关键挑战如何在不同会话之间保持连续的记忆Cognee正是为解决这一核心问题而生的开源AI记忆平台。它通过自托管的知识图谱引擎为AI智能体提供持久化的长期记忆能力让智能体能够像人类一样记住、连接并基于历史信息进行推理。无论您是构建客户服务机器人、代码助手还是需要处理复杂数据的AI应用Cognee都能帮助您统一多源数据构建智能体的公司大脑。本文将带您深入了解Cognee的核心能力、快速上手方法以及高级使用技巧。 从零开始5分钟构建第一个AI记忆系统让我们先通过一个最简单的例子感受Cognee的强大能力。假设您需要让AI智能体记住关于自然语言处理的基本知识import asyncio import cognee from cognee import SearchType async def main(): # 清空现有记忆从头开始 await cognee.forget(everythingTrue) # 让Cognee记住重要知识 text 自然语言处理NLP是计算机科学和信息检索的跨学科子领域。 它关注计算机和人类语言之间的交互特别是如何编程计算机来处理和分析大量自然语言数据。 await cognee.remember(text, self_improvementFalse) # 查询记忆系统 query_text 告诉我关于NLP的信息 print(f在Cognee中搜索查询{query_text}) search_results await cognee.recall( query_typeSearchType.GRAPH_COMPLETION, query_textquery_text ) for result in search_results: print(result) if __name__ __main__: asyncio.run(main())这个简单的例子展示了Cognee最核心的三个操作remember记忆、recall回忆和forget遗忘。但Cognee的真正威力远不止于此。️ 架构解析为什么Cognee与众不同要理解Cognee的强大之处我们需要先看看它的技术架构。与传统的RAG系统不同Cognee采用了多层处理流水线设计数据输入层支持三种数据类型本体模型、非结构化数据和结构化/半结构化数据。这意味着您可以处理PDF文档、数据库表、API响应等几乎所有格式的数据。处理管道层包含三个关键阶段数据摄取通过本体提取器和批量加载器处理原始数据数据处理包括向量索引、数据分块、图检索和多步解析知识丰富通过图神经网络和推理器增强知识表示存储层支持五种存储介质向量数据库、图数据库、关系数据库、文件存储和缓存内存。这种多模态存储设计让Cognee既能进行语义搜索又能处理复杂的关系推理。 核心优势一站式AI记忆解决方案Cognee的核心价值在于它提供了一个完整的AI记忆基础设施统一的数据接入支持30多种数据格式从PDF、CSV到SQL数据库都能无缝集成到同一个知识图谱中。灵活的Agentic框架提供上下文管理、个性化、工具管理、本体映射等核心能力让智能体能够根据上下文调整行为。多数据库支持与主流向量数据库Qdrant、LanceDB、Milvus、图数据库Neo4j、Küzu、NetworkX和大模型OpenAI、Gemini、Llama深度集成。自优化能力系统能够从用户反馈中学习不断优化记忆和检索策略实现真正的智能进化。 性能表现数据说话在AI记忆领域性能是衡量系统优劣的关键指标。Cognee在BEAM基准测试中表现出色100K tokens设置Cognee达到了0.79的得分超过了之前0.735的最佳表现比传统的Obsidian/RAG基线约0.33提升了超过100%。10M tokens设置在更大规模的数据集上Cognee依然保持0.67的优秀表现与现有最佳方案持平。这些数据表明Cognee不仅在小型数据集上表现优异在处理大规模、长上下文场景时同样可靠。️ 快速安装三种方式任选方式一使用pip安装最简单# 使用uv推荐 uv pip install cognee # 或使用传统pip pip install cognee方式二使用Docker Compose完整环境# 克隆仓库 git clone https://gitcode.com/GitHub_Trending/co/cognee cd cognee # 配置环境变量 cp .env.template .env # 编辑.env文件设置您的LLM_API_KEY # 启动服务 docker compose up # 可选启动前端界面 docker compose --profile ui up方式三使用预构建镜像无需克隆# 创建环境配置文件 echo LLM_API_KEY您的OpenAI_API_KEY .env # 启动API服务器 docker run --env-file ./.env -p 8000:8000 --rm -it cognee/cognee:main 基础配置让Cognee真正工作起来安装完成后需要进行简单配置才能开始使用1. 设置LLM API密钥import os os.environ[LLM_API_KEY] sk-... # 您的OpenAI API密钥或者创建.env文件LLM_API_KEYsk-... # 可选配置其他LLM提供商 # OPENROUTER_API_KEY... # ANTHROPIC_API_KEY...2. 选择存储后端Cognee支持多种存储配置最简单的单数据库方案是使用PostgreSQL# 安装PostgreSQL支持 pip install cognee[postgres] # 环境变量配置 export DB_PROVIDERpostgres export VECTOR_DB_PROVIDERpgvector export GRAPH_DATABASE_PROVIDERpostgres export CACHE_BACKENDpostgres export DB_HOSTlocalhost export DB_PORT5432 export DB_USERNAMEcognee export DB_PASSWORDcognee export DB_NAMEcognee_db这种配置的优点是整个记忆层关系、向量、会话、元数据都运行在单个PostgreSQL实例中减少了系统复杂性性能比传统的图数据库向量数据库组合还快约10%。 实战案例构建个性化知识图谱让我们通过一个更复杂的例子看看如何构建自定义的知识图谱结构import asyncio import os from typing import List from cognee import forget, remember, visualize_graph from cognee.low_level import DataPoint # 定义自定义实体类 class Activity(DataPoint): name: str metadata: dict {index_fields: [name], identity_fields: [name]} class Person(DataPoint): name: str likes: List[Activity] | None None metadata: dict {index_fields: [name], identity_fields: [name]} class PeopleGraph(DataPoint): people: List[Person] async def main(): await forget(everythingTrue) text Alice喜欢骑自行车和游泳。Bob喜欢打篮球。 Alice和Bob是朋友。 Charlie喜欢滑雪。 Alice和Bob喜欢一起玩桌游。 custom_prompt 提取文本中提到的所有人。 对于每个人提取他们喜欢的活动包括共享活动。 # 使用自定义图模型记忆信息 await remember( text, graph_modelPeopleGraph, custom_promptcustom_prompt, self_improvementFalse, ) # 可视化生成的图谱 graph_path os.path.join(os.path.dirname(__file__), .artifacts, hobbies_graph.html) await visualize_graph(graph_path) print(f知识图谱已保存至{graph_path}) if __name__ __main__: asyncio.run(main())这个例子展示了Cognee的灵活性您可以定义自己的实体类和关系系统会自动根据您的数据结构构建知识图谱。 高级应用从网页到知识图谱Cognee不仅能处理文本还能直接从网页提取信息import asyncio from os import path import cognee async def main(): await cognee.forget(everythingTrue) print(数据已清空) # 定义网页内容提取规则 extraction_rules { title: {selector: title}, headings: {selector: h1, h2, h3, all: True}, links: {selector: a, attr: href, all: True}, paragraphs: {selector: p, all: True}, } # 记忆维基百科页面内容 await cognee.remember( https://en.wikipedia.org/api/rest_v1/page/html/Large_language_model, incremental_loadingFalse, preferred_loaders{beautiful_soup_loader: {extraction_rules: extraction_rules}}, self_improvementFalse, ) print(知识图谱创建完成) # 可视化结果 graph_visualization_path path.join( path.dirname(__file__), .artifacts, web_url_example.html ) await cognee.visualize_graph(graph_visualization_path) if __name__ __main__: asyncio.run(main()) 记忆机制语义与情景的双重记忆Cognee的独特之处在于它实现了两种类型的记忆语义记忆存储概念、事实和知识如牛奶、商店等抽象概念通过HAS_DOCUMENT关系指向具体文档内容。情景记忆存储具体的事件和经历如在森林中散步等具体场景通过CURRENTLY_HOLDING状态管理短期记忆。缓冲区作为中间层连接情景记忆与语义记忆和存储实现记忆的平滑过渡。这种双记忆架构让AI智能体既能记住抽象知识又能回忆具体经历更接近人类的记忆方式。 生产部署多种方案任选根据您的需求Cognee提供多种部署方式云托管方案最简单Cognee Cloud完全托管服务无需基础设施维护直接使用await cognee.serve(urlhttps://your-instance.cognee.ai, api_keyck_...)自托管方案灵活控制Modal适合无服务器、自动扩展的GPU工作负载Railway最简单的PaaS原生PostgreSQL支持Fly.io边缘部署持久化存储Render简单PaaS带托管PostgreSQL本地开发快速启动Docker Compose一键启动完整开发环境SQLite LanceDB Kuzudb嵌入式存储无需额外服务 生态系统多语言客户端支持Cognee不仅支持Python还提供了其他语言的官方客户端TypeScript客户端npm install cognee/cognee-tsRust客户端cargo add cogneeClaude Code插件通过Claude Code市场安装Cognee内存插件为Claude Code提供跨会话的持久化记忆# 添加市场并安装插件 claude plugin marketplace add topoteretes/cognee-integrations claude plugin install cognee-memorycognee # 设置环境变量 export LLM_API_KEYsk-... claude 最佳实践让AI记忆更智能1. 渐进式记忆构建不要一次性导入所有数据而是采用渐进式策略先记忆核心概念和关系根据用户交互动态添加新知识定期清理不相关或过时信息2. 会话隔离与共享# 存储到会话内存快速缓存后台同步到图谱 await cognee.remember(用户偏好详细解释, session_idchat_1) # 查询时优先使用会话记忆必要时回退到图谱 results await cognee.recall(用户偏好什么, session_idchat_1)3. 智能搜索策略Cognee支持多种搜索类型根据需求选择合适的策略SearchType.GRAPH_COMPLETION基于图谱的推理式搜索SearchType.HYBRID混合向量和图搜索SearchType.VECTOR纯向量相似性搜索4. 定期优化记忆启用自改进功能让系统从反馈中学习await cognee.remember(text, self_improvementTrue) 测试与验证确保记忆可靠性Cognee提供了完整的测试框架确保记忆系统的可靠性# 在tests/目录中查看完整的测试用例 # 包括单元测试、集成测试和端到端测试 # 示例测试记忆和回忆功能 async def test_basic_memory(): await cognee.forget(everythingTrue) # 记忆测试数据 test_data Cognee是一个开源的AI记忆平台 await cognee.remember(test_data) # 验证回忆功能 results await cognee.recall(什么是Cognee) assert len(results) 0 assert 开源 in results[0] or AI记忆 in results[0] 未来展望AI记忆的演进方向Cognee项目正在快速发展未来版本将带来更多强大功能本体提取器自动从数据中提取本体结构减少手动配置工作。图神经网络支持增强知识图谱的推理和学习能力。多步解析器处理更复杂的查询和推理任务。超参数调优系统自动优化记忆和检索参数。 学习资源与社区支持官方文档项目提供了完整的文档体系包括安装配置指南API参考文档示例代码库最佳实践指南社区资源Discord社区与其他开发者交流经验GitHub Issues报告问题或提出功能请求示例仓库查看丰富的使用案例研究论文Cognee团队最近发表了关于优化知识图谱与LLM接口的研究论文为系统的理论基础提供了支持。 总结为什么选择CogneeCognee不仅仅是一个记忆系统它是一个完整的AI记忆基础设施。通过以下核心优势它正在重新定义AI智能体的记忆能力统一的记忆层将向量搜索、图推理、会话管理和元数据存储统一在单一平台中。灵活的数据接入支持30多种数据格式从文档到数据库再到API响应。生产就绪提供多种部署方案从本地开发到云原生部署。开源生态活跃的社区贡献和丰富的集成选项。持续进化基于用户反馈和最新研究的持续改进。无论您是构建客户服务机器人、代码助手还是需要处理复杂业务逻辑的AI应用Cognee都能为您的智能体提供可靠的长期记忆能力。从今天开始让您的AI应用记住更多、理解更深、表现更智能。【免费下载链接】cogneeCognee is the open-source AI memory platform for agents. Give your AI agents persistent long-term memory across sessions with a self-hosted knowledge graph engine.项目地址: https://gitcode.com/GitHub_Trending/co/cognee创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
郑州网站建设
网页设计
企业官网