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

相关推荐
梦想三三12 小时前
LangChain Output Parser 实战:从字符串到结构化数据的完整指南
android·服务器·langchain·github·uv
netho012 小时前
影刀rpa证书题库使用教学
运维·服务器·rpa
无足鸟ICT13 小时前
【RHCA+】$[]
linux·运维·服务器
运维技术小记13 小时前
国产化环境配置 VNC 远程桌面:麒麟 V10 实战
linux·运维·服务器
xiaoye-duck13 小时前
《Linux系统编程》Linux 系统多线程(八): C++ 高并发线程池全链路深度解析与从零手撕实现
linux·c++·线程池
爱码少年14 小时前
一条Shell命令实现文件目录服务器间快速转移
服务器·shell
giaming02314 小时前
告别Docker Desktop!一款轻量级原生开发环境管理工具:FlyEnv
运维·docker·容器
laboratory agent开发14 小时前
智能体多工具串联执行中途失败,部分写入的数据如何回滚
运维·服务器·数据库
智塑未来14 小时前
金融 AIOps 选型指南:银行证券智能运维平台怎么选
运维·人工智能·金融