更新角色和资源协议文档,新增提示词开发者和记忆触发机制的定义,优化角色的内容结构,提升文档的清晰度和实用性。同时,删除不再使用的README文档,清理代码库以提高可维护性。

This commit is contained in:
sean
2025-05-20 13:55:55 +08:00
parent 8ebc9da367
commit b40cf2496d
13 changed files with 806 additions and 337 deletions

View File

@ -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>`标签专注于动态记忆的运行时管理。

View File

@ -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(角色激活)**: 提供角色初始化和执行的入口
- 定义角色从"定义"到"执行"的转换机制
- 明确角色初始化序列和优先级
- 规定资源加载、记忆系统启动等关键步骤
- 确保角色能够正确地进入执行状态
- 建立角色定义与实际执行间的桥梁