news 2026/7/10 10:51:47

agentscope Mem0LongTermMemory记忆写入和查询工具2个py

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
agentscope Mem0LongTermMemory记忆写入和查询工具2个py

query.py 查询

🔍 查询咖啡偏好: 1. 用户表达了咖啡偏好 2. 我喜欢喝美式咖啡,不加糖 3. 我喜欢喝美式咖啡,不加糖 4. 好的,我记住了您喜欢喝不加糖的美式咖啡 5. 我喜欢喝美式咖啡,不加糖 6. 好的,我记住了您喜欢喝不加糖的美式咖啡 🔍 查询周末活动: 1. 周末我喜欢去公园散步 2. 了解了,您周末喜欢去公园散步 3. 周末我喜欢去公园散步 4. 了解了,您周末喜欢去公园散步 5. 周末我喜欢去公园散步 6. 了解了,您周末喜欢去公园散步
import asyncio import os import sys sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) from agentscope.memory import Mem0LongTermMemory from agentscope.message import Msg from agentscope.model import OpenAIChatModel from agentscope.embedding import DashScopeTextEmbedding from mem0.vector_stores.configs import VectorStoreConfig from dotenv import load_dotenv load_dotenv() async def query_clean(): long_term_memory = Mem0LongTermMemory( agent_name="Assistant", user_name="user_123", model=OpenAIChatModel( model_name=os.environ.get("zhipu_llm"), api_key=os.environ.get("zhipu_OPENAI_API_KEY"), stream=True, client_kwargs={"base_url": "https://open.bigmodel.cn/api/paas/v4"} ), embedding_model=DashScopeTextEmbedding( model_name="text-embedding-v2", api_key=os.environ.get("ali_OPENAI_API_KEY"), ), vector_store_config=VectorStoreConfig( provider="qdrant", config={"on_disk": True, "path": "./memory_data", "embedding_model_dims": 1536}, ), ) queries = [ ("咖啡偏好", "美式咖啡"), ("周末活动", "公园散步"), ] for name, query in queries: print(f"\n🔍 查询{name}:") memories_str = await long_term_memory.retrieve( msg=[Msg(role="user", content=query, name="user")], limit=3 ) if memories_str: memory_list = memories_str.splitlines() for i, memory in enumerate(memory_list, 1): print(f" {i}. {memory}") else: print(" 未找到记忆") if __name__ == "__main__": asyncio.run(query_clean())

record.py 写入

✅ 成功记录用户偏好 ✅ 成功记录周末活动偏好
import asyncio import os import sys sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) from agentscope.memory import Mem0LongTermMemory from agentscope.message import Msg from agentscope.model import OpenAIChatModel from agentscope.embedding import DashScopeTextEmbedding from mem0.vector_stores.configs import VectorStoreConfig from dotenv import load_dotenv load_dotenv() async def record_memory(): """记录用户偏好到长期记忆""" # 初始化长期记忆 long_term_memory = Mem0LongTermMemory( agent_name="Assistant", user_name="user_123", model=OpenAIChatModel( model_name=os.environ.get("zhipu_llm"), api_key=os.environ.get("zhipu_OPENAI_API_KEY"), stream=True, client_kwargs={ "base_url": "https://open.bigmodel.cn/api/paas/v4" } ), embedding_model=DashScopeTextEmbedding( model_name="text-embedding-v2", api_key=os.environ.get("ali_OPENAI_API_KEY"), ), vector_store_config=VectorStoreConfig( provider="qdrant", config={ "on_disk": True, "path": "./memory_data", "embedding_model_dims": 1536, }, ), ) # 记录用户偏好 user_msg = Msg(role="user", content="我喜欢喝美式咖啡,不加糖", name="user") assistant_msg = Msg(role="assistant", content="好的,我记住了您喜欢喝不加糖的美式咖啡", name="assistant") try: await long_term_memory.record( msgs=[user_msg, assistant_msg], infer=False ) print("✅ 成功记录用户偏好") # 记录第二个偏好 user_msg2 = Msg(role="user", content="周末我喜欢去公园散步", name="user") assistant_msg2 = Msg(role="assistant", content="了解了,您周末喜欢去公园散步", name="assistant") await long_term_memory.record( msgs=[user_msg2, assistant_msg2], infer=False ) print("✅ 成功记录周末活动偏好") except Exception as e: print(f"❌ 记录失败: {e}") if __name__ == "__main__": asyncio.run(record_memory())
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/4 13:28:02

墨蝌签名平台——可视化操作IPA重签名工具

作为一名经常使用IPA签名的使用者来说,今天给大家推荐墨蝌签名平台。墨蝌签名平台的优势墨蝌签名平台提供稳定高效的IPA签名服务,支持多种证书类型,包括企业证书和个人开发者证书,满足不同用户的需求。丰富的功能特性平台具备自动…

作者头像 李华
网站建设 2026/6/30 3:13:06

论文AI率99%?这几款降低ai率工具亲测好用,拒绝论文变“草稿”!

说实话,眼看着论文初稿截止日期就在眼前,结果一查论文ai率直接飙到99%?那一刻真的是脑袋“嗡”的一声。辛辛苦苦肝出来的几万字,被判定成“AI生成”,这种崩溃的心情我太懂了。其实呢,我也经历过那种绝望&am…

作者头像 李华
网站建设 2026/7/2 2:40:02

《Foundation 图标》

《Foundation 图标》 引言 在当今数字化时代,图标已成为信息传达的重要媒介。它们简洁明了,能够迅速传达信息,提升用户体验。本文将深入探讨Foundation图标的设计理念、应用场景及其在界面设计中的重要性。 一、Foundation图标的起源与发展 1.1 起源 Foundation图标起源…

作者头像 李华
网站建设 2026/7/5 10:55:39

wpf之行为

前言 行为是WPF中用于增强UI元素功能的一种重要模式,它允许在不修改原始控件代码的情况下,为控件添加交互逻辑。它可以封装某些功能(如拖放、命令执行、状态管理等),使这些功能可以在不同控件间复用 1、新建行为类 …

作者头像 李华
网站建设 2026/7/2 2:42:15

React Native for OpenHarmony:简易计算器应用的开发与跨平台适配实践

简易计算器应用的开发与跨平台适配实践 摘要1. 引言:为何选择计算器作为 OpenHarmony RN 入门项目?2. 技术栈与开发环境2.1 核心依赖版本 3. 核心状态管理设计3.1 状态流转逻辑3.2 使用 useCallback 优化性能 4. 核心计算逻辑实现4.1 基础计算函数4.2 等…

作者头像 李华