第41章 Memory
第41章承接第40章 Understanding。
前面的认知链路已经形成:
Information
↓
Perception
↓
Elements
↓
Cognition
↓
Matching
↓
Understanding
第41章开始解决一个新的问题:
ICAI 已经理解的信息,如何保存、再次使用、修改和管理?
因此:
Understanding
↓
Memory
↓
Reasoning
Memory 不是简单的“文件存储”,而是 ICAI 对已经获得并形成意义的信息进行持续保存和管理的机制。
41.1 Memory 定义
Memory(记忆)是 ICAI 对经过感知、认知、匹配和理解后形成的信息结构进行保存、组织、读取、更新和生命周期管理的能力。
可以定义:
Memory
=
Store
+
Retrieve
+
Update
+
Delete
+
State
+
Lifecycle
核心目的:
当前理解
↓
保存
↓
未来再次使用
例如:
用户输入:
深圳到香港家具送货上门
经过理解以后形成:
Object:
Furniture
Origin:
Shenzhen
Destination:
Hong Kong
Service:
Door-to-door Delivery
Memory 将其保存。
以后再次遇到:
“深圳到香港家具运输”
系统可以读取已有记忆:
Shenzhen
Hong Kong
Furniture
Delivery
从而减少重复认知。
因此:
Memory 使 ICAI 的认知结果具有时间连续性。
41.2 Memory 对象
Memory 中保存的不是单纯的文字,而是具有结构的记忆对象。
记忆对象可以来自:
Element
Object
Property
Relation
State
Fact
Condition
Understanding
Experience
Knowledge
例如:
Memory Object
{
id,
type,
object,
properties,
relations,
state,
source,
created_at,
updated_at
}
一个实际记忆:
id = 1001
object = FurnitureDelivery
property:
mode = DoorToDoor
relation:
origin = Shenzhen
destination = Hong Kong
state:
valid
因此:
Memory
↓
Memory Object
↓
Object + Property + Relation + State
记忆对象分类
可以进一步划分:
1. Information Memory
保存原始信息。
“深圳到香港家具送货上门”
2. Element Memory
保存元素。
深圳
香港
家具
送货
3. Object Memory
保存对象。
Furniture
Delivery
Shenzhen
Hong Kong
4. Relation Memory
保存关系。
Shenzhen
↓ origin
Delivery
5. Fact Memory
保存已经确认的事实。
origin = Shenzhen
destination = Hong Kong
6. Experience Memory
保存已经发生并完成的过程结果。
例如:
任务
→ 执行
→ 成功
→ 结果
这部分将在后续 Experience 章节进一步展开。
41.3 Memory 写入
Memory Write 是把新的认知结果保存到记忆中的过程。
基本流程:
Understanding Result
↓
Memory Write
↓
Memory Object
↓
Storage
例如:
UnderstandingResult
{
object: Furniture,
origin: Shenzhen,
destination: Hong Kong,
mode: DoorToDoor
}
写入:
Memory
{
id: 1001,
object: Furniture,
origin: Shenzhen,
destination: Hong Kong,
mode: DoorToDoor
}
写入前检查
ICAI 不应该无条件写入。
可以先进行:
1. Object Check
2. Structure Check
3. Duplicate Check
4. Conflict Check
5. State Check
6. Source Check
7. Write
即:
Understanding
↓
Validation
↓
Duplicate?
┌────┴────┐
Yes No
↓ ↓
Update Write
这样可以避免:
同一个记忆
重复保存100次
Memory Write 示例
class Memory
{
protected $items = array();
public function write($item)
{
if (empty($item['id'])) {
return false;
}
$this->items[$item['id']] = $item;
return true;
}
}
这是最基本的内存对象写入。
实际系统中可以进一步把:
Memory
连接到:
JSON
Database
File
等存储机制。
但:
存储介质 ≠ Memory 本身。
Memory 是认知层的记忆机制,JSON、数据库或文件只是它的持久化载体。
41.4 Memory 读取
Memory Read 是根据条件从已有记忆中获取相关记忆对象。
基本过程:
Query
↓
Memory
↓
Match
↓
Memory Result
例如:
查询:
深圳
香港
家具
Memory 中存在:
Memory 1001
Furniture
Shenzhen
Hong Kong
Door-to-door
系统读取:
MemoryResult
然后交给:
Matching
进行匹配。
所以读取不是简单:
SELECT *
而是:
Query
↓
Memory Search
↓
Matching
↓
Relevant Memory
Memory Read 示例
public function read($id)
{
if (isset($this->items[$id])) {
return $this->items[$id];
}
return null;
}
如果按对象查询:
public function findByObject($object)
{
$result = array();
foreach ($this->items as $item) {
if (isset($item['object']) &&
$item['object'] === $object) {
$result[] = $item;
}
}
return $result;
}
例如:
$memory->findByObject('Furniture');
得到:
Memory 1001
Memory 1015
Memory 1032
再由 Matching 判断哪个最相关。
41.5 Memory 更新
Memory Update 是对已经存在的记忆进行修改。
例如原始记忆:
Product
state = available
后来获得新的事实:
stock = 0
经过状态理解:
state = out_of_stock
因此:
旧记忆
available
↓
新记忆
out_of_stock
更新过程:
New Information
↓
Matching
↓
Existing Memory
↓
Conflict / Difference Check
↓
Update
更新不是覆盖一切
ICAI 更新 Memory 时应该保留必要的历史。
例如:
Version 1
state = available
Version 2
state = low_stock
Version 3
state = out_of_stock
于是:
Memory
├── Current
│ └── out_of_stock
│
└── History
├── available
└── low_stock
这样后续 Experience 和 Learning 才可以知道:
对象以前是什么状态,现在发生了什么变化。
41.6 Memory 删除
Memory Delete 是从当前记忆系统中移除一个记忆对象。
基本过程:
Memory Object
↓
Delete Request
↓
Validation
↓
Delete
例如:
public function delete($id)
{
if (!isset($this->items[$id])) {
return false;
}
unset($this->items[$id]);
return true;
}
但是 ICAI 的删除需要区分:
Physical Delete
和:
Logical Delete
物理删除
真正从存储中删除:
Memory 1001
↓
不存在
逻辑删除
保留历史,但标记:
state = deleted
例如:
Memory 1001
{
state: deleted
}
对于 ICAI,更适合根据记忆类型决定是否物理删除。
例如:
临时数据 → 可以物理删除
历史事实 → 可以保留
重要经验 → 不应随意删除
41.7 Memory 状态
Memory 本身也需要状态管理。
可以定义:
NEW
ACTIVE
UPDATED
STALE
INVALID
CONFLICT
ARCHIVED
DELETED
例如:
NEW
↓
ACTIVE
↓
UPDATED
↓
STALE
↓
ARCHIVED
如果发现冲突:
ACTIVE
↓
CONFLICT
↓
VERIFY
↓
ACTIVE / INVALID
Memory 状态与对象状态不同
这一点必须区分。
例如:
Object State:
out_of_stock
表示:
产品当前缺货。
而:
Memory State:
active
表示:
这条关于产品状态的记忆当前仍然有效。
因此:
Object State
≠
Memory State
这是 Memory 设计中非常重要的区别。
41.8 Memory 生命周期
Memory Lifecycle 描述一个记忆从产生到最终退出当前系统的完整过程。
基本生命周期:
Create
↓
Write
↓
Active
↓
Read
↓
Update
↓
Verify
↓
Archive
↓
Delete
可以形成:
┌──────────────┐
│ ↓
Create → Write → Active → Update
│ ↑ │
│ │ ↓
└──── Read Verify
│
↓
Archive
│
↓
Delete
生命周期中的时间因素
记忆不是永远保持相同状态。
例如:
2026-09-01
库存 = 100
到了:
2026-09-10
可能已经发生变化。
因此系统可以计算:
Age
LastUpdated
Validity
Expiration
例如:
Memory:
stock = 100
created_at:
2026-09-01
updated_at:
2026-09-01
current:
2026-09-12
系统可以认为:
Memory may be stale
于是重新获取信息:
Memory
↓
Validation
↓
External Information
↓
Matching
↓
Update Memory
这就形成了 Memory 自身的维护循环。
第41章完整 Memory 案例
继续使用前面的案例。
输入:
深圳到香港家具送货上门
经过:
Perception
↓
Cognition
↓
Matching
↓
Understanding
形成:
UnderstandingResult
{
object: Furniture,
origin: Shenzhen,
destination: Hong Kong,
service: DoorToDoor
}
写入 Memory
Memory ID: 1001
Object:
Furniture
Relation:
origin → Shenzhen
destination → Hong Kong
Service:
DoorToDoor
State:
active
再次输入
“深圳到香港家具运输”
感知:
深圳
香港
家具
运输
认知:
Object = Furniture
Origin = Shenzhen
Destination = Hong Kong
Matching:
Memory 1001
↑
│
Match
│
New Information
得到:
Object Match = 1.00
Origin Match = 1.00
Destination Match = 1.00
系统读取:
Memory 1001
因此不必从零开始建立所有关系。
如果信息发生变化
原记忆:
mode = DoorToDoor
新信息:
mode = WarehouseDelivery
系统发现:
Property Conflict
进入:
CONFLICT
然后进行验证。
确认新信息有效后:
Old:
DoorToDoor
New:
WarehouseDelivery
Memory:
Current:
WarehouseDelivery
History:
DoorToDoor
第41章核心结构
Memory
│
├── Memory Object
│
├── Write
│
├── Read
│
├── Update
│
├── Delete
│
├── State
│
└── Lifecycle
完整数据流:
Understanding Result
↓
Memory Write
↓
Memory
│
┌──────┼──────┐
↓ ↓ ↓
Read Update Delete
│ │ │
└──────┼──────┘
↓
Memory State
↓
Memory Lifecycle
而整个 ICAI 主链进一步形成:
Information
↓
Perception
↓
Elements
↓
Cognition
↓
Matching
↓
Understanding
↓
Memory
↓
Reasoning
↓
Decision
↓
Action
↓
Experience
↓
Learning
↓
Memory Update
这里尤其重要的是最后形成了一个闭环:
理解
↓
记忆
↓
推理
↓
决策
↓
行动
↓
经验
↓
学习
↓
更新记忆
└────────→ 再次参与认知
因此,第41章的核心定义可以归纳为:
Memory 是 ICAI 保存认知结果、维持认知连续性,并为后续匹配、理解、推理、决策和学习提供历史信息的结构化记忆机制。
并且必须明确:
Memory ≠ Database
Memory ≠ File Storage
Memory ≠ Knowledge Base
数据库、JSON、文件只是 Memory 的存储载体;Memory 本身属于 ICAI 的认知能力结构。