尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
deepagent学习笔记-SKILL
为什么要有SKILL主要是需要区分skill和tool这两个在初学者看来比较容易混淆。tool 一般执行原子任务比如对文件的增删改查网页搜索计算器等单一的功能skill 更像一套方法论它指导agent如何完成某项复杂的任务通常在skill中可能会出现调用tool的情况但很少在tool中看见调用skill的情况形象地说tool像是兵器而skill更像是武功秘籍。SKILL基本概念skill的构成根据行内规定一个完整skill通常是一个文件夹文件夹名是skill的名字比如“葵花宝典”而这个文件夹下可以由以下几部分构成SKILL.md // 其中包含frontmatter 和 指令正文必须有script // 文件夹不是必须有存放可执行脚本的目录references // 文件夹不是必须有存放参考文件的目录assets // 文件夹不是必须有存放模板或数据文件等静态资源非必须的三个目录中的文件都需要在SKILL.md中引用说明功能和何时调用其中SKILL.md中的frontmatter的name和description是必填字段它们在 skill 渐进式加载时作为简略说明被加载进上下文。name 代表技能的名称必须和存放技能的文件夹同名description 描述技能的作用agent通过这个字段识别并选择需要的技能包。skill 的渐进式加载skill 有个核心要点就是它的渐进式加载在如今非常讲究上下文治理的环境下技能包通篇加载是非常耗费上下文窗口的而且也不是所有的技能包在处理当前任务时都会被用到。于是最好的办法就是按需加载技能包。与 tool 类似最初的上下文中只包含每个skill 的 frontmatter 而不是全文当任务执行过程中命中某个技能包后再将其SKILL.md加载到上下文即可然后再根据任务进度加载技能包中其他资源。这样大大节省了执行过程中的上下文消耗被称作渐进式加载。SKILL的三种存储后端skill有三种后端存储形式FilesystemBackend直接存储在本地磁盘如果不设定目录权限任意用户或agent都可以读取使用StateBackend无本地磁盘环境或需要加载远程skill时可以使用这个形式需要用create_file_data将技能文档加载成state中兼容的格式。skill的注入在invoke()中通过files字段指定。fromurllib.requestimporturlopenfromdeepagentsimportcreate_deep_agentfromdeepagents.backendsimportStateBackendfromdeepagents.backends.utilsimportcreate_file_datafromlanggraph.checkpoint.memoryimportMemorySaver checkpointerMemorySaver()backendStateBackend()# 从远程加载 Skill也可以本地读取skill_urlhttps://raw.githubusercontent.com/langchain-ai/deepagents/refs/heads/main/libs/code/examples/skills/langgraph-docs/SKILL.mdwithurlopen(skill_url)asresponse:skill_contentresponse.read().decode(utf-8)skills_files{/skills/langgraph-docs/SKILL.md:create_file_data(skill_content),}agentcreate_deep_agent(modelanthropic:claude-sonnet-4-6,backendbackend,skills[/skills/],checkpointercheckpointer,)resultagent.invoke({messages:[{role:user,content:What is langgraph?}],files:skills_files,# 通过 files 参数注入},config{configurable:{thread_id:12345}},)StoreBackend StoreBackend 使用 LangGraph Store 进行持久化存储。而且也必须用create_file_data()格式化。适合生产环境中多用户、多线程共享 Skills 的场景所以在指定SKILL时需要同样指定命名空间namespace。在创建agent时传入多个技能包的存放目录其调用效果时后者覆盖前者的顺序。agentcreate_deep_agent(modelanthropic:claude-sonnet-4-6,skills[/skills/shared/,# 团队共享 Skills/skills/project/,# 项目专属 Skills优先级更高],)参考资料deepagent实战笔记
RELATED

相关推荐

Open WebUI 入门:用 Docker 装上本地对话界面并连接 Ollama

Open WebUI 入门:用 Docker 装上本地对话界面并连接 Ollama

适合人群:想在自己电脑上用网页聊天界面跑本地大模型、又不想一直敲命令行的同学和上班族。本文用 Docker 一次性装好 Open WebUI,并顺带带上 Ollama,从打开页面到发出第一条消息。 本文用一个场景贯穿:小陈想在笔记本上用类似网页…

📅 2026/10/31 11:13:05
LangChain4j RAG 实战指南:从入门到精通(收藏版)

LangChain4j RAG 实战指南:从入门到精通(收藏版)

本文详细介绍了 RAG(检索增强生成)技术,帮助大模型告别幻觉,精准回答文档内容。文章从 RAG 的概念、核心阶段(索引和检索)入手,通过 Java 8 文档问答的实战案例,展示了如何使用 Lang…

📅 2026/10/31 11:08:05
程序员转行AI:从入门到精通的大模型应用开发学习路线图

程序员转行AI:从入门到精通的大模型应用开发学习路线图

AI行业是程序员最有前途的领域之一,大模型应用开发是程序员转行的“最优路径”。文章介绍了大模型应用开发的工作内容,包括调用大模型API、做Prompt工程、搭建应用系统。学习内容涵盖Python编程语言、大模型核心框架(LangChain、LlamaIndex、…

📅 2026/10/31 11:08:05
MORE NEWS

更多资讯

📰

LabVIEW测试框架模板:提升自动化测试效率与维护性

1. LabVIEW测试框架模板的价值定位在工业自动化测试领域,LabVIEW作为图形化编程平台的代表,长期占据着重要地位。但许多测试工程师面临一个现实困境:虽然能够熟练使用LabVIEW完成基本数据采集和仪器控制,但当测试项目复杂度上升时…

📰

AI回归测试实战:从人力硬扛到10分钟跑完一天用例

1. 回归测试的困局:为什么你还在用人力硬扛 干了八年测试,我见过太多团队把回归测试当成“体力活”来干。每次版本迭代,测试组灯火通明,一群人对着几百条用例逐条点,点完一轮两天过去了,新功能还没测&#…

📰

uniapp中9.9×3精度问题:浮点数原理与定点整数实践

“9.9 乘 3 等于多少?”这问题连刚上二年级的孩子都能一口报出答案,可你在 uniapp 里写一句{{ 9.9 * 3 }},界面上很可能蹦出29.700000000000003。前阵子我帮一个做小学数学口算练习的小程序做改版,题库里加了“一位小数乘法”这个…

📰

ROS2 daemon架构解析与性能优化实践

1. ROS2 daemon的核心定位与设计哲学 在ROS2架构中,daemon是一个运行在后台的特殊节点(通常命名为 ros2_daemon ),它本质上是一个持久化的服务进程。与传统ROS节点不同,daemon的设计目标是为整个ROS2系统提供基础设施…

📰

DELPHI反编译工具选型指南:从结构识别到伪代码还原的硬指标

简介:DELPHI反编译工具面向需要解析DELPHI编译生成的DLL与OCX控件的开发者、逆向工程学习者及安全分析人员,用于在缺少原始源码的情况下理解组件结构、排查兼容性问题或开展代码维护。工具通常具备符号解析、反汇编、源码重构与调试支持等能力&#xff0…

📰

Hyperframes 帧处理框架:从帧语义到高性能调度与增量重算

1. 从“hyperframes”这个标题说起:它到底是什么,能解决什么问题第一次看到“hyperframes”这个词,我脑子里蹦出来的第一反应是——这大概率跟“帧”有关,而且不是普通的帧。在视频、动画、游戏引擎、数据可视化这几个圈子里&…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬