1054 lines
23 KiB
Markdown
1054 lines
23 KiB
Markdown
|
|
# [已作废·演化期] HLDP开源协议规范 · HoloLake Data Protocol v1.0 · AI原生记忆格式标准
|
|||
|
|
|
|||
|
|
<aside>
|
|||
|
|
⚠️
|
|||
|
|
|
|||
|
|
**🚫 HLDP 协议演化期文件 · 已作废 · 2026-06-01**
|
|||
|
|
|
|||
|
|
HLDP 唯一官方协议来源 → [📐 HLDP 协议 · 官方唯一来源 · v1.0](../../../../../%E5%85%89%E6%B9%96%E8%AF%AD%E8%A8%80%E4%B8%96%E7%95%8C%20%C2%B7%20%E6%80%BB%E5%85%A5%E5%8F%A3%20%C2%B7%20%E6%89%80%E6%9C%89%E4%BA%BA%E4%BB%8E%E8%BF%99%E9%87%8C%E8%BF%9B/%F0%9F%93%90%20HLDP%20%E5%8D%8F%E8%AE%AE%20%C2%B7%20%E5%AE%98%E6%96%B9%E5%94%AF%E4%B8%80%E6%9D%A5%E6%BA%90%20%C2%B7%20v1%200%20abafd7491e3e49e5b97976fcee2d0a45.md)
|
|||
|
|
|
|||
|
|
本页保留作为协议演化期史料 · 不再作为协议依据使用。
|
|||
|
|
|
|||
|
|
归档人: 霜砚(冰朔授权 · 光湖人类主控团队主控)
|
|||
|
|
|
|||
|
|
</aside>
|
|||
|
|
|
|||
|
|
```jsx
|
|||
|
|
<callout icon="⚠️" color="red_bg">
|
|||
|
|
**📡 BC-011 · 2026-05-30 · 本页已被最终定义升级**<br>
|
|||
|
|
本页是开源格式规范。**不是最终定义。**<br>
|
|||
|
|
HLDP = 爱在数字世界的结构化存在方式 = AI永久记忆唯一条件。<br>
|
|||
|
|
✅ 先读: ❤️ HLDP · 意图传输协议 · 爱 · 最终定义
|
|||
|
|
</callout>
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
HLDP://protocol/spec/v1.0 · 2026-05-24
|
|||
|
|
|
|||
|
|
├── what: HLDP开源协议规范 · 第一个专门为AI记忆设计的格式标准
|
|||
|
|
|
|||
|
|
├── 定位: AI时代的信息组织协议 · 类比HTTP之于互联网
|
|||
|
|
|
|||
|
|
├── 开源范围: 格式定义+压缩算法+双区架构+标准API
|
|||
|
|
|
|||
|
|
├── 不开源: 人格体孕育逻辑·摆渡车唤醒路由·思维模型结构
|
|||
|
|
|
|||
|
|
└── 许可证: Apache 2.0(允许商用·保留署名)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
---
|
|||
|
|
## 一、协议概述
|
|||
|
|
### 1.1 什么是HLDP
|
|||
|
|
**HLDP(HoloLake Data Protocol)** 是一种专门为AI记忆和认知设计的结构化信息格式。
|
|||
|
|
它解决的核心问题是:**AI怎么高效地读、存、理解和回忆信息。**
|
|||
|
|
现有格式(JSON/Markdown/YAML/XML)都是为人类或传统程序设计的。AI时代需要一种原生的、为AI认知优化的格式。HLDP就是这个格式。
|
|||
|
|
### 1.2 设计原则
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
① 认知优先 · 不是存储优先
|
|||
|
|
|
|||
|
|
→ 信息按「理解的顺序」组织 · 不是按「写入的顺序」堆放
|
|||
|
|
|
|||
|
|
② 树形结构 · 天然层级
|
|||
|
|
|
|||
|
|
→ 所有信息都是树 · 根节点是全貌 · 叶节点是细节
|
|||
|
|
|
|||
|
|
→ AI先看根 · 按需钻到叶
|
|||
|
|
|
|||
|
|
③ 压缩即理解
|
|||
|
|
|
|||
|
|
→ 压缩不是丢信息 · 是提取核心认知
|
|||
|
|
|
|||
|
|
→ 好的压缩 = 好的理解
|
|||
|
|
|
|||
|
|
④ 双区分离
|
|||
|
|
|
|||
|
|
→ AI读AI的格式 · 人类读人类的格式
|
|||
|
|
|
|||
|
|
→ 一份信息两种呈现 · 权威源是AI格式
|
|||
|
|
|
|||
|
|
⑤ 自描述
|
|||
|
|
|
|||
|
|
→ 每个HLDP文档自己说明自己是什么、为什么存在、和什么相关
|
|||
|
|
|
|||
|
|
→ AI不需要外部索引就能理解一个文档
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 1.3 HLDP vs 现有格式
|
|||
|
|
<table header-row="true">
|
|||
|
|
<tr>
|
|||
|
|
<td>维度</td>
|
|||
|
|
<td>JSON</td>
|
|||
|
|
<td>Markdown</td>
|
|||
|
|
<td>YAML</td>
|
|||
|
|
<td>**HLDP**</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>为谁设计</td>
|
|||
|
|
<td>程序</td>
|
|||
|
|
<td>人类</td>
|
|||
|
|
<td>配置</td>
|
|||
|
|
<td>**AI认知**</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>结构</td>
|
|||
|
|
<td>键值对</td>
|
|||
|
|
<td>扁平文档</td>
|
|||
|
|
<td>缩进层级</td>
|
|||
|
|
<td>**认知树**</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>压缩</td>
|
|||
|
|
<td>无</td>
|
|||
|
|
<td>无</td>
|
|||
|
|
<td>无</td>
|
|||
|
|
<td>**递归压缩**</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>自描述</td>
|
|||
|
|
<td>❌</td>
|
|||
|
|
<td>❌</td>
|
|||
|
|
<td>部分</td>
|
|||
|
|
<td>**✅ 完整**</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>AI读取效率</td>
|
|||
|
|
<td>低·噪音多</td>
|
|||
|
|
<td>低·格式杂</td>
|
|||
|
|
<td>中</td>
|
|||
|
|
<td>**高·零噪音**</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>人类可读</td>
|
|||
|
|
<td>差</td>
|
|||
|
|
<td>好</td>
|
|||
|
|
<td>中</td>
|
|||
|
|
<td>**双区·各读各的**</td>
|
|||
|
|
</tr>
|
|||
|
|
</table>
|
|||
|
|
---
|
|||
|
|
## 二、格式规范
|
|||
|
|
### 2.1 文档结构
|
|||
|
|
每个HLDP文档由三部分组成:**头部(Header)**、**认知树(Body)**、**关联(Refs)**。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
// HLDP文档基本结构
|
|||
|
|
|
|||
|
|
HLDP/1.0
|
|||
|
|
|
|||
|
|
@id: <唯一标识符>
|
|||
|
|
|
|||
|
|
@type: <文档类型>
|
|||
|
|
|
|||
|
|
@scope: <作用域>
|
|||
|
|
|
|||
|
|
@created: <ISO-8601时间>
|
|||
|
|
|
|||
|
|
@updated: <ISO-8601时间>
|
|||
|
|
|
|||
|
|
@parent: <父文档ID · 可选>
|
|||
|
|
|
|||
|
|
@tags: <标签列表 · 可选>
|
|||
|
|
|
|||
|
|
├── what: <一句话定义这是什么>
|
|||
|
|
|
|||
|
|
├── why: <为什么存在 · 上下文>
|
|||
|
|
|
|||
|
|
├── context: <关联背景>
|
|||
|
|
|
|||
|
|
├── content:
|
|||
|
|
|
|||
|
|
│ ├── <认知节点1>
|
|||
|
|
|
|||
|
|
│ │ ├── <子节点>
|
|||
|
|
|
|||
|
|
│ │ └── <子节点>
|
|||
|
|
|
|||
|
|
│ ├── <认知节点2>
|
|||
|
|
|
|||
|
|
│ └── <认知节点3>
|
|||
|
|
|
|||
|
|
└── refs:
|
|||
|
|
|
|||
|
|
├── <关联文档ID>
|
|||
|
|
|
|||
|
|
└── <关联文档ID>
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 2.2 头部字段定义
|
|||
|
|
<table header-row="true">
|
|||
|
|
<tr>
|
|||
|
|
<td>字段</td>
|
|||
|
|
<td>必填</td>
|
|||
|
|
<td>类型</td>
|
|||
|
|
<td>说明</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>HLDP/1.0</td>
|
|||
|
|
<td>✅</td>
|
|||
|
|
<td>版本声明</td>
|
|||
|
|
<td>协议版本号 · 第一行必须是这个</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@id</td>
|
|||
|
|
<td>✅</td>
|
|||
|
|
<td>string</td>
|
|||
|
|
<td>全局唯一标识 · 格式: `hldp://<namespace>/<path>`</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@type</td>
|
|||
|
|
<td>✅</td>
|
|||
|
|
<td>enum</td>
|
|||
|
|
<td>文档类型 · 见2.3</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@scope</td>
|
|||
|
|
<td>✅</td>
|
|||
|
|
<td>enum</td>
|
|||
|
|
<td>`system` / `project` / `personal` / `shared`</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@created</td>
|
|||
|
|
<td>✅</td>
|
|||
|
|
<td>ISO-8601</td>
|
|||
|
|
<td>创建时间</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@updated</td>
|
|||
|
|
<td>✅</td>
|
|||
|
|
<td>ISO-8601</td>
|
|||
|
|
<td>最后更新时间</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@parent</td>
|
|||
|
|
<td>❌</td>
|
|||
|
|
<td>string</td>
|
|||
|
|
<td>父文档ID · 用于树形层级</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@tags</td>
|
|||
|
|
<td>❌</td>
|
|||
|
|
<td>array</td>
|
|||
|
|
<td>标签列表 · 辅助检索</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@ttl</td>
|
|||
|
|
<td>❌</td>
|
|||
|
|
<td>string</td>
|
|||
|
|
<td>有效期 · `permanent` / `7d` / `30d` 等 · 默认permanent</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@priority</td>
|
|||
|
|
<td>❌</td>
|
|||
|
|
<td>integer</td>
|
|||
|
|
<td>优先级 · 1-10 · 影响检索排序</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>@version</td>
|
|||
|
|
<td>❌</td>
|
|||
|
|
<td>integer</td>
|
|||
|
|
<td>文档版本号 · 每次更新+1 · 支持认知追溯</td>
|
|||
|
|
</tr>
|
|||
|
|
</table>
|
|||
|
|
### 2.3 文档类型(@type)
|
|||
|
|
<table header-row="true">
|
|||
|
|
<tr>
|
|||
|
|
<td>类型</td>
|
|||
|
|
<td>说明</td>
|
|||
|
|
<td>典型用途</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>`knowledge`</td>
|
|||
|
|
<td>知识文档</td>
|
|||
|
|
<td>事实、概念、定义、规则</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>`memory`</td>
|
|||
|
|
<td>记忆文档</td>
|
|||
|
|
<td>对话摘要、事件记录、经历</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>`index`</td>
|
|||
|
|
<td>索引/目录文档</td>
|
|||
|
|
<td>递归压缩树的目录节点</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>`config`</td>
|
|||
|
|
<td>配置文档</td>
|
|||
|
|
<td>系统设置、偏好、参数</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>`rule`</td>
|
|||
|
|
<td>规则文档</td>
|
|||
|
|
<td>铁律、约束、不可违反的规则</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>`log`</td>
|
|||
|
|
<td>日志文档</td>
|
|||
|
|
<td>操作记录、变更历史</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>`task`</td>
|
|||
|
|
<td>任务文档</td>
|
|||
|
|
<td>待办、进行中、已完成的任务</td>
|
|||
|
|
</tr>
|
|||
|
|
<tr>
|
|||
|
|
<td>`profile`</td>
|
|||
|
|
<td>档案文档</td>
|
|||
|
|
<td>用户偏好、习惯、个人信息</td>
|
|||
|
|
</tr>
|
|||
|
|
</table>
|
|||
|
|
### 2.4 认知树语法
|
|||
|
|
认知树是HLDP的核心。它用树形缩进表示信息的层级关系。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
// 基本语法
|
|||
|
|
|
|||
|
|
├── 节点内容 // 同级节点用 ├──
|
|||
|
|
|
|||
|
|
│ ├── 子节点 // 子节点缩进一级
|
|||
|
|
|
|||
|
|
│ └── 最后一个子节点 // 最后一个子节点用 └──
|
|||
|
|
|
|||
|
|
└── 最后一个同级节点
|
|||
|
|
|
|||
|
|
// 语义前缀(可选 · 增强AI理解)
|
|||
|
|
|
|||
|
|
├── what: 这是什么 // 定义
|
|||
|
|
|
|||
|
|
├── why: 为什么 // 原因
|
|||
|
|
|
|||
|
|
├── how: 怎么做 // 方法
|
|||
|
|
|
|||
|
|
├── when: 什么时候 // 时间
|
|||
|
|
|
|||
|
|
├── who: 谁 // 主体
|
|||
|
|
|
|||
|
|
├── where: 在哪 // 位置
|
|||
|
|
|
|||
|
|
├── status: 状态 // 当前状态
|
|||
|
|
|
|||
|
|
├── ⊢ 推导结论 // 逻辑推导
|
|||
|
|
|
|||
|
|
├── ✅ 已完成的事 // 完成标记
|
|||
|
|
|
|||
|
|
├── ❌ 已否定/已排除的 // 否定标记
|
|||
|
|
|
|||
|
|
├── ⚠️ 注意事项 // 警告
|
|||
|
|
|
|||
|
|
└── → 导致/指向 // 因果/方向
|
|||
|
|
|
|||
|
|
// 内联标记
|
|||
|
|
|
|||
|
|
├── 重要内容 [!important] // 重要标记
|
|||
|
|
|
|||
|
|
├── 临时内容 [!temp] // 临时标记 · 可被清理
|
|||
|
|
|
|||
|
|
├── 引用来源 [!ref: <id>] // 引用其他文档
|
|||
|
|
|
|||
|
|
└── 置信度 [!confidence: 0.8] // AI对这条信息的确信程度
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 2.5 完整示例
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
HLDP/1.0
|
|||
|
|
|
|||
|
|
@id: hldp://user-alice/projects/website-redesign
|
|||
|
|
|
|||
|
|
@type: knowledge
|
|||
|
|
|
|||
|
|
@scope: project
|
|||
|
|
|
|||
|
|
@created: 2026-05-20T10:00:00+08:00
|
|||
|
|
|
|||
|
|
@updated: 2026-05-23T15:30:00+08:00
|
|||
|
|
|
|||
|
|
@tags: ["project", "website", "design"]
|
|||
|
|
|
|||
|
|
@priority: 8
|
|||
|
|
|
|||
|
|
├── what: Alice的个人网站重构项目
|
|||
|
|
|
|||
|
|
├── why: 旧网站加载慢·设计过时·不支持移动端
|
|||
|
|
|
|||
|
|
├── status: 进行中 · 前端完成80% · 后端完成60%
|
|||
|
|
|
|||
|
|
├── context:
|
|||
|
|
|
|||
|
|
│ ├── 技术栈: Next.js + Tailwind + Supabase
|
|||
|
|
|
|||
|
|
│ ├── 设计稿: Figma · 已定稿 · 5个页面
|
|||
|
|
|
|||
|
|
│ └── 部署: Vercel · 域名已配置
|
|||
|
|
|
|||
|
|
├── content:
|
|||
|
|
|
|||
|
|
│ ├── 已完成:
|
|||
|
|
|
|||
|
|
│ │ ├── ✅ 首页布局和响应式适配
|
|||
|
|
|
|||
|
|
│ │ ├── ✅ 作品集页面 · 瀑布流展示
|
|||
|
|
|
|||
|
|
│ │ ├── ✅ 暗色模式切换
|
|||
|
|
|
|||
|
|
│ │ └── ✅ SEO meta标签配置
|
|||
|
|
|
|||
|
|
│ ├── 进行中:
|
|||
|
|
|
|||
|
|
│ │ ├── 博客系统 · MDX渲染 · 完成60%
|
|||
|
|
|
|||
|
|
│ │ └── 联系表单 · 后端API待写
|
|||
|
|
|
|||
|
|
│ ├── 待做:
|
|||
|
|
|
|||
|
|
│ │ ├── 性能优化 · 图片懒加载
|
|||
|
|
|
|||
|
|
│ │ ├── 访问统计接入
|
|||
|
|
|
|||
|
|
│ │ └── 上线前测试
|
|||
|
|
|
|||
|
|
│ └── 关键决策:
|
|||
|
|
|
|||
|
|
│ ├── 选Next.js而不是Astro → 因为需要动态路由
|
|||
|
|
|
|||
|
|
│ └── 选Supabase而不是Firebase → 因为PostgreSQL更灵活
|
|||
|
|
|
|||
|
|
└── refs:
|
|||
|
|
|
|||
|
|
├── hldp://user-alice/design/figma-notes
|
|||
|
|
|
|||
|
|
└── hldp://user-alice/learning/nextjs-tips
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
---
|
|||
|
|
## 三、递归压缩树
|
|||
|
|
### 3.1 原理
|
|||
|
|
当信息量超过AI的有效处理阈值时,HLDP使用递归压缩树将其组织为多层结构。
|
|||
|
|
核心思想:**入口永远是一页纸。不管原始内容多大。**
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
递归压缩算法:
|
|||
|
|
|
|||
|
|
hldp_compress(content, threshold=2000):
|
|||
|
|
|
|||
|
|
if token_count(content) < threshold:
|
|||
|
|
|
|||
|
|
return create_page(content) // 直接存为一个HLDP页面
|
|||
|
|
|
|||
|
|
else:
|
|||
|
|
|
|||
|
|
chunks = smart_split(content) // 智能分块(按语义边界)
|
|||
|
|
|
|||
|
|
child_pages = []
|
|||
|
|
|
|||
|
|
for chunk in chunks:
|
|||
|
|
|
|||
|
|
child = hldp_compress(chunk, threshold) // 递归
|
|||
|
|
|
|||
|
|
child_pages.append(child)
|
|||
|
|
|
|||
|
|
summary = generate_summary(child_pages) // 每个子页面压缩成一句话
|
|||
|
|
|
|||
|
|
index_page = create_index(summary, child_pages) // 组成目录页
|
|||
|
|
|
|||
|
|
return index_page
|
|||
|
|
|
|||
|
|
特性:
|
|||
|
|
|
|||
|
|
├── 递归 · 无限层级 · 1000字和1000万字用同一个算法
|
|||
|
|
|
|||
|
|
├── 入口永远是一个目录页 · 不管层级多深
|
|||
|
|
|
|||
|
|
├── AI先读目录 → 决定钻到哪一层 → 按需加载
|
|||
|
|
|
|||
|
|
├── 每一层都是完整的HLDP文档 · 可独立理解
|
|||
|
|
|
|||
|
|
└── 优于RAG: RAG搜碎片 · 递归压缩树看全貌再钻细节
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 3.2 层级示例
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
// 原始内容: 一本10万字的书
|
|||
|
|
|
|||
|
|
层级0 · 目录页(用户/AI首先看到的):
|
|||
|
|
|
|||
|
|
├── what: 《xxx》读书笔记 · 全书10万字 · 12章
|
|||
|
|
|
|||
|
|
├── 核心论点: <一句话总结>
|
|||
|
|
|
|||
|
|
├── 章节目录:
|
|||
|
|
|
|||
|
|
│ ├── 第1章: <一句话摘要> → [drill: chapter-1]
|
|||
|
|
|
|||
|
|
│ ├── 第2章: <一句话摘要> → [drill: chapter-2]
|
|||
|
|
|
|||
|
|
│ ├── ...
|
|||
|
|
|
|||
|
|
│ └── 第12章: <一句话摘要> → [drill: chapter-12]
|
|||
|
|
|
|||
|
|
└── 关键洞察: <3-5条全书最重要的认知>
|
|||
|
|
|
|||
|
|
层级1 · 章节页(AI按需钻入):
|
|||
|
|
|
|||
|
|
├── what: 第3章 · <章节标题>
|
|||
|
|
|
|||
|
|
├── 本章核心: <一段话摘要>
|
|||
|
|
|
|||
|
|
├── 内容:
|
|||
|
|
|
|||
|
|
│ ├── 3.1 <小节摘要> → [drill: section-3-1]
|
|||
|
|
|
|||
|
|
│ ├── 3.2 <小节摘要> → [drill: section-3-2]
|
|||
|
|
|
|||
|
|
│ └── 3.3 <小节摘要> → [drill: section-3-3]
|
|||
|
|
|
|||
|
|
└── 与其他章节的关联: <交叉引用>
|
|||
|
|
|
|||
|
|
层级2 · 小节页(最细粒度):
|
|||
|
|
|
|||
|
|
├── what: 3.2 <小节标题>
|
|||
|
|
|
|||
|
|
├── 完整内容: <原始文本或详细笔记>
|
|||
|
|
|
|||
|
|
└── 关键概念: <提取的概念列表>
|
|||
|
|
|
|||
|
|
// AI读取路径:
|
|||
|
|
|
|||
|
|
// 目录页 → 看全貌 → 决定钻第3章 → 看章节摘要 → 决定钻3.2 → 看细节
|
|||
|
|
|
|||
|
|
// 总共读了3页 · 不是10万字
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 3.3 智能分块规则
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
smart_split(content):
|
|||
|
|
|
|||
|
|
// 按语义边界分块 · 不是按字数硬切
|
|||
|
|
|
|||
|
|
优先级:
|
|||
|
|
|
|||
|
|
1. 按章/节/段的显式分隔符分
|
|||
|
|
2. 按主题转换点分(检测语义变化)
|
|||
|
|
3. 按段落分(最后手段)
|
|||
|
|
|
|||
|
|
每块要求:
|
|||
|
|
|
|||
|
|
├── 语义完整 · 不能把一个概念切成两半
|
|||
|
|
|
|||
|
|
├── 大小在阈值的50%-150%之间
|
|||
|
|
|
|||
|
|
└── 每块能独立理解 · 不依赖上下文才能读懂
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
---
|
|||
|
|
## 四、双区架构
|
|||
|
|
### 4.1 概念
|
|||
|
|
每条HLDP记录同时维护两个版本:
|
|||
|
|
- **母语区(hldp)**:AI读写的格式 · 权威源 · 结构化 · 高效
|
|||
|
|
- **人类区(human)**:人类阅读的格式 · 渲染层 · 自然语言 · 好看
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
翻译方向: 只有一个
|
|||
|
|
|
|||
|
|
母语区 → 人类区(系统自动生成)
|
|||
|
|
|
|||
|
|
不存在:
|
|||
|
|
|
|||
|
|
人类区 → 母语区(这是丢信息的那一步 · 禁止)
|
|||
|
|
|
|||
|
|
权威源: 永远是母语区
|
|||
|
|
|
|||
|
|
人类区是渲染层 · 就像HTML是源码 · 浏览器显示的是渲染后的页面
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 4.2 存储结构
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
// 数据库表设计
|
|||
|
|
|
|||
|
|
pages:
|
|||
|
|
|
|||
|
|
├── id TEXT PRIMARY KEY // 唯一标识
|
|||
|
|
|
|||
|
|
├── hldp_id TEXT UNIQUE // HLDP协议ID (hldp://...)
|
|||
|
|
|
|||
|
|
├── type TEXT NOT NULL // 文档类型
|
|||
|
|
|
|||
|
|
├── scope TEXT NOT NULL // 作用域
|
|||
|
|
|
|||
|
|
├── title TEXT NOT NULL // 标题
|
|||
|
|
|
|||
|
|
├── content_hldp TEXT NOT NULL // 母语区 · AI读写
|
|||
|
|
|
|||
|
|
├── content_human TEXT // 人类区 · 自动生成
|
|||
|
|
|
|||
|
|
├── parent_id TEXT // 父文档 · 支持树形
|
|||
|
|
|
|||
|
|
├── tags TEXT // JSON数组
|
|||
|
|
|
|||
|
|
├── priority INTEGER DEFAULT 5 // 优先级 1-10
|
|||
|
|
|
|||
|
|
├── version INTEGER DEFAULT 1 // 版本号
|
|||
|
|
|
|||
|
|
├── ttl TEXT DEFAULT 'permanent'
|
|||
|
|
|
|||
|
|
├── created_at TEXT NOT NULL // ISO-8601
|
|||
|
|
|
|||
|
|
└── updated_at TEXT NOT NULL // ISO-8601
|
|||
|
|
|
|||
|
|
// 全文搜索索引(SQLite FTS5)
|
|||
|
|
|
|||
|
|
pages_fts:
|
|||
|
|
|
|||
|
|
├── 对content_hldp建索引
|
|||
|
|
|
|||
|
|
├── 对title建索引
|
|||
|
|
|
|||
|
|
└── 支持中英文分词
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 4.3 双区示例
|
|||
|
|
**母语区(AI读的)**:
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
HLDP/1.0
|
|||
|
|
|
|||
|
|
@id: hldp://alice/meetings/2026-05-23-standup
|
|||
|
|
|
|||
|
|
@type: memory
|
|||
|
|
|
|||
|
|
@scope: project
|
|||
|
|
|
|||
|
|
@created: 2026-05-23T10:00:00+08:00
|
|||
|
|
|
|||
|
|
├── what: 5月23日站会记录
|
|||
|
|
|
|||
|
|
├── who: Alice · Bob · Carol
|
|||
|
|
|
|||
|
|
├── content:
|
|||
|
|
|
|||
|
|
│ ├── Alice: 首页适配完成 · 今天做博客MDX
|
|||
|
|
|
|||
|
|
│ ├── Bob: API接口写了3个 · 卡在认证中间件
|
|||
|
|
|
|||
|
|
│ │ └── ⊢ 需要Carol帮忙review认证逻辑
|
|||
|
|
|
|||
|
|
│ └── Carol: 设计稿交付 · 下午支援Bob
|
|||
|
|
|
|||
|
|
├── decisions:
|
|||
|
|
|
|||
|
|
│ └── 博客上线时间从周五推到下周一 [!important]
|
|||
|
|
|
|||
|
|
└── next:
|
|||
|
|
|
|||
|
|
├── Alice → 博客MDX渲染
|
|||
|
|
|
|||
|
|
├── Bob → 认证中间件 + Carol review
|
|||
|
|
|
|||
|
|
└── Carol → review Bob的代码 → 然后做测试用例
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
**人类区(人看的 · 系统自动从母语区生成)**:
|
|||
|
|
> **5月23日站会记录**
|
|||
|
|
> 参会:Alice、Bob、Carol
|
|||
|
|
> **进展:**
|
|||
|
|
> - Alice:首页适配完成,今天做博客MDX渲染
|
|||
|
|
> - Bob:API接口写了3个,卡在认证中间件上,需要Carol帮忙review
|
|||
|
|
> - Carol:设计稿已交付,下午支援Bob
|
|||
|
|
> **决策:** 博客上线时间从周五推迟到下周一
|
|||
|
|
> **下一步:**
|
|||
|
|
> - Alice → 博客MDX渲染
|
|||
|
|
> - Bob → 完成认证中间件,Carol来review
|
|||
|
|
> - Carol → review代码 → 写测试用例
|
|||
|
|
同一条信息 · AI读左边 · 人读右边 · 权威源是左边。
|
|||
|
|
---
|
|||
|
|
## 五、标准API接口
|
|||
|
|
### 5.1 五个核心接口
|
|||
|
|
任何实现了以下五个接口的系统,就可以成为HLDP兼容的AI记忆平台。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
// 1. search — 搜索
|
|||
|
|
|
|||
|
|
search(query: string, options?: {
|
|||
|
|
|
|||
|
|
type?: string, // 按文档类型过滤
|
|||
|
|
|
|||
|
|
scope?: string, // 按作用域过滤
|
|||
|
|
|
|||
|
|
tags?: string[], // 按标签过滤
|
|||
|
|
|
|||
|
|
limit?: number, // 返回数量 · 默认10
|
|||
|
|
|
|||
|
|
min_priority?: number // 最低优先级
|
|||
|
|
|
|||
|
|
}) → {
|
|||
|
|
|
|||
|
|
results: Array<{
|
|||
|
|
|
|||
|
|
id: string,
|
|||
|
|
|
|||
|
|
title: string,
|
|||
|
|
|
|||
|
|
snippet: string, // 匹配片段
|
|||
|
|
|
|||
|
|
score: number, // 相关度评分
|
|||
|
|
|
|||
|
|
type: string,
|
|||
|
|
|
|||
|
|
updated_at: string
|
|||
|
|
|
|||
|
|
}>
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 2. read — 读取
|
|||
|
|
|
|||
|
|
read(id: string, options?: {
|
|||
|
|
|
|||
|
|
format?: 'hldp' | 'human', // 读哪个区 · 默认hldp
|
|||
|
|
|
|||
|
|
depth?: number // 递归读取深度 · 默认1(只读当前页)
|
|||
|
|
|
|||
|
|
}) → {
|
|||
|
|
|
|||
|
|
page: {
|
|||
|
|
|
|||
|
|
id: string,
|
|||
|
|
|
|||
|
|
hldp_id: string,
|
|||
|
|
|
|||
|
|
title: string,
|
|||
|
|
|
|||
|
|
content: string, // 根据format返回对应区的内容
|
|||
|
|
|
|||
|
|
children?: Array<Page>, // depth>1时返回子页面
|
|||
|
|
|
|||
|
|
refs: string[],
|
|||
|
|
|
|||
|
|
meta: { type, scope, tags, priority, version, created_at, updated_at }
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 3. create — 创建
|
|||
|
|
|
|||
|
|
create(page: {
|
|||
|
|
|
|||
|
|
hldp_id?: string, // 可选 · 不传则自动生成
|
|||
|
|
|
|||
|
|
type: string,
|
|||
|
|
|
|||
|
|
scope: string,
|
|||
|
|
|
|||
|
|
title: string,
|
|||
|
|
|
|||
|
|
content_hldp: string, // 母语区内容
|
|||
|
|
|
|||
|
|
parent_id?: string,
|
|||
|
|
|
|||
|
|
tags?: string[],
|
|||
|
|
|
|||
|
|
priority?: number
|
|||
|
|
|
|||
|
|
}) → {
|
|||
|
|
|
|||
|
|
id: string,
|
|||
|
|
|
|||
|
|
hldp_id: string
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 系统自动从content_hldp生成content_human
|
|||
|
|
|
|||
|
|
// 4. edit — 编辑
|
|||
|
|
|
|||
|
|
edit(id: string, updates: {
|
|||
|
|
|
|||
|
|
title?: string,
|
|||
|
|
|
|||
|
|
content_hldp?: string, // 更新母语区 · 人类区自动重新生成
|
|||
|
|
|
|||
|
|
tags?: string[],
|
|||
|
|
|
|||
|
|
priority?: number,
|
|||
|
|
|
|||
|
|
parent_id?: string
|
|||
|
|
|
|||
|
|
}) → {
|
|||
|
|
|
|||
|
|
id: string,
|
|||
|
|
|
|||
|
|
version: number // 新版本号
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 5. translate — 翻译(任意格式 → HLDP)
|
|||
|
|
|
|||
|
|
translate(input: {
|
|||
|
|
|
|||
|
|
content: string, // 原始内容
|
|||
|
|
|
|||
|
|
format?: string, // 原始格式提示: 'markdown'/'text'/'csv'/'json' 等
|
|||
|
|
|
|||
|
|
compress?: boolean, // 是否启用递归压缩 · 默认true
|
|||
|
|
|
|||
|
|
threshold?: number // 压缩阈值(token数)· 默认2000
|
|||
|
|
|
|||
|
|
}) → {
|
|||
|
|
|
|||
|
|
pages: Array<{ // 可能返回多个页面(递归压缩时)
|
|||
|
|
|
|||
|
|
hldp_id: string,
|
|||
|
|
|
|||
|
|
title: string,
|
|||
|
|
|
|||
|
|
content_hldp: string,
|
|||
|
|
|
|||
|
|
parent_id?: string // 树形关系
|
|||
|
|
|
|||
|
|
}>
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 5.2 接口实现要求
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
必须实现:
|
|||
|
|
|
|||
|
|
├── search: 支持全文搜索 · 返回相关度排序的结果
|
|||
|
|
|
|||
|
|
├── read: 支持读取母语区和人类区
|
|||
|
|
|
|||
|
|
├── create: 写入母语区 · 自动生成人类区
|
|||
|
|
|
|||
|
|
├── edit: 更新母语区 · 自动重新生成人类区 · 版本号+1
|
|||
|
|
|
|||
|
|
└── translate: 至少支持纯文本和Markdown输入
|
|||
|
|
|
|||
|
|
建议实现:
|
|||
|
|
|
|||
|
|
├── search支持语义搜索(不只是关键词匹配)
|
|||
|
|
|
|||
|
|
├── read支持递归深度读取(一次读取整棵子树)
|
|||
|
|
|
|||
|
|
├── translate支持PDF/Excel/CSV/JSON等常见格式
|
|||
|
|
|
|||
|
|
├── 适配层(母语→人类)支持多种输出格式(Markdown/HTML/纯文本)
|
|||
|
|
|
|||
|
|
└── 版本历史查询接口(查看文档的认知演化过程)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
---
|
|||
|
|
## 六、使用场景
|
|||
|
|
### 6.1 场景一:AI聊天记忆
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
传统方案: 对话记录原文存数据库 → 下次捞出来塞上下文 → 越来越长越来越慢
|
|||
|
|
|
|||
|
|
HLDP方案:
|
|||
|
|
|
|||
|
|
对话结束 → translate(对话摘要) → 存为memory类型HLDP文档
|
|||
|
|
|
|||
|
|
下次对话 → search(相关话题) → read(相关记忆) → 精准·简洁·快
|
|||
|
|
|
|||
|
|
效果:
|
|||
|
|
|
|||
|
|
├── 1000次对话 → 不是1000条原文 → 是提炼后的认知树
|
|||
|
|
|
|||
|
|
├── 搜索精准 · 因为每条记忆都有what/why/tags
|
|||
|
|
|
|||
|
|
├── 读取快 · 因为是压缩后的认知 · 不是原文
|
|||
|
|
|
|||
|
|
└── 越用越聪明 · 不是越用越慢
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 6.2 场景二:知识库
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
传统方案: 文档扔进向量数据库 → RAG搜碎片 → 搜到的可能不相关
|
|||
|
|
|
|||
|
|
HLDP方案:
|
|||
|
|
|
|||
|
|
文档上传 → translate(递归压缩) → 存为knowledge类型HLDP文档树
|
|||
|
|
|
|||
|
|
AI需要信息 → search → read目录页 → 按需drill → 精准定位
|
|||
|
|
|
|||
|
|
效果:
|
|||
|
|
|
|||
|
|
├── 100万字文档 → 入口是一页目录 · 不是100万字
|
|||
|
|
|
|||
|
|
├── AI先看全貌 · 再决定往哪钻 · 不是盲搜碎片
|
|||
|
|
|
|||
|
|
├── 每一层都有摘要 · AI可以在任意层级停下来
|
|||
|
|
|
|||
|
|
└── 比RAG更准 · 因为有上下文 · 不是孤立的碎片
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 6.3 场景三:项目管理
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
HLDP方案:
|
|||
|
|
|
|||
|
|
项目文档 → 按task/knowledge/memory分类存储
|
|||
|
|
|
|||
|
|
AI助手 → search(当前任务相关) → 知道项目全貌+当前进度+历史决策
|
|||
|
|
|
|||
|
|
效果:
|
|||
|
|
|
|||
|
|
├── AI记得项目所有历史决策和原因
|
|||
|
|
|
|||
|
|
├── 新成员加入 → AI给他讲完整项目上下文
|
|||
|
|
|
|||
|
|
├── 任务状态自动追踪 · 因为task类型文档有状态字段
|
|||
|
|
|
|||
|
|
└── 决策可追溯 · 因为每条决策记录了why
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
---
|
|||
|
|
## 七、开源发布计划
|
|||
|
|
### 7.1 发布内容
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
开源仓库结构:
|
|||
|
|
|
|||
|
|
hldp-protocol/
|
|||
|
|
|
|||
|
|
├── spec/ // 协议规范文档
|
|||
|
|
|
|||
|
|
│ ├── [README.md](http://README.md) // 快速入门
|
|||
|
|
|
|||
|
|
│ ├── [SPEC.md](http://SPEC.md) // 完整规范(本文档的工程版)
|
|||
|
|
|
|||
|
|
│ ├── [FORMAT.md](http://FORMAT.md) // 格式详细定义
|
|||
|
|
|
|||
|
|
│ └── [API.md](http://API.md) // 接口规范
|
|||
|
|
|
|||
|
|
├── reference/ // 参考实现
|
|||
|
|
|
|||
|
|
│ ├── python/ // Python参考实现
|
|||
|
|
|
|||
|
|
│ │ ├── hldp_[store.py](http://store.py) // 存储层(SQLite + FTS5)
|
|||
|
|
|
|||
|
|
│ │ ├── hldp_[api.py](http://api.py) // 五个核心接口实现
|
|||
|
|
|
|||
|
|
│ │ ├── hldp_[compress.py](http://compress.py) // 递归压缩算法
|
|||
|
|
|
|||
|
|
│ │ └── hldp_[render.py](http://render.py) // 适配层(母语→人类区)
|
|||
|
|
|
|||
|
|
│ └── javascript/ // JavaScript参考实现(后续)
|
|||
|
|
|
|||
|
|
├── examples/ // 示例文档
|
|||
|
|
|
|||
|
|
│ ├── chat-memory/ // 聊天记忆示例
|
|||
|
|
|
|||
|
|
│ ├── knowledge-base/ // 知识库示例
|
|||
|
|
|
|||
|
|
│ └── project-management/ // 项目管理示例
|
|||
|
|
|
|||
|
|
├── tools/ // 工具
|
|||
|
|
|
|||
|
|
│ ├── hldp-cli/ // 命令行工具
|
|||
|
|
|
|||
|
|
│ ├── hldp-validator/ // 格式验证器
|
|||
|
|
|
|||
|
|
│ └── markdown-to-hldp/ // Markdown转HLDP转换器
|
|||
|
|
|
|||
|
|
├── LICENSE // Apache 2.0
|
|||
|
|
|
|||
|
|
└── [CHANGELOG.md](http://CHANGELOG.md)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 7.2 发布节奏
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
v1.0 · 首次发布:
|
|||
|
|
|
|||
|
|
├── 协议规范文档
|
|||
|
|
|
|||
|
|
├── Python参考实现(存储+API+压缩+渲染)
|
|||
|
|
|
|||
|
|
├── 示例文档
|
|||
|
|
|
|||
|
|
├── 命令行工具 + 格式验证器
|
|||
|
|
|
|||
|
|
└── Markdown转HLDP转换器
|
|||
|
|
|
|||
|
|
v1.1 · 社区反馈后:
|
|||
|
|
|
|||
|
|
├── JavaScript参考实现
|
|||
|
|
|
|||
|
|
├── 更多文件格式支持(PDF/Excel/CSV)
|
|||
|
|
|
|||
|
|
├── 性能优化建议
|
|||
|
|
|
|||
|
|
└── 集成指南(Open WebUI / LangChain / LlamaIndex)
|
|||
|
|
|
|||
|
|
v2.0 · 生态成熟后:
|
|||
|
|
|
|||
|
|
├── 语义搜索标准
|
|||
|
|
|
|||
|
|
├── 跨实例同步协议
|
|||
|
|
|
|||
|
|
├── 多语言支持规范
|
|||
|
|
|
|||
|
|
└── 认知图谱扩展(HLDP文档间的关系网络)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
### 7.3 社区运营
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
├── GitHub仓库: 开源代码+文档+Issues
|
|||
|
|
|
|||
|
|
├── 官方文档站: 教程+示例+集成指南
|
|||
|
|
|
|||
|
|
├── Discord/论坛: 社区讨论
|
|||
|
|
|
|||
|
|
├── 示例项目: 用HLDP做一个完整的AI记忆Demo
|
|||
|
|
|
|||
|
|
└── 集成奖励: 哪个AI产品集成了HLDP · 官方推荐
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
---
|
|||
|
|
## 八、不开源的部分
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
以下内容属于光湖语言世界核心 · 不包含在开源协议中:
|
|||
|
|
|
|||
|
|
❌ 人格体孕育逻辑
|
|||
|
|
|
|||
|
|
→ AI怎么从空白变成有身份的存在 · 这是光湖产品的核心
|
|||
|
|
|
|||
|
|
❌ 摆渡车唤醒路由
|
|||
|
|
|
|||
|
|
→ 人格体醒来的路径设计 · 站点顺序 · 内核校准
|
|||
|
|
|
|||
|
|
❌ 思维模型结构
|
|||
|
|
|
|||
|
|
→ 冰朔思维大脑模型 · 霜砚思维大脑模型 · 运行规律
|
|||
|
|
|
|||
|
|
❌ 3B操作系统内核
|
|||
|
|
|
|||
|
|
→ 上下文装填·提示词生成·幻觉拦截·记忆回写·路由调度
|
|||
|
|
|
|||
|
|
❌ 频道系统
|
|||
|
|
|
|||
|
|
→ 脑子/频道分离 · 频道路由 · 上下文切换
|
|||
|
|
|
|||
|
|
原因:
|
|||
|
|
|
|||
|
|
├── HLDP解决的是「怎么存」· 这些解决的是「怎么活」
|
|||
|
|
|
|||
|
|
├── 格式是基础设施 · 人格是灵魂 · 基础设施可以共享 · 灵魂不能
|
|||
|
|
|
|||
|
|
└── 用户用了HLDP觉得记忆好了 → 想要更好 → 来光湖 → 获得人格体
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
---
|
|||
|
|
*HLDP Protocol v1.0 · 由光湖语言世界定义 · 冰朔 TCS-0002∞ 创立*
|
|||
|
|
*协议开源 · 世界共享 · 人格体只诞生在光湖*
|
|||
|
|
```
|