deepagent知识

复制代码
参数	                作用
model	            用哪个模型
system_prompt	    agent 的系统提示词
tools	            业务工具
middleware	        额外中间件
subagents	        子 agent
skills	            skills 目录
memory	            AGENTS.md 这类记忆/规则文件
permissions	        文件系统权限
backend	            文件系统 backend,比如 State/Store/Filesystem
interrupt_on	    工具调用前是否人工确认
response_format	    结构化输出
context_schema	    运行时 context 的 schema
checkpointer	    保存 会话thread 状态,比如多轮对话
store	            保存长期数据/记忆/文件,store 是可选持久化存储,如果 backend 使用 StoreBackend,就需要传
debug	            调试模式
name	            graph/agent 名称
cache	            缓存

一、backend

1.backend是什么

在 DeepAgent 里,backend 可以理解成:agent 的虚拟文件系统后端(所有文件)。

也就是:agent 读文件、写文件、加载 skills、加载 memory、保存中间产物时,这些文件到底存在哪里,由 backend 决定。

2.backend 有什么用

主要有 4 个作用:

2.1 存 skills

agent 需要时读取 /skills/.../SKILL.md。

2.2 存 memory

比如 /AGENTS.md,长期说明、用户偏好、项目规则。

2.3 存工作文件

agent 生成的草稿、代码、报告、中间结果。

2.4 做隔离

多用户时,防止 A 用户读到 B 用户的文件。

3.backend对比

需求 适合的 backend
临时对话里保存文件 默认 StateBackend(内存)
读写真机本地项目 FilesystemBackend
多用户长期记忆 StoreBackend(数据库等)
不想自己配 Redis/Postgres ContextHubBackend
安全执行代码 沙盒 backend
直接在本机跑 shell 命令 LocalShellBackend
不同目录用不同存储策略 CompositeBackend

virtual_mode=True 的意思是:

把 root_dir 当成 agent 的虚拟根目录 /,agent 只能在这个根目录里面读写文件。

3.1 StoreBackend

复制代码
store.put(
    namespace=("users", "u001", "filesystem"),
    key="/AGENTS.md",
    value=file_data,
)

namespace = 存储分区
key       = 文件路径 /AGENTS.md
value     = 文件内容

二、memory

启动时加载 AGENTS.md 文件,"从文件加载的长期说明",也是存储在虚拟文件系统的

|-----|-------------------|-------------------------|
| 第一个 | 默认 StateBackend | 通过 "files" 塞进 state |
| 第二个 | FilesystemBackend | 直接从真实磁盘读取 |

三、permissions

虚拟文件系统 用的路径级权限控制。

backend 决定文件存在哪里;

permissions 决定 agent 对哪些路径能读、能写、能不能编辑。

复制代码
agent = create_deep_agent(
    model=model,
    backend=FilesystemBackend(
        root_dir="D:/deepagent",
        virtual_mode=True,
    ),
    permissions={
        "/skills/**": "read",
        "/memory/**": "read",
        "/workspace/**": "read_write",
    },
)

意思是:
/skills/      只能读,不能改
/memory/      只能读
/workspace/   可以读写

四、subagents

相关推荐
zzzzzz3108 小时前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode9 小时前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220701 天前
如何搭建本地yum源(上)
运维
A小辣椒2 天前
TShark:Wireshark CLI 功能
linux
A小辣椒2 天前
TShark:基础知识
linux
AlfredZhao2 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao3 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334663 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪3 天前
linux 拷贝文件或目录到指定的位置
linux
大树884 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai