Skip to content

ADK 的 Synap 集成

Supported in ADKPython

maximem-synap-google-adk 插件将你的 ADK 智能体连接到 Synap,一个用于 AI 智能体的托管长期记忆层。Synap 自动从对话中提取和结构化知识(事实、偏好、情景、情感和时间事件),并仅检索与当前查询语义相关的内容。

使用场景

  • 持久的跨会话记忆:为你的 ADK 智能体提供跨会话和部署的长期记忆,无需手动记录。
  • 多租户隔离:记忆按 user_idcustomer_id 范围化,确保多用户部署中的严格隔离。
  • 语义召回:服务端提取仅显示与当前查询相关的内容,保持提示简短且令牌高效。

前置条件

安装

pip install maximem-synap-google-adk maximem-synap

设置以下环境变量:

export SYNAP_API_KEY="your-synap-api-key"

与智能体配合使用

create_synap_tools(...) 返回两个 FunctionTool 实例,search_memorystore_memory,智能体可以调用它们来按需召回和持久化记忆。

import os

from google.adk.agents.llm_agent import Agent
from maximem_synap import MaximemSynapSDK
from synap_google_adk import create_synap_tools

sdk = MaximemSynapSDK(api_key=os.environ["SYNAP_API_KEY"])

synap_tools = create_synap_tools(
    sdk=sdk,
    user_id="alice",
    customer_id="acme_corp",
)

root_agent = Agent(
    model="gemini-flash-latest",
    name="memory_assistant",
    instruction=(
        "你是一个具有长期记忆的有用助手。"
        "使用 search_memory 回忆你对用户的了解。"
        "使用 store_memory 保存用户提到的重要新事实。"
    ),
    tools=synap_tools,
)

运行:

adk run path/to/your_agent

在第一轮教给智能体一些内容(例如 "我对花生过敏"),然后在后面的轮次询问它。Synap 会自动检索相关记忆,即使在不同的 adk run 调用之间也是如此。

可用工具

工具 描述
search_memory 对用户存储的记忆进行语义搜索。接受自然语言查询并返回最相关的事实、偏好和情景。
store_memory 将显式事实持久化到用户的长期记忆中。当用户分享值得记住的内容时,智能体会调用此工具。

资源