moon add heyq02/moomemfn main {
let mem = @moomem.MemoryStore::open("./memory").unwrap()
let summary = mem.add("user-42", "我对花生过敏").unwrap()
println("extracted=\{summary.extracted} inserted=\{summary.inserted}")
let hits = mem.recall("user-42", "花生过敏", top_k=3).unwrap()
for e in hits {
println("[\{e.created_at}] \{e.content}")
}
ignore(mem.close())
}| 检查 | 跑出来的结果 | moomem 做了什么 |
|---|---|---|
| 我对花生过敏、我住在北京 | extracted=1 inserted=1 | 收下模型抽出的事实 |
| 今天天气不错 | extracted=0 inserted=0 | 闲聊不入库 |
| 过敏再说一遍 | duplicates=1 inserted=0 | 认出重复,不存成第二条 |
| 另一个用户搜过敏 | 无命中 | 按用户隔开 |
| 关掉再 open | 过敏和住址还在 | 写在磁盘上,不靠这次进程 |
| forget 后再搜过敏 | 不再出现 | 删掉一条,之后的召回遵守这次删除 |
| 类别 | 判对 |
|---|---|
| 多跳 | 4/4 |
| 时间 | 2/3 |
| 开放 | 1/1 |
| 单跳 | 10/12 |
| 合计 | 17/20 |