更新资源协议文档,新增资源获取实现说明,明确AI系统在资源加载中的主动获取责任和加载验证要求,提升文档的实用性和清晰度。
This commit is contained in:
@ -140,4 +140,14 @@ query_params ::= '?' param_name '=' param_value {'&' param_name '=' param_value}
|
||||
4. 相对路径解析基于当前上下文的工作目录或基础路径
|
||||
5. 资源加载语义前缀(@、@!、@?)优先于其他部分解析,决定资源的加载策略
|
||||
|
||||
### 资源获取实现说明
|
||||
|
||||
对于支持工具调用能力的AI系统:
|
||||
1. **主动获取责任**: AI需主动使用工具调用(例如read_file)获取@引用的资源,而非等待系统自动加载
|
||||
2. **立即加载义务**: 特别是对于@!前缀资源,AI必须立即执行工具调用获取内容
|
||||
3. **自主判断懒加载**: 对于@?前缀资源,AI应记录位置但暂不加载,直到实际需要使用时
|
||||
4. **加载验证**: AI应验证资源是否成功加载,并适当处理加载失败情况
|
||||
|
||||
这种主动获取模式确保AI能正确执行协议定义的资源加载语义,而不依赖系统层面的自动处理。
|
||||
|
||||
|
||||
|
||||
@ -14,7 +14,8 @@ DPML角色合成提示词框架说明了如何通过基础协议的组合构建A
|
||||
|
||||
```ebnf
|
||||
(* EBNF形式化定义 *)
|
||||
role_composite ::= (thought_element | execution_element | memory_element)+
|
||||
role_element ::= '<role' attributes? '>' role_content '</role>'
|
||||
role_content ::= (thought_element | execution_element | memory_element)+
|
||||
|
||||
(* 复用现有协议的语法定义 *)
|
||||
thought_element ::= '<thought' attributes? '>' thought_content '</thought>'
|
||||
@ -34,6 +35,8 @@ memory_content ::= (* 见memory.protocol.md中的定义 *)
|
||||
|
||||
## 🧩 语义说明
|
||||
|
||||
`<role>`标签是DPML中定义AI角色的顶层标签,它封装了思考模式、执行模式和记忆模式三大基础协议,共同构成一个完整的角色定义。角色定义必须使用`<role>`作为根标签,而不应直接使用其他标签的组合。
|
||||
|
||||
角色是思考模式、执行模式和记忆模式三大基础协议的组合表达。每个协议分别定义了角色的不同方面:
|
||||
|
||||
- **thought(思考模式)**: 定义角色的思维方式、分析框架和对话风格
|
||||
|
||||
Reference in New Issue
Block a user