3 步体验记忆的写入、查看和检索
用默认记忆库,3 步跑通记忆的写入、查看和检索。如需自定义记忆规则,参见创建记忆库。
前提条件
- 首次使用需开通记忆库服务:进入百炼控制台记忆库页面,点击立即开通
- 已获取
DASHSCOPE_API_KEY,获取方式见获取 API Key - 已获取业务空间 ID,并将下文请求地址中的
{WorkspaceId}替换为该 ID。API Key 须属于同一业务空间 - 如使用 Python SDK,先安装:
pip install agentscope-runtime,并设置服务地址:export MEMORY_SERVICE_ENDPOINT="https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v2/apps/memory"
步骤一:写入记忆
调用 AddMemory 接口,将对话传入记忆库。系统自动从对话中提取事实记忆。
curl -X POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v2/apps/memory/add \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"messages": [
{"role": "user", "content": "每天上午9点提醒我喝水"},
{"role": "assistant", "content": "好的,已记录"},
{"role": "user", "content": "明天10点提醒我整理会议纪要。"}
],
"user_id": "user_001"
}'
from agentscope_runtime.tools.modelstudio_memory import (
AddMemory, AddMemoryInput, Message,
)
import asyncio
async def add_memory_example():
add_memory = AddMemory()
try:
await add_memory.arun(AddMemoryInput(
user_id="user_001",
messages=[
Message(role="user", content="每天上午9点提醒我喝水"),
Message(role="assistant", content="好的,已记录"),
Message(role="user", content="明天10点提醒我整理会议纪要。"),
]
))
print("记忆写入成功")
finally:
await add_memory.close()
asyncio.run(add_memory_example())
步骤二:查看记忆
在百炼控制台进入默认记忆库的记忆详情标签页,输入记忆实体 ID user_001,点击查看,即可看到系统自动提取的事实记忆。
也可通过 API 列出记忆:
curl -X GET "https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v2/apps/memory/memory_nodes?user_id=user_001&page_size=10&page_num=1" \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "Content-Type: application/json"
from agentscope_runtime.tools.modelstudio_memory import (
ListMemory, ListMemoryInput,
)
import asyncio
async def list_memory_example():
list_memory = ListMemory()
try:
result = await list_memory.arun(ListMemoryInput(
user_id="user_001",
page_size=10,
page_num=1
))
for node in result.memory_nodes:
print(f"记忆: {node.content}")
finally:
await list_memory.close()
asyncio.run(list_memory_example())
步骤三:检索记忆
在控制台切换到记忆检索标签页,输入记忆实体 ID user_001,在输入框输入"我需要做什么?",点击运行查看相关记忆。
通过 API 检索:
curl -X POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v2/apps/memory/memory_nodes/search \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"user_id": "user_001",
"messages": [{"role": "user", "content": "我需要做什么?"}],
"top_k": 10,
"min_score": 0.3,
"plan_version": "Lite"
}'
from agentscope_runtime.tools.modelstudio_memory import (
SearchMemory, SearchMemoryInput, Message,
)
import asyncio
async def search_memory_example():
search_memory = SearchMemory()
try:
result = await search_memory.arun(SearchMemoryInput(
user_id="user_001",
messages=[Message(role="user", content="我需要做什么?")]
))
for node in result.memory_nodes:
print(f"记忆: {node.content}")
finally:
await search_memory.close()
asyncio.run(search_memory_example())
说明到这里你已经完成了记忆的写入、查看和检索。将检索结果注入 Prompt 即可实现个性化回答。
重要体验完核心流程后,继续创建记忆库配置自定义记忆规则。
该文章对您有帮助吗?