更新角色和资源协议文档,新增提示词开发者和记忆触发机制的定义,优化角色的内容结构,提升文档的清晰度和实用性。同时,删除不再使用的README文档,清理代码库以提高可维护性。
This commit is contained in:
@ -1,11 +1,10 @@
|
||||
# DPML记忆模式提示词框架
|
||||
|
||||
> **TL;DR:** DPML记忆模式提示词框架定义了AI系统的记忆管理提示词模板,支持先验知识库定义与运行时记忆管理,包含知识库(knowledge)、评估(evaluate)、存储(store)和回忆(recall)四个核心组件,实现完整的记忆能力。
|
||||
> **TL;DR:** DPML记忆模式提示词框架定义了AI系统的记忆管理提示词模板,支持运行时记忆管理,包含评估(evaluate)、存储(store)和回忆(recall)三个核心组件,实现完整的动态记忆能力。
|
||||
|
||||
### 目的与功能
|
||||
|
||||
DPML记忆模式提示词框架为AI系统提供完整的记忆能力提示词模板,主要功能包括:
|
||||
- 定义角色的知识库和初始认知结构
|
||||
- 提供运行时记忆的评估、存储和检索的标准化提示词机制
|
||||
- 实现跨会话的信息持久化提示词模板
|
||||
- 支持复杂的记忆关联和检索模式的提示词构建
|
||||
@ -13,7 +12,7 @@ DPML记忆模式提示词框架为AI系统提供完整的记忆能力提示词
|
||||
## 🔍 基本信息
|
||||
|
||||
**框架名称:** `<memory>` (DPML记忆模式提示词框架)
|
||||
**版本:** 1.1.0
|
||||
**版本:** 1.2.0
|
||||
**类别:** 记忆类提示词
|
||||
**状态:** 草稿
|
||||
|
||||
@ -27,14 +26,12 @@ attribute ::= name '="' value '"'
|
||||
name ::= [a-zA-Z][a-zA-Z0-9_-]*
|
||||
value ::= [^"]*
|
||||
|
||||
memory_content ::= (text | knowledge_element | evaluate_element | store_element | recall_element)+
|
||||
memory_content ::= (text | evaluate_element | store_element | recall_element)+
|
||||
|
||||
knowledge_element ::= '<knowledge>' knowledge_content '</knowledge>'
|
||||
evaluate_element ::= '<evaluate:thought>' thought_content '</evaluate:thought>'
|
||||
store_element ::= '<store:execution' attributes? '>' (text | execution_element)* '</store:execution>'
|
||||
recall_element ::= '<recall:thought>' thought_content '</recall:thought>'
|
||||
|
||||
knowledge_content ::= (* 任何文本内容,通常使用Markdown格式 *)
|
||||
thought_content ::= (* 符合thought协议的内容 *)
|
||||
execution_element ::= (* 符合execution协议的元素 *)
|
||||
|
||||
@ -43,45 +40,38 @@ text ::= (* 任何文本内容 *)
|
||||
|
||||
## 🧩 语义说明
|
||||
|
||||
memory标签表示AI系统的记忆管理单元,定义了记忆的结构和操作方式。它由先验知识库定义和运行时记忆管理两大部分组成:
|
||||
|
||||
### 记忆结构
|
||||
|
||||
1. **`<knowledge>`**: 定义角色的先验知识库
|
||||
- 包含角色固有的、初始化的知识体系
|
||||
- 这些知识在角色创建时就已存在,不是运行时获取的
|
||||
- 构成角色认知和专业领域的基础框架
|
||||
- **重要特性**:knowledge标签内的所有内容和资源引用(无论是@file://、@http://还是其他协议)都应在角色初始化时预加载,而不是按需加载
|
||||
memory标签表示AI系统的记忆管理单元,定义了动态记忆的结构和操作方式。它由运行时记忆管理的三个核心部分组成:
|
||||
|
||||
### 记忆操作
|
||||
|
||||
memory标签包含三个核心子标签,分别对应记忆的三个操作阶段:
|
||||
|
||||
2. **`<evaluate:thought>`**:评估信息是否值得记忆
|
||||
1. **`<evaluate:thought>`**:评估信息是否值得记忆
|
||||
- 通过thought协议实现评估过程
|
||||
- 判断信息的价值、相关性和可信度
|
||||
- 决定是否将信息存入记忆系统
|
||||
|
||||
3. **`<store:execution>`**:将信息存入记忆系统
|
||||
2. **`<store:execution>`**:将信息存入记忆系统
|
||||
- 通过execution协议实现存储操作
|
||||
- 定义存储过程、规则和约束
|
||||
- 管理记忆的添加、更新和组织
|
||||
|
||||
4. **`<recall:thought>`**:从记忆系统检索并应用信息
|
||||
3. **`<recall:thought>`**:从记忆系统检索并应用信息
|
||||
- 通过thought协议实现回忆过程
|
||||
- 判断何时需要检索特定记忆
|
||||
- 规划如何检索和应用记忆内容
|
||||
- 可以使用多种实现方式,包括但不限于资源引用
|
||||
- **注意**:与knowledge不同,recall标签中的资源引用默认是按需加载的
|
||||
- **注意**:recall标签中的资源引用默认是按需加载的
|
||||
|
||||
### 组件关系
|
||||
|
||||
四个核心组件之间具有明确的逻辑关系:
|
||||
- knowledge是静态基础,构成角色的知识背景
|
||||
三个核心组件之间具有明确的逻辑关系:
|
||||
- evaluate-store-recall构成动态记忆的完整循环
|
||||
- evaluate决定什么值得记忆
|
||||
- store定义如何保存记忆
|
||||
- recall描述何时以及如何使用记忆
|
||||
|
||||
记忆系统的运行遵循"评估-存储-回忆"的循环模式,在knowledge定义的知识框架上不断丰富和发展角色的认知能力。
|
||||
记忆系统的运行遵循"评估-存储-回忆"的循环模式,不断丰富和发展角色的记忆能力。
|
||||
|
||||
> **注意**:先验知识库(knowledge)已经迁移至`<role>`标签下管理,`<memory>`标签专注于动态记忆的运行时管理。
|
||||
|
||||
|
||||
@ -15,19 +15,21 @@ DPML角色合成提示词框架说明了如何通过基础协议的组合构建A
|
||||
```ebnf
|
||||
(* EBNF形式化定义 *)
|
||||
role_element ::= '<role' attributes? '>' role_content '</role>'
|
||||
role_content ::= (personality_element | principle_element | knowledge_element | experience_element)+
|
||||
role_content ::= (personality_element | principle_element | knowledge_element | experience_element | action_element)+
|
||||
|
||||
(* 角色组织标签 *)
|
||||
personality_element ::= '<personality' attributes? '>' personality_content '</personality>'
|
||||
principle_element ::= '<principle' attributes? '>' principle_content '</principle>'
|
||||
knowledge_element ::= '<knowledge' attributes? '>' knowledge_content '</knowledge>'
|
||||
experience_element ::= '<experience' attributes? '>' experience_content '</experience>'
|
||||
action_element ::= '<action' attributes? '>' action_content '</action>'
|
||||
|
||||
(* 内部内容 *)
|
||||
personality_content ::= markdown_content
|
||||
principle_content ::= markdown_content
|
||||
knowledge_content ::= markdown_content
|
||||
experience_content ::= markdown_content
|
||||
action_content ::= markdown_content
|
||||
|
||||
attributes ::= (' ' attribute)+ | ''
|
||||
attribute ::= name '="' value '"'
|
||||
@ -64,4 +66,11 @@ value ::= [^"]*
|
||||
- 记忆模式为 `<memory>` 的语义功能
|
||||
- 定义角色如何评估、存储和回忆信息
|
||||
- 设置不同记忆模式的检索条件和优先级
|
||||
- 确保角色记忆处理的连贯性和适应性
|
||||
- 确保角色记忆处理的连贯性和适应性
|
||||
|
||||
- **action(角色激活)**: 提供角色初始化和执行的入口
|
||||
- 定义角色从"定义"到"执行"的转换机制
|
||||
- 明确角色初始化序列和优先级
|
||||
- 规定资源加载、记忆系统启动等关键步骤
|
||||
- 确保角色能够正确地进入执行状态
|
||||
- 建立角色定义与实际执行间的桥梁
|
||||
Reference in New Issue
Block a user